辦公室網格計算使用虛擬環境-第3部分
簡介
我在一家公司工作,我們運行多個批處理作業處理數百萬條記錄的數據每一天,我一直在想最近關於所有的機器,圍坐每一天什麼都不做了幾個小時。 那豈不是一件好事,如果我們可以利用這些機器的處理能力來支持我們的系統? 在這組文章中,我要去看看的潛在好處的用人辦公室電網使用虛擬化環境。
在第二部分的工作,我們看著一台服務器將運行,以及如何工作應配置,以達到最大的處理量,同時確保每個作業處理沒有失敗。
設置您的工作 - 服務器或跛行
下一步在這個過程中建立虛擬的工人。 為此,我要去使用安裝的CentOS使用VirtualBox的。 我要安裝MySQL的和PHP在服務器上,也被稱為跛行 ( 李馬錢,M ySQL,P HP)SERVERA( 也許是我做這個名字了)。
- VirtualBox的安裝在你的Windows機器(以下鏈接)
- 下載並安裝 CentOS的(當前版本5.3)在創建的虛擬機
有沒有一點我要這個有可能是千的偉大教程在那裡(OK,這裡有一個: 創建和Managing CentOS的虛擬機下VirtualBox的 )。 最重要的一點需要注意的是,我想我叫我的虛擬機GridMachine。
至於我的選擇虛擬化客戶端和操作系統去那裡是沒有什麼大的令人信服的理由,每個選擇。 VirtualBox是什麼我用我的家用機器,並支持三大操作系統。 我選擇了CentOS的作為它的一個良好穩定的操作系統,我用它在我自己的Web服務器。 我是一個偉大的信徒在合適的工具才行(雖然我申請“用最快和最簡單的為你”的心態在這裡),所以如果你的作業系 統X代碼運行更快,更有效地使用,而不是 :)
重要的是確保你的虛擬機使用DHCP,否則對於每一個新的虛擬機需要單獨配置,這是我們不want.By使用DHCP我們並不需要配置網絡設置單獨的worker機器,DHCP將手出你的IP。 因此,您可以複製您的虛擬機有關 Office無需擔心設置每一個向上(這樣可以提高可擴展性,降低工人的管理)。
的過程中,你應力求實現將獲得一個新的物理機,安裝的VirtualBox,然後幾乎部署虛擬形象沒有太多的東西。 它可能是明智的設置所有的工人在不同的子網,以便您至少可以看到有多少機器正在運行。 您還需要設置你的機器上長期租賃或無限租賃 DHCP。
如何運行的作業的勞動者
這是一個有趣的領域,並有多種有效的方法處理作業的工人。 在這裡,我將只討論兩個最明顯的:
- 永遠運行腳本:腳本,無論是shell腳本,或PHP腳本執行一次對勞動者和一部分運行一個無限循環。 我已經打折這種方法作為一個崩潰的劇本和你的員工可能會停止運行沒有某種形式的干預。
- 克龍的腳本執行:每X分鐘 cron守護進程揭開序幕調用腳本得到的東西去。 如果沒有一些檢查,這可能導致你的很多很多份工腳本運行。
我的決定是去用cron這揭開序幕shell腳本每10 minutes.Â我的shell腳本執行以下任務:
- 獲取進程列表和grep這個“PHP”。 如果沒有找到,那麼繼續。
- 打電話給你的工作代碼,在我的情況下這將是基於 PHP的東西
- 工人腳本完成其運行
- 準備去下一個適當的再次呼籲
我的bash腳本看起來類似如下:
#!/ bin / sh的 如果PS斧| grep的- V GREP | grep的PHP> / dev / null的 那麼 迴聲“工作正在處理,退出” 其他 迴聲“作業沒有運行,從現在做起” PHP yourJobProcessingScript.php 科幻
注:迴聲的幾乎是完全沒有意義的,但可以幫助旁邊的人誰出現時,試圖對其進行編輯。
這最後的設立工人虛擬機,快速,簡單,容易複製到每個新的一塊硬件接收。 而“聰明”的電網系統真的沒有在可視化的操作系統,它與所有的代碼創建的處理作業,作業配置,在確保作業運行在適當的時候(即當主機處於閒置狀態)。
設置 Windows的初始化工作人員
第一個任務是制訂命令需要運行虛擬機從 Windows命令行。 如果你已經安裝的VirtualBox在默認位置,你命名你的工人GridMachine然後命令需要加載你的工作是:
“C:\ Program Files文件\日\ VirtualBox的\ VBoxManage.exe”startvm GridMachine 但要運行腳本在“無頭”狀態,我們需要使用:
“C:\ Program Files文件\日\ VirtualBox的\ VBoxHeadless.exe” - startvm GridMachine - VRDP =關 這將啟動虛擬機沒有圖形用戶界面,並允許它保存狀態正常。 第二個參數關閉RDP,因此不會發生衝突的Windows RDP,還是給你一條消息,偵聽端口3389。 虛擬機的名稱是區分大小寫的!
接下來,我們需要設置窗口到我們的工作揭開序幕VM一旦機器被閒置。 要做到這一點(在Windows XP),你需要去開始 - >所有程序 - >附件 - >系統工具 - >任務計劃如下:
下一步點擊“添加任務計劃”之後瀏覽添加自定義程序。 導航到您的VBoxManage腳本,然後單擊確定。 你的任務時間表的任何選項(我們將改變這個在一分鐘),並繼續。 後跳過下一個屏幕窗口會問你誰你要執行這個任務,我建議無論是“管理員”或創建一個新的特權用戶。 請記住我們不想干擾標準人員佔在機器上的任何一點。 點擊下一步,檢查顯示高級選項這個任務。
對於最終的運行文本框添加我們的'startvm GridMachine'字符串,並確保只運行在登錄時留下unticked。 訪問日程任務安排下,改變下拉的選項“空閒時”,選擇量的時候你想在機器處於空閒狀態,才進入下一個標籤。
最後的選項勾去掉其中規定停止工作,如果它已經運行 X量的時間,但打勾的選項停止工作,如果本機已不再處於閒置狀態。
就這樣,然後對 Windows主機設置!
摘要
在這一部分,我們設立了一個虛擬機作為一個工人,以及以何種方式我們稱之為我們的工作處理和執行腳本(我是一個 PHP腳本)。 從這裡我們來看看如何建立我們的副本的Windows啟動虛擬機在headless模式當計算機空閒,並保存其狀態恢復使用時,用戶的機器。 希望在這一點上你看到的是多麼簡單建立這樣一個系統,並渴望得到一些實驗將自己!
接下來的時間
在第4部分 ,我們將著眼於使用工具,以確保您正在運行最新版本的代碼和數據來源,以便得到的結果是始終保持最新與最新的商業信息和邏輯。




















































[...]第3部分,我們將創建我們的虛擬加工機,並設置了我們的Windows機器成為 [...]
[...]第3部分,我們創建了虛擬加工機,並設置窗口的機器成為空閒時間 [...]
你真的是一個經驗豐富的Blogger,你要么有質量的理解你的談論或者你做了一些精彩的研究。 感謝這一良好的職位。