使用虛擬辦公室網格計算環境-第3部分

史蒂芬勞埃德沃特金斯 ,星期五09年12月4日下午11點37分

簡介

本人在一家公司工作,我們批作業處理運行多個記錄的數據以百萬計的每一天,我最近一直在思考的所有的機器圍坐的每一天什麼都不做了幾個小時。 那豈不是好,如果我們可以利用這些機器的處理能力來支持我們的系統? 在這組文章中,我要去看看的潛在好處僱用辦公室電網使用虛擬化環境。

第二部分的工作,我們看著一台服務器將運行,以及如何工作應配置,以達到最大的處理量,同時確保每個作業處理不許失敗。

設置你的工人 - 或跛行服務器

下一步就是在這個過程中設置虛擬工人。 為此我將使用安裝使用VirtualBox的CentOS。 我要安裝mySQL的PHP的服務器上,也被稱為跛行馬錢, 米ySQL,磷惠普)在ServerA(我可能會做出這個名字了)。

  • 安裝 VirtualBox在你的Windows機器(以下鏈接)
  • 下載並安裝的CentOS(目前版本5.3)在創建的虛擬機

有一點我沒有到這個有可能是1000的大教程那裡(沒關係,這裡有一個: 創建和Managing CentOS的虛擬機下的VirtualBox )。 最重要的一點要注意的是,我想我打電話給我的虛擬機GridMachine。

