vSphere指令管理-開發環境
一、開發環境
要使用vSphere的指令進行自動化管理或撰寫指令碼,必須先下載『vSphere PowerCLI』
系統需求
需要PowerShell,1.0版即可(2.0也行),Windows 2008 R2及Windows 7均內建。若系統Windows 2003 R2(請至少上到SP2)或Windows XP(至少SP2),到微軟網站下載對應系統的PowerShell安裝。
值得一提PowerShell Script撰寫,有個免費好用的編輯器,叫『PowerGUI』。
網址 http://www.powergui.org/index.jspa。
不過這玩意兒最新版需要PowerShell 2.0,而且需要安裝Net Framework(安裝最新版的即可)。同時撰寫PowerCli時要注意引入項目,後面會提到。
二、安裝PowerCLI
請先安裝Net Framework(至少2.0版或以上),這裡我們裝的是Framework 3.5 SP1
裝完之後安裝PowerShell。
這裡我們下載安裝的是PowerShell 2.0 for Windows 2003 R2版。
Windows Management Framework Core包含PowerShell 2
安裝完畢,在命令視窗輸入PowerShell,輸入Get-Host可顯示PowerShell版本及區域
緊接著繼續安裝PowerCLI
提示安裝完後,會自動加載VIM元件,確定即可。
此訊息挺重要的。目的是提醒將原本PowerShell限制指令執行的原則,改為『RemoteSigned』狀態,屆時PowerCLI才能正常執行指令。請務必修改之。裝完再改,或馬上改均可。
繼續安裝
都是下一步,畫面略過。
安裝完畢,桌面出現捷徑,此捷徑與一般直接執行PowerShell,此捷徑執行的是一個指令碼,執行PowerShell時,會加載VIM相關物件,以正確執行vSphere的相關指令。
上面是加料的PowerCLI,下面是一般正常的PowerShell。
執行一個簡單的連接vCenter Server指令
有引入物件的正確執行
未加載的,會不認得PoweCLI指令。
三、Script 編輯器
好的編輯器,能加速開發除錯。
NotePad++
它不是專為PowerShell提供的,其提供幾乎所有的指令語言方便編寫的環境。安裝快速方便輕巧。
算是一個簡便的編輯器。
PowerGUI
在輔助編寫PowerShell程式方面,這套具備自動帶出物件方法或屬性的功能,且為免費軟體,極為推薦。
不過目前2.1.1版只適用PowerShell 2.0,因此如要裝這套,請不要裝Powershell 1.0。
記得進入PowerGUI,把PowerCLI的Library加進來。
加完後,執行PowerGUIl Script Editor
寫一個簡單指令測試
便可以自動帶出VI指令物件相關屬性方法,對於初階編寫PowerCLI指令,在對整個Objects還不很熟悉情況下,是很好的輔助編輯器。
可以直接在編輯器內執行測試程式結果,並觀察變數。
顯示執行結果。
要注意的是,在指令碼最前面加入這行
Add-PSSnapin VMWare.VimAutomation.Core
以確保指令正常執行。同時在排程執行指令時,也需要該行以指示物件。
PowerGUI有各種PowerPacks可供擴充,包括VM
http://www.powergui.org/kbcategory.jspa?categoryID=21
Import進來
多了VMWare的類別
左邊樹狀物件多了一個VMWare的結構。
要使用VMWare節點物件,必須先基本上連到一個VC或ESX Host。
選Custom Script,直接輸入要連接的Host。
輸入如下指令
Connect-VIServer -Server "伺服器DNS名稱或IP" -User "登入帳號名稱" -Password "密碼" |
按下Apply就行了。
接上之後,就可以瀏覽左邊子節點產生的結果。
右鍵內容,還可觀摩學習其指令內容
四、備註
在測跑PowerCli的指令碼時,有時F5執行結果錯誤,不見得是錯誤。可嘗試呼叫PowerShell來執行看看,也許有不一樣的結果。而實際上也應當以PowerShell內執行的為準。