vSphere 整合維運 自動化 script

藉助命令工具快速解決繁雜難題 進階批次自動化維運技巧

活用VMware PowerCLI 下指令輕鬆管理vSphere

2022-04-25
如果想讓vSphere維運更有效率並完全掌握整體的進階配置,那就必須熟悉VMware PowerCLI命令工具,它不僅能夠隨時輕鬆地掌控整個vSphere架構的細部配置,還可藉由Script的建立與執行,迅速完成各種複雜的批次管理作業與自動化操作流程。

基於Linux核心所發展的虛擬化平台VMware vSphere 7,不僅提供針對不同管理用途的命令工具,更有完善操作介面設計的vSphere Client管理網站,因此無論是習慣於視窗介面操作的IT人員,還是重度愛好以命令工具進行維運的高級工程師都相當適用。vSphere 7在命令工具的提供是相當完整,管理vCenter Server有專屬的DCLI(Datacenter Command-Line Interface),管理ESXi主機也有ESXCLI,更棒的是還有一個全方位的命令管理工具PowerCLI。

VMware PowerCLI是一個基於Windows PowerShell的命令管理工具,它內建了超過800個Cmdlet,搭配參數可以用來執行各種複雜的批次管理作業,以及建立自動化管理的Script,這對於已熟悉PowerShell命令用法的IT人員說,可以輕鬆快速上手,而對新手來說也是邁入vSphere高級管理師的必要學習。

目前它能夠進行連線管理的系統包括VMware vSphere、VMware Cloud Director、vRealize Operations Manager、vSAN, NSX-T Data Center、VMware Cloud Services、VMware Cloud on AWS、VMware HCX、VMware Site Recovery Manager以及VMware Horizon。換句話說,只要熟悉PowerCLI命令參數的結構與用法,就可以一次做好從Private Cloud到Public Cloud的各項整合與維護任務。接著,就來全程實戰講解PowerCLI從安裝到進階的各項技巧。

快速安裝PowerCLI

想要在Windows 10/11作業系統中使用VMware PowerCLI來連線管理vSphere,可以選擇離線或線上的方式來完成安裝。在離線安裝部分,先到官網下載ZIP壓縮檔案(例如VMware-PowerCLI-12.2.0-17538434)。

‧VMware PowerCLI下載網址:https://developer.vmware.com/web/tool/12.4/vmware-powercli

完成下載後,開啟Windows PowerShell命令視窗。接著,執行$env:PSModulePath命令檢查PowerShell模組路徑,再切換到解壓縮後的路徑之下,執行「Get-ChildItem * -Recurse | Unblock-File」來完成這些檔案的取消封鎖設定。最後,透過執行「Get-Module -Name VMware.PowerCLI –ListAvailable」命令確認PowerCLI模組是否可用。

若目前的Windows 10/11電腦可以連線Internet,便可改選最簡單的線上安裝方式來完成。在Windows PowerShell命令視窗中,如圖1所示,執行以下命令參數完成PowerCLI的安裝即可。值得注意的是,如果省略了-AllowClobber參數,將會出現未受信任存放庫模組的錯誤訊息而無法繼續:

圖1  安裝VMware PowerCLI模組。

Install-Module -Name VMware.PowerCLI –AllowClobber

完成安裝VMware PowerCLI模組後,再執行以下的命令參數,如圖2所示,以便讓後續在建立與vCenter Server的連線過程中不會出現憑證方面的錯誤而導致連線失敗:

圖2  修改PowerCLI配置。

Set-PowerCLIConfiguration -Invalid CertificateAction Ignore -Confirm:$false

PowerCLI連線vCenter Server

在確認已完成VMware PowerCLI模組的安裝與設定後,如圖3所示就可以透過執行「Set-ExecutionPolicy RemoteSigned」命令參數來修改命令的執行原則,否則在進行vCenter Server的連線時,可能會出現模組載入的錯誤。緊接著,執行「Connect-VIServer」命令,然後在Server[0]的欄位中輸入所要連線的vCenter Server位址並按下〔Enter〕按鍵。最後,再到彈跳出來的「Specify Credential」視窗中輸入管理人員的帳號與密碼即可。

圖3  連線vCenter Server。

成功連線登入vCenter Server後,就可以立即嘗試執行幾個PowerCLI的基本命令,來查看系統的回應狀態是否正常。例如,先執行Get-VMHost命令來查看所有ESXi主機的基本狀態,再執行Get-VM命令查看所有虛擬機器基本狀態,如圖4所示。最後執行Get-Datastore命令,檢視目前所有已連接的資料存放區清單資訊。

圖4  查看主機、虛擬機器、資料存放區。

若想查詢在選定資料夾(例如MyFolder)中的叢集清單,則執行「Get-Cluster -Location MyFolder」命令參數。如果要再進一步查詢在選定的叢集(如Cluster01)中有哪些主機以及虛擬機器,只要分別執行「Get-Cluster Cluster01 | Get-VMHost」和「Get-Cluster Cluster01 | Get-VM」命令參數即可。

查詢vCenter Server與ESXi版本資訊

想要查看vCenter Server的版本資訊,可以從vSphere Client或vCenter Server Appliance網站介面來查詢。至於ESXi主機的版本資訊,除了同樣可以從vSphere Client網站來查詢外,也可經由VMware Host Client或DCUI(Direct Console User Interface)介面進行查看。

然而,對於習慣使用命令介面進行管理的IT人員來說,要如何透過命令參數的執行來查詢vCenter Server以及ESXi主機的版本資訊呢?方法很簡單,在完成以PowerCLI登入vCenter Server後,執行以下命令參數,即可得知目前所連接的vCenter Server之版本資訊,如圖5所示:

圖5  檢視vCenter Server版本資訊。

$Global:DefaultVIServers | select  Name, Version, Build

緊接著,如圖6所示,可透過執行如下的命令參數,查看目前所有ESXi主機的版本資訊:

圖6  檢視所有ESXi主機版本資訊。

Get-VMHost | Select-Object Name, Version, Build

值得注意的是,除了Version的版本資訊外,對於擁有相同Version的vCenter Server或ESXi主機,還必須注意它們的Build編號,因為不同的Build編號,意味著已安裝了更新的Hotfix。

那該如何取得所有虛擬機器的VMware Tools版本資訊呢?很簡單,只要執行以下的命令參數即可一目了然:

Get-VM | Select-Object -Property Name, @{Name='ToolsVersion';Expression={$_. Guest.ToolsVersion}}

ESXi主機IP位址檢視技巧

想要從vSphere Client網站查看每一台ESXi主機的IP配置是相當容易的,不過由於是圖形操作介面,因此只能針對每一台ESXi主機進行個別點選才能檢視。而當ESXi主機的數量較多時,這樣的查詢方式似乎就顯得沒有效率。

若開始學習PowerCLI命令工具,將會發現諸如此類的批量資訊查詢需求,透過命令參數的執行肯定更有效率。

如圖7所示,在此執行以下的命令參數,即可迅速得知每一台ESXi主機預設VM Kernel(vmk0)相對的IP位址:

圖7  檢視所有ESXi主機IP位址。

Get-VMHost | Select Name,@{N="IP Address";E={($_.ExtensionData.Config. Network.Vnic | ? {$_.Device -eq "vmk0"}). Spec.Ip.IpAddress}}

在前一個範例中,僅示範各主機vmk0預設的IP位址。如果想要更完整地顯示各主機中所有VM Kernel的IP位址、子網路遮罩、Mac位址、PortGroup名稱,以及是否已啟用vMotion功能,則執行以下的命令參數:

Get-VMHostNetworkAdapter |Where-Object {$_.Name -like 'vmk*'} |FT VMhost,Name,DhcpE nabled,IP,SubnetMask,Mac,PortGroupNam e,vMotionEnabled

若想進一步查詢所有ESXi主機的DNS位址設定、網域名稱、搜尋網域名稱等資訊,如圖8所示執行以下的命令參數:

圖8  檢視ESXi主機DNS配置。

(Get-VMHost).ExtensionData.Config. Network.DNSConfig

管理Guest OS的IP配置

對於vSphere的管理,除了查詢與修改ESXi主機的IP位置外,若想要修改虛擬機器Guest OS中的IP配置,通常就必須連線開啟Guest OS的操作介面才能進行修改。

如今在熟悉PowerCLI命令後,就可以使用更快速的方法進行Guest OS的IP配置與檢視。以Windows的命令管理為例,如圖9所示可執行以下命令參數來完成變數的設定,在這個變數設定中明確輸入了所要配置的網路名稱,以及所要設定的IP位址、子網路遮罩以及閘道位址:

圖9  修改並檢視IP配置。

$cmd='netsh interface ip set address name="Ethernet0" static 192.168.11.11 255.255.255.0 192.168.11.1'

完成變數設定後,緊接著便可以透過執行如下的命令來完成選定虛擬機器Guest OS的連線登入,以及上述變數命令的執行:

invoke-vmscript -VM Server01 -Script Text$cmd -GuestUser 'Administrator'  -GuestPassword 'password' -ScriptType bat

最後,再執行以下的命令參數來查看上述的IP位址配置之修改是否成功。可以繼續善用invoke-vmscript命令來執行更多的Windows命令參數,以修改或檢視除了網路之外的各種系統配置:

Invoke-VMScript -VM Server01 -ScriptText "ipconfig /all" -GuestUser 'Administrator' -GuestPassword 'password'

結合XML批次建立虛擬機器

之前曾經介紹過,關於在vSphere 7.x架構下,透過結合CSV檔案的方式來批次建立虛擬機器的方法。雖然,接下來所要介紹批次建立虛擬機器的方法,一樣是透過PowerCLI命令來完成,不過這次要結合的是XML檔案,因此在做法上有些不一樣,可根據自身的習慣來擇一使用。

首先開啟Notepad編輯軟體,然後如圖10所示以XML標籤方式設定好每一個虛擬機器的名稱、CPU數量、記憶體大小、磁碟大小、網路名稱等參數。這一些參數的名稱可以自定義,只要能夠符合接下來的命令參數設定即可。

圖10  建立XML檔案。

完成XML檔案的建立後,緊接著使用PowerCLI連線登入vCenter Server,然後執行以下命令參數來完成XML檔案名稱的變數設定:

[xml]$s = Get-Content myVM.xml

最後,只要再執行以下命令參數,即可完成虛擬機器的建立。必須注意的是,其中每一個參數所對應的標籤名稱,必須與XML的描述相符才行:

$s.CreateVM.VM | where { New-VM -VMHost 192.168.7.253 -Name $_.Name -NumCPU $_.NumCPU -MemoryGB $_.MemoryGB -DiskGB $_.DiskGB -NetworkName $_.NetworkName}

完成虛擬機器的批次建立後,除了可以執行Get-VM來查看所建立的虛擬機器,也可以如圖11所示從vSphere Client進行查看,並且繼續完成進階配置以及開啟電源等操作。

圖11  檢視虛擬機器清單。

在上述結合XML批量建立虛擬機器的範例中,只是使用了幾個常見的配置標籤,實際上可以根據需求加入更多的配置標籤,來搭配New-VM命令參數使用,例如加入-ResourcePool參數來選定資源集區,或是加入-DiskPath來指定VMDK虛擬磁碟檔案的存放路徑,以及加入-DiskStorageFormat參數來設定虛擬磁碟的檔案格式等等。

檢查ESXi服務與健康狀態

ESXi主機是vSphere運行架構中的基礎,一旦這個基礎出現異常狀態,那麼在它上面運行的虛擬機器肯定也會連帶受到影響。為此,IT人員必須確實掌握所有ESXi主機的健康狀態。

關於ESXi主機的健康診斷,除了透過vSphere Client來查看外,進階的檢視與預警則可透過VMware自家的vRealize Operations Manager解決方案來完成。對於愛好使用PowerCLI命令管理介面的IT人員,則可善用一些簡單的命令參數,為ESXi主機進行一些基本的健康檢查。

首先,透過執行以下命令參數,針對選定資料中心下的所有ESXi主機查看整體的健康狀態:

Get-Datacenter Datacenter | Get- VMHost | Get-View | FT -Property  Name,OverallStatus –AutoSize

如果在「OverallStatus」欄位中顯示「green」,即表示目前該主機的整體健康狀態是正常的,如圖12所示。

圖12  檢查所有ESXi主機健康狀態。

ESXi主機的健康診斷除了要優先檢查整體的健康狀態外,最好還能進一步檢查所有需要的服務是否皆在啟動中。如圖13所示,可執行以下命令參數來得知192.168.7.251這台ESXi主機的所有服務狀態:

圖13  ESXi主機所有服務狀態。

Get-VMHost 192.168.7.251 | Get- VMHostService

上一步驟的做法只是針對選定的ESXi主機來查看所有服務狀態,如果要查看所有ESXi主機中選定的服務狀態,則可參考以下命令參數:

Get-VMHost | Get-VMHost Serv ice | Where-Object {$_. key -eq "TSM"} |Select- Object VMHost, Label,Key,Policy, Running,Required

如圖14所示,關於此命令參數中的"TSM"條件設定,所針對便是ESXi Shell服務狀態。

圖14  ESXi Shell服務狀態。

結合Out-GridView應用範例

在Windows PowerShell命令介面中執行PowerCLI命令時,如果所要檢視的資料相當多時,通常就會搭配一些篩選專用的參數(例如Where-Object),來篩選出符合條件設定的資料。

然而,對於資料篩選條件的快速設定,若是透過命令視窗來進行,肯定覺得相當不方便,因為須要不斷地修改命令參數的設定。因此,建議當面對需要不斷修改篩選條件的操作需求時,不妨善用Out-GridView參數來開啟Windows的視窗介面,再進行各種條件的替換肯定會更有效率。

如圖15所示便是一個典型的範例,先執行「Get-VM | Out-GridView」命令來開啟檢視清單的視窗,緊接著再按下〔新增條件〕,設定資料的篩選即可。

圖15  查看所有虛擬機器清單。

如圖16所示,便是設定了僅檢視已配置一顆CPU的虛擬機器清單,以這個範例而言,當然也可以篩選特定關鍵字的虛擬機器名稱,或是電源狀態、記憶體大小。如果想恢復全部資料的檢視,則按下〔全部清除〕按鈕。

圖16  篩選虛擬機器清單。

如何查詢VMRC開啟記錄

在vSphere架構中,對於虛擬機器Guest OS遠端操作,可以透過vSphere Client網頁模式來開啟,或者選擇使用VMRC(VMware Remote Console)的視窗介面來開啟。其中,VMRC除了可以使用獨立下載的安裝程式外,也可直接使用現行已在使用中的VMware Workstation Pro或VMware Workstation Player進行連線。

無論選用何種VMRC工具來連線管理虛擬機器,若想知道哪些IT人員曾經透過VMRC進行連線管理,如圖17所示,只要執行如下的PowerCLI命令參數即可得知。此範例其實是透過查詢vSphere系統中的事件紀錄,找出過去一個小時內曾經被管理人員以VMRC開啟的虛擬機器清單:

圖17  查詢VMRC開啟紀錄。

Get-VM | ForEach-Object {$_ | Get- VIEvent -Start (Get-Date).AddMinute (-60) -MaxSamples 300 | where Fullform attedmessage -like "A ticket for * of type  webmks on * has been acquired"} | select cre atedtime,username,@{l="VM";e={$_.vm.name}}

使用命令讓主機進入維護模式

當ESXi主機需要停機維護時,必須先將所有在此主機上運行的虛擬機器關機、暫停或移轉。然而,在獨立主機的運行中,唯一僅能選擇以手動方式將虛擬機器關機。如果是在vSphere叢集的架構下,便可在虛擬機器不關機或暫停的狀態下,先完成線上移轉(vMotion)後再執行ESXi主機的關機。在進階應用方面,還可以如圖18所示結合叢集設定中的「vSphere DRS」功能之啟用,來達到虛擬機器自動移轉至其他主機的需求。

圖18  編輯叢集設定。

此外,如果在vSphere叢集中已啟用vSAN功能,則必須在設定ESXi主機進入維護模式時,如圖19所示選擇vSAN資料移轉的方式。如果選擇【移轉全部資料】或【確保可存取性】,就必須等待這些任務在背景完成執行後,才會正式讓此主機進入維護模式。

圖19  從vSphere Client進入維護模式。

接下來,就實際使用PowerCLI命令參數,將一個已啟用vSAN的叢集主機設定進入維護模式。如圖20所示,執行以下的命令參數,將選定的ESXi主機設定進入維護模式,並選擇不移轉vSAN的資料(NoDataMigration)。此外,也可以改設定為移轉全部資料(Full)或確保可存取性(EnsureAccessibility)的參數:

圖20  讓主機進入維護模式。

Get-VMHost -Name 192.168.7.251 | Set-VMHost -State Maintenance -VsanDataMigrationMode NoDataMigration

針對上一步驟的執行結果,如果發現執行的進度一直停留在0%,可以回到vSphere Client網站上查看一下「最近的工作」清單。如圖21所示,在此範例中會發現其中的「詳細資料」欄位出現了「正在等待所有虛擬機器關閉電源、暫停、或移轉...」的訊息。這表示須要手動完成上述要求的操作,或是選擇啟用vSphere叢集的DRS功能。

圖21  最近的工作。

當完成主機上相關虛擬機器的關機或移轉後,如圖22所示,便可再次執行以下的命令參數,來完成ESXi維護模式的設定:

圖22  主機成功進入維護模式。

Get-VMHost -Name 192.168.7.251 | Set-VMHost -State Maintenance -VsanDataMigrationMode NoDataMigration

在確認已成功將選定的ESXi主機設定進入維護模式狀態後,就能進一步執行以下命令參數來將此主機關機:

Stop-VMhost -VMhost 192.168.7.251 -Confirm:$false

若想知道目前的vSphere架構中有哪些ESXi主機正處於維護模式狀態,如圖23所示,只須執行「Get-VMHost -State maintenance」命令參數。若進一步想讓選定的ESXi主機(例如192.168.7.251)離開維護模式並進入連線狀態,則執行如下命令參數:

圖23  查詢並離開主機維護模式。

Get-VMHost -Name 192.168.7.251 | Set- VMHost -State Connected

管理SSO用戶、密碼與鎖定原則

熟悉vSphere運行架構的IT人員都知道,ESXi主機除了可以獨立運行來使用虛擬機器的基本功能外,也能在整合vCenter Server的使用下完整發揮所有已授權的功能,例如vSphere HA、DRS、vSAN等等,甚至於進一步整合自家的其他解決方案或第三方的產品。

然而,在整合vCenter Server的架構下,之所以可以完善地達到帳戶、群組、角色權限、主機、虛擬機器、儲存、網路以及各項功能配置的集中管理,便是仰賴vCenter Server內建的SSO(Single sign-on)服務。

想要管理SSO服務中的各項配置,除了透過VAMI網站來完成外,也可以經由執行PowerCLI相關命令參數來快速完成。截至vSphere 7.0為止,目前可用的SSO相關配置命令,大致有如下14個命令:

Add-ActiveDirectoryIdentitySource、Connect-SsoAdminServer、Disconnect-SsoAdminServer、Get-SsoGroup、Get-SsoLockoutPolicy、Get-SsoPasswordPolicy Get-SsoPersonUser、Get-SsoTokenLifetime、New-SsoPersonUser、Remove-SsoPersonUser、Set-SsoLockoutPolicy、Set-SsoPasswordPolicy、Set-SsoPersonUser、Set-SsoTokenLifetime

接下來,實際演練一下幾個常見的命令功能。首先,執行以下命令參數來完成選定vCenter Server的SSO管理伺服器連線登入,如圖24所示,在此以連線vcsa01.lab02.com伺服器為例,並透過SkipCertificateCheck參數設定來略過憑證的檢查:

圖24  連線SSO管理伺服器。

Connect-SsoAdminServer -Server vcsa01. lab02.com -User Administrator@lab02.com - Password password –SkipCertificateCheck

成功連線SSO管理伺服器後,緊接著透過以下命令參數來新增一個名為JaneKu的帳戶,並完成密碼、Email地址設定:

New-SsoPersonUser -User JaneKu -Password '1234@#Abcd' -EmailAddress 'JaneKu@lab02.com' -FirstName 'Jane' -LastName 'Ku'

對於vSphere網域中任何現有的帳號,如果想要查詢任一帳號的詳細資訊,可參考以下命令參數:

Get-SsoPersonUser -Name JaneKu  -Domain lab02.com

如果需要刪除選定網域中的任一帳戶,則可參考以下命令參數:

Remove-SsoPersonUser -User (Get- SsoPersonUser -Name JaneKu -Domain lab02.com)

了解SSO網域帳號的基本管理命令後,接下來可以學一下關於密碼原則以及帳戶鎖定原則的管理。首先執行「Get-SsoPasswordPolicy」命令,取得現行的密碼原則配置。

在確認了現行的密碼原則配置後,如果想要將密碼的最小長度以及有效使用的天數進行修改,可執行以下命令參數來完成。至於其他密碼原則的設定修改,只要比照同樣的做法即可:

Get-SsoPasswordPolicy | Set- SsoPasswordPolicy -MinLength 10  -PasswordLifetimeDays 45

對於用戶連線登入的安全管理,除了密碼原則的配置外,最好還能夠進一步調整符合企業IT資訊安全需求的帳戶鎖定原則。同樣地,可以先執行Get-SsoLockoutPolicy命令來查看現行的帳戶鎖定原則。如圖25所示,這裡能夠設定的欄位分別有自動解鎖帳戶的間隔秒數、錯誤密碼嘗試的間隔秒數、密碼錯誤嘗試的最大次數。在此透過以下命令參數來完成自動解鎖帳戶的間隔秒數(AutoUnlockIntervalSec)以及密碼錯誤嘗試的最大次數(MaxFailedAttempts)兩項設定:

圖25  查看與修改帳戶鎖定原則。

Get-SsoLockoutPolicy | Set- SsoLockoutPolicy -AutoUnlockInter valSec 30 -MaxFailedAttempts 3

產出vSphere完整配置報告

若是剛接手企業vSphere架構維護的IT人員,即便早有了vSphere基本維運的經驗,但仍得花上不少的時間來熟悉現行的各項配置,尤其是中大型的vSphere架構,那肯定得花上數月的時間才能逐一掌握。

為此建議先透過以下的網址連結,如圖26所示,下載與安裝AsBuiltReport PowerShell Module並在PowerCLI命令中使用,這樣就可以善用其報告產出功能,一次完整檢視vSphere架構中的所有配置細節。

圖26  下載AsBuiltReport PowerShell Module。

‧AsBuiltReport PowerShell Module下載網址:https://www.powershellgallery.com/packages/AsBuiltReport.VMware.vSphere/1.1.3

針對AsBuiltReport PowerShell Module的安裝方式,也可以採用如圖27所示的做法,在Windows PowerShell命令視窗中,執行以下命令參數來迅速完成安裝,並且可以自行決定所要安裝的版本(例如1.1.3):

圖27  安裝AsBuiltReport PowerShell Module。

Install-Module -Name AsBuiltReport. VMware.vSphere -RequiredVersion 1.1.3

在確認完成AsBuiltReport PowerShell Module的安裝後,便可執行以下的命令參數來完成選定vCenter Server的連線,以及將HTML報告產出在選定的路徑中:

$cred=Get-Credential   New-AsBuiltReport -Report VMware. vSphere -Target vcsa01.lab02.com -Format HTML -OutputPath 'D:\Documents\' -Timestamp -Credential $cred

接下來,就可以到選定的路徑下開啟vSphere配置報告。打開之後,首先在報告封面會看到製作此報告的作者、日期以及版本資訊。接著,就可以看到目錄清單,點選所要查看的配置超連結即可,例如想要查看有關於目前叢集的配置,就點選「Cluster」超連結。如圖28所示,則是有關於現行所有標準vSwitch連接埠群組的配置。也可以進一步查看所有Distributed Switch的配置,這些配置資訊包括版本資訊,還有所連接的Uplink數量、Port數量、Port Group數量、主機數量、虛擬機器數量、主機與Uplink以及實體網卡的對應關係。

圖28  vSwitch連接埠群組配置。