至於我的選擇虛擬化的客戶端和操作系統去那裡是沒有什麼大的令人信服的理由,每個選擇。 VirtualBox是我用的東西在我家的機器,支持三個主要的操作系統。 我選擇了CentOS的作為它的一個良好穩定的操作系統,我用它在我自己的Web服務器。 我非常相信在正確的工具工作(雖然我在申請'用最快和最簡單的為你的心態在這裡),所以如果你的操作系統運行的X代碼更快更有效地使用它 :)

更重要的是確保你的虛擬機使用DHCP,否則每個新的虛擬機需要單獨配置這是我們不使用DHCP want.By我們並不需要配置網絡設置,個別工人機,DHCP會手出IP地址給你的。 因此,您可以複製您的虛擬機上的辦公室,而不必擔心設置每一個行動(這提高了可擴展性和降低工人的管理)。

這個過程中你要達到的目的是取得一個新的物理機,安裝 VirtualBox,然後部署幾乎沒有什麼其他的虛擬形象。 這可能是明智的設定所有你的員工在不同的子網,這樣你至少可以看到有多少機器正在運行。 您還需要設置你的機器上長期租賃或租用的DHCP無限。

如何運行的作業的勞動者

這是一個有趣的領域,並有多種有效的方法處理作業的工人。 在這裡,我將只討論兩個最明顯的:

  • 永遠運行腳本:腳本,無論是一個 shell腳本,或執行一個 PHP腳本一次在工人和運行的一部分,一個無限循環。 我已經貼現此方法,因為一次撞車事故的劇本,你的員工可能會停止運行沒有某種形式的干預。
  • 克龍的腳本執行:每隔X分鐘 cron守護進程啟動一個打電話給腳本來得到的東西去。 如果沒有一些檢查,這可能導致許多許多份你的工人腳本運行。

我的決定是去是用cron啟動一個 shell腳本每10 minutes.Â我的shell腳本執行以下任務:

  1. 獲取進程列表和grep這個'PHP的。 如果沒有找到,那麼繼續。
  2. 打電話給你的工作代碼,在我而言這將是基於 PHP的東西
  3. 工人腳本完成運行
  4. 準備去下一個適當的再次呼籲

我的bash腳本看起來類似如下:

  #!/ bin / sh的
如果ps的斧| grep的- V的grep的| grep的PHP的“/ dev / null的
然後
    迴聲“工作目前正在處理,退出”
其他
    迴聲“作業沒有運行,從現在做起”
     PHP的yourJobProcessingScript.php
科幻 

注:Echo的幾乎是完全沒有意義的,但可以幫助下一個人誰走來,試圖對其進行編輯。

那完成了設立工人虛擬機,快速,簡單,易於複製到每個新的一塊硬件收到。 在'聰明'的電網系統真的不是在可視化的操作系統,它的一切都與代碼創建的處理作業,作業配置,在確保作業運行在適當的時候(即當主機處於閒置狀態)。

設置窗口,以初始化工人

第一項任務是制訂命令來運行虛擬機從 Windows命令行。 如果你已經安裝的VirtualBox在默認位置,你也叫你的工人GridMachine那麼該命令需要加載你的工作是:

 的“C:\ Program Files文件\日\ VirtualBox的\ VBoxManage.exe”startvm GridMachine 

但要運行腳本在一個'無頭'的狀態,我們需要使用:

 的“C:\ Program Files文件\日\ VirtualBox的\ VBoxHeadless.exe”- startvm GridMachine -殘疾人复業=關 

這將啟動虛擬機沒有圖形用戶界面,並允許它保存狀態正常。 第二個參數關閉的RDP,因此不會與Windows RDP的衝突,或給你一個消息關於偵聽端口3389。 虛擬機的名稱是區分大小寫的!

下一步,我們將需要設置的窗戶上踢了我們的工人,一旦虛擬機已處於閒置狀態。 要做到這一點(在Windows XP中),你就需要去開始 - >“所有程序” - >附件 - >“系統工具” - >計劃任務如下:

計劃任務

下一步點擊'添加任務計劃,其次是瀏覽添加自定義程序。 瀏覽到您的VBoxManage腳本,然後單擊確定。 安排您的任務任何選項(我們將改變這種一分鐘),然後繼續。 跳繩後下一個畫面窗口會問你誰,你要執行這個任務,我建議你為'管理員'或創造了新的特權用戶。 請記住我們不想干預標準人員佔機器上的任何一點。 單擊下一步,檢查顯示此任務的高級選項。

對於最終的運行文本框加入我們的'startvm GridMachine'字符串,並確保只運行在登錄時留下unticked。 訪問下一個調度任務的時間表,改變下拉的選項'當空閒',選擇的時間量您想將閒置的機器,然後再進入到下一個標籤。

最後勾去掉選擇哪些國家停止任務,如果它已經運行 X數額的時間,但打勾選擇停止任務,如果機器不再閒置。

附表

就是這樣然後對 Windows主機設置!

綜述

在這一部分,我們已成立一個虛擬機作為一個工人,以及以何種方式我們稱之為我們的工作處理和執行腳本(我自己一個 PHP腳本)。 從這裡我們看看如何建立我們的份窗口來啟動虛擬機中無頭模式當計算機空閒,並保存其狀態恢復時,用戶使用本機。 希望在這一點上你看到的是多麼簡單設立這樣一個系統,並渴望得到一些實驗的進行吧!

下次

第四部分 ,我們會關注使用工具,以確保您正在運行最新版本的代碼和數據來源,以便得到的結果始終保持最新與最新的商業信息和邏輯。

3回應“辦公網格計算使用虛擬環境 - 第3部”

  1. [...]第3部分,我們將創建我們的虛擬加工機,並成立了我們的窗戶機器成為 [...]

  2. [...]第3部分,我們創建了虛擬加工機和設置 Windows機器成為空閒時間 [...]

  3. 下載Digsby 說:

    你是一個非常有經驗的Blogger,你要么有質量的理解你說的是什麼,或者你做了一些精彩的研究。 感謝這個優秀的文章。

給一個答复













全景主題 Themocracy

現在 7訪客在線
5名客人,2機器人,0位會員
最大遊客今日:10日上午03點 01聯合技術
本月:26日2011年7月5日上午12點 35分聯合技術
今年:130 28-03-2011下午10時 40聯合技術
所有時間:130 28-03-2011下午10時 40聯合技術