如圖29所示,則是有關於叢集與資源集區的配置資訊。叢集配置部分,包括了叢集的名稱、ID、資料中心、vSphere HA啟動狀態、vSphere DRS啟動狀態、vSAN啟動狀態、EVC Mode啟動狀態等等。在資源集區配置部分,包括資源集區名稱、ID、主機名稱、CPU與記憶體共享等級、CPU與記憶體共享配置、CPU與記憶體資源保留設定、記憶體限制、虛擬機器數量等等。

圖29  叢集與資源集區配置。

除了上述這些報告範例外,常見的還可以查看Storage Adapter、iSCSI資料存放區、iSCSI LUN配置資訊、NFS資料存放區、所有虛擬機器配置資訊、快照資訊等等。

善用RVTools工具

RVTools是一個基於Windows .NET 4.6.1開發技術,並結合vSphere Management SDK 7.0和CIS REST API所設計而成的視窗工具,透過此工具與vCenter Server或ESXi的連線,讓管理員能夠依照有條理的分類來快速檢視整個vSphere的完整配置資訊與基礎健康狀態,例如CPU、記憶體、磁碟、HBA配置、快照、資源集區、叢集、Distributed Switches、VM Kernels、資料存放區等等。目前,RVTools支援從vCenter Server 4.x、ESX 4.x到vCenter Server 7.0、ESXi 7.0。

由於Veeam Software是RVTools的贊助者,因此透過以下官網下載此工具時,必須輸入下載者姓名、公司名稱以及Email來完成註冊,以便獲得更多有關於Veeam的IT產品資訊,當然也可以隨時取消訂閱。

‧RVTools下載網址:https://www.robware.net/rvtools/download/

完成RVTools的下載與安裝後,便可以如圖30所示開啟它,並完成連線位址以及帳號密碼的輸入,然後按下〔Login〕按鈕。

圖30  RVTools連線登入vSphere。

成功連線登入RVTools管理介面後,就會發現看到系統已經將各種配置進行類別分頁,例如vCPU、vMemory、vDisk、vNetwork、vNIC、vHost、vCluster等等。更棒的是,還可以如圖31所示將這一些配置資訊匯出成Excel文件。

圖31  RVTools檔案選單。

此外,對於vSphere基本運行的健康診斷,除了可以從「vInfo」分頁來查看所有虛擬機器的連線與配置狀態外,也可從「vHealth」分頁中檢視所有ESXi主機服務狀態,以及相關資料存放區的健康狀態。若要即時檢查這些健康狀態,則點選「Health」選單下的【Check】。

如圖32所示,便是將vSphere配置資訊匯出至Excel的結果,在Excel操作介面中,可以快速對於任一欄位設定篩選,來找出自己所需要的資料,可以說在篩選條件的設定上更加彈性。

圖32  將配置資訊匯出至Excel。

如果需要在RVTools操作介面中設定欄位的篩選,點選「View」選單下的【Filter】即可,如圖33所示,可以設定僅顯示已開啟電源的虛擬機器,或者僅顯示選定資料中心以及叢集下的主機配置資訊。對於設定好的篩選條件,若希望在下一次開啟「Filter」設定視窗時能夠繼續沿用,記得勾選「Save filter and use it next time when RVTools is started」選項。

圖33  設定篩選。

結語

想要入門學習VMware PowerCLI的使用並不難,不過若要達到行雲流水般的操作自如,便非得花費一番苦心不可。關於PowerCLI的進階應用,對於許多完全沒有程式開發經驗的IT人員而言,即便無法撰寫複雜的Script,但至少也能夠藉由Cmdlet的執行,比以往更有效率地完成各種批次操作需求。而為了讓IT人員能夠快速產出實務上需要的Script,建議官方能在vSphere Client網站的操作介面中,對於各種任務操作的執行結果,都能夠讓人員自行決定是否要匯出相對的Script,這樣人員便可以在後續透過修改此Script,來變成自己平日維運中所需要的Script。對於每一個修改後的Script只要有適時地做好註解說明及分類,相信可以為往後的維運帶來莫大的助益。

<本文作者:顧武雄,Microsoft MVP 2004-2016、MCITP與MCTS認證專家、台灣微軟Technet、TechDays、Webcast、MVA特約資深顧問講師、VMware vExpert 2016-217、IBM Unified Communications/Notes/Domino/Connections Certified。>


追蹤我們Featrue us

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!