這回釋出的VMware vSphere 7.0 Update 1不僅修正一些已知的問題,也全面提供了許多功能更新。全新的vSphere叢集服務不但提升HA整體運行的可靠度,還能依授權的不同為現行的運行架構配置更多的主機、虛擬機器以及資源,本文將透過實作來示範說明。
在IT管理的世界裡,從韌體到軟體都需要維持更新狀態,其實就連IT人的腦袋也一樣需要經常更新,而且更新的頻率還得遠高於其他類型的職務,否則就會因少了新穎的專業知識來解決現行的難題或預防未來可能發生的問題,進而影響組織團隊的運作效率與向上發展的競爭力。
有這麼嚴重嗎?答案是肯定的,現今任何一種類型的組織發展,即便是非營利的公益團體,都需要有完善與先進的e化環境,讓團隊成員無論是在辦公室還是外面,都可以隨時藉由方便的協同合作工具,來迅速有效率地完成任何交辦的任務。
然而,對於一位系統管理人員而言,無論韌體還是軟體的更新,可是又愛又恨,這種錯綜複雜的感覺也只有他們自己能夠體會。因為在大部分的情況下,雖然更新可以同時解決已知的Bug以及提升運行效能、安全性、穩定性、支援性、延展性等問題,甚至於還額外提供一些新功能,但相對地也可能會帶來新的問題,像是更新後導致某些現行功能失效,或是出現嚴重的安全漏洞等問題。因此,無論是哪一種系統或應用程式的更新任務,系統人員都務必將事前備份納入更新計畫中,以便在更新後發現有任何大問題時可以即時還原。
如今許多企業IT或大或小都有部署私有雲的運行架構,想想看在這樣的架構之下更新的重要性順序應當為何?答案依序是主機韌體、虛擬化平台主機作業系統、虛擬化平台管理系統、虛擬機器整合程式、虛擬機器硬體、虛擬機器Guest OS、應用程式與服務。由此可見,應用程式與服務雖是提供給廣泛用戶來使用,但在更新的順序上仍要以基礎建設為優先,也就是從主機韌體到虛擬機器Guest OS。
截至目前為止,VMware vSphere 7.0除了在2020年10月發布了Update 1外,也陸續完成了Update 1a、Update 1b以及Update 1c的更新發布,估計後續仍可能會有Update 2更新的發布,這類的更新對於vSphere的整體維運來說是相當重要的。至於Update 1的更新下載要如何選擇呢?以現階段來說,只要選擇最新的Update 1c版本即可,在後續的實戰講解中,將統一簡稱為Update 1。
有人曾詢問為何這回的更新版號是7.0.1而不是7.1,如此說來是否表示官方只是提供一些小程式的修正更新而已?其實不然,因為這次的更新包不僅修補了大量的已知問題,更是在與效能、穩定性、安全性、可用性、延展性等添加了新功能或改善既有功能設計。接下來,就一一實戰講解關鍵的主要更新功能!
ESXi 7.0 Update 1提供的關鍵新功能
在vSphere架構中,ESXi主機是虛擬化運行的基礎,而vCenter Server則是集中管理所有虛擬化資源的控制系統,兩者缺一不可。在準備對它們進行Update 1的更新之前,建議先來了解一下這回主要更新了哪一些設計及添加了哪些功能,再根據實際的需求程度來安排更新計畫。
首先,介紹大家最關心的虛擬機器資源配置部分,相較於先前的版本,已可建立多3倍的vCPU以及多4倍的vRAM資源的虛擬機器,所以虛擬機器的vCPU資源配置已從原來上限的256個增加支援到768個,vRAM則從6TB增加到24TB。
在ESXi主機的硬體支援更新上,目前主要是增加了對於HPE伺服器主機的vSphere Quick Boot功能支援,這些型號包括了HPE ProLiant BL460c Gen9、HPE ProLiant DL325 Gen10 Plus、HPE ProLiant DL360 Gen9、HPE ProLiant DL385 Gen10、HPE ProLiant DL385 Gen10 Plus、HPE ProLiant XL225n Gen10 Plus、HPE Synergy 480 Gen9。其他還有陸續增加對於Cisco Systems與Dell相關主機型號的支援,這部分可以到VMware官網查詢。
接著,在可執行UMDS(Update Manager Download Service)的作業系統中,則增加支援了更多有關於Red Hat Enterprise Linux和Ubuntu的版本清單,分別是Ubuntu的14.0.4、18.04、18.04 LTS、20.04 LTS以及Red Hat Enterprise Linux的7.4、7.5、7.7、8.1。必須注意的是,若想讓UMDS在Red Hat Enterprise Linux 8.1中能夠正常運行,必須預先安裝好libnsl套件2.28以上的版本,否則會在載入共用程式庫時出現錯誤。
對於虛擬機器運行的更新,目前已針對虛擬機器中VMware Tools時間同步控制做改善。關於這項功能使用,可在開啟虛擬機器的「編輯設定」頁面時,從「虛擬機器選項」子頁面中查看到。如圖1所示,它提供了「在啟動和繼續時同步(建議)」和「定期同步時間」兩個選擇讓管理人員自由設定,若兩個選項皆沒有選擇時,將會停止執行時間的同步。
在這次的更新中也添加了最新虛擬硬體版本18的支援,這項更新除了能夠讓虛擬機器配置更高資源的上限外,還額外支援三項重要功能,分別是安全加密虛擬化-加密狀態(Secure Encrypted Virtualization - Encrypted State,SEV-ES)、虛擬遠端直接記憶體存取(virtual Remote Direct Memory Access,vRDMA)的原生端點、EVC圖形模式(vSGA)。
想要知道目前運行中的虛擬機器的硬體版本,除了從虛擬機器的摘要頁面來查看「相容性」資訊外,如圖2所示也可以到「更新」頁面內檢視虛擬機器硬體相容性資訊。
在與命令相關的系統管理配置上,添加了使用命令參數「--remote-host-max-msg-len」來設定syslog存放訊息的最大長度,目前最大長度已支援至16KiB。針對ESXi系統的安裝配置,則可以透過開機選項systemMediaSize來限制開機媒體上系統儲存區的分割大小,系統預設值是138GB,可根據實際的需要修改為min(33GB)、small(69GB)或是max(最大可用空間)。
最後則是增加了對於SMP-FT(Support for Multi-Processor Fault Tolerance)的上限數量,也就是說,只要ESXi主機或叢集能配置的資源夠多,便可以設定更多的SMP-FT虛擬機器。
vCenter Server 7.0 Update 1關鍵新功能
vCenter Server在vSphere架構中,是用來掌控所有ESXi主機、虛擬機器、虛擬網路、儲存以及各項資源配置的管理中心,因此一旦ESXi主機需要全面更新或升級時,vCenter Server通常就需要一併進行更新,如此才能讓已知的Bug獲得解決,並且使得新增加或改善後的功能可以使用。接下來,就來了解一下vCenter Server 7.0 Update 1有哪些關鍵新功能。
首先,它增強了vSphere Lifecycle Manager對於ESXi主機和叢集在操作管理上的延展性,包括了支援的叢集數量從原來的15個增加到64個,對於叢集架構下支援ESXi主機數量,從原來64個增加到96個,不過目前對於vSAN的配置支援仍是限制為64個。而在vSphere Lifecycle Manager對於ESXi主機映像管理的數量支援部分,也從150個增加到280個。最後,在以資料中心層級下所啟動的啟動修復功能,其執行修復的叢集數量從15個增加到64個。
對於vSAN的更新管理,則會採用依序更新叢集中的容錯網域方式,以防止重疊任務執行的狀況發生。進一步對於每個容錯網域內的ESXi主機,也會以輪流方式進行逐步更新,而對於vSAN延伸叢集,則會以第一個容錯網域來做為慣用的站台進行更新。
接著,在Skyline健全狀況功能的管理中,如圖3所示,目前已在vCenter Server節點的「監控」→「Skyline健全狀況」頁面中,可對於各項線上健康檢查的選項(例如運算、安全、儲存等類別)來選擇性設定成「無回應警示」,如此一來,管理員就可以針對一些已知問題的通知進行關閉,等到後續需要開啟時再按下〔還原警示〕按鈕即可。
此外,在vCenter Server Appliance中新增了對SMTP服務連接驗證的支援,只要完成相關連配置,就能夠以匿名或驗證方式來發送系統的Email警示。至vCenter Server節點的「設定」→「一般」頁面中,點選「編輯」來開啟「編輯vCenter一般設定」→「郵件」設定頁面,如圖4所示,輸入郵件伺服器位址與郵件寄件者。請注意!針對Mail Server位址的設定,若輸入IP地址而不是FQDN,將無法採用SMTP驗證機制(SMTP Authentication),換句話說,採用這種方式就必須直接在Mail Server的Mail Relay配置中直接賦與權限給vCenter Server。
緊接著,在「設定」→「進階設定」頁面中按下〔編輯設定〕按鈕,便可以在「編輯進階vCenter Server設定」頁面中,完成SMTP服務連接埠(mai.smtp.port)、郵件使用者(mail.smtp.username)以及連線密碼(mail.smtp.password)的設定,如圖5所示。設定完畢,記得按下〔儲存〕按鈕。
最後,可以藉由關閉任一虛擬機器的電源,來觀察是否會在觸發警示的同時,也收到相關的Email警示通知。
vSphere 7.0 Update 1快速更新
過去已經介紹過安裝ESXi主機更新程式的幾種方法,分別有使用ESXCLI相關命令或vSphere Lifecycle Manager來線上升級主機,或是直接採用ISO映像進行離線升級。在一個擁有數台ESXi主機的vSphere叢集架構中,由於可以藉由vMotion或DRS來調配虛擬機器的運行主機,因此建議採用ISO映像來逐台完成升級。
在確認已經將準備升級的ESXi主機中運行的所有虛擬機器,都暫時移轉到叢集中的其他ESXi主機來繼續運行後,便可以將ESXi主機透過ESXi 7.0 Update1的安裝映像(例如VMware-VMvisor-Installer-7.0U1c-17325551.x86_64.iso)來重新啟動。成功啟動後,來到「ESXi and VMFS Found」頁面中,只要選擇「Upgrade ESXi,preserve VMFS datastore」,即可對於現行的安裝進行更新。接著,在「Confirm Upgrade」頁面中,將會看到系統提示即將把ESXi 7.0.0升級到ESXi 7.0.1,如圖6所示。按下〔F11〕鍵,即可開始進行升級。在完成版本的更新後,只要卸載ISO映像並重新啟動系統即可。
完成ESXi的更新後,接下來學習vCenter Server的快速更新技巧。首先將vCenter Server的更新映像(例如VMware-vCenter-Server-Appliance-7.0.1.00200-17327517-patch-FP.iso)掛載到vCenter Server虛擬機器,然後透過SSH遠端連線工具(例如PieTTY)以root管理員帳戶登入到vCenter Server,然後先分別執行「software-packages stage --iso」與「software-packages list --staged」命令參數,確認能夠正常存取此更新映像後,便可執行「software-packages install --staged」命令來完成更新任務。
一旦完成更新程式的安裝,就可以在vCenter Server Appliance管理介面中,如圖7所示查看到最新版本(7.0.1.00200)與組件編號(17327517)資訊。這裡也是檢視vCenter Server是否正常運行的最快方法,必須確認所有健全狀況中的各項狀態都呈現「良好」,才可以確保往後的持續更新能夠順利,這包括CPU、記憶體、資料庫、儲存以及交換的狀態。
vSphere Cluster Services運行實測
關於VMware vSphere基礎的部署流程中叢集的建立,是實現高可用性(HA)架構的必要步驟,但要知道如果vCenter Server的運行停擺,雖然叢集中的主機、虛擬機器以及容器仍可繼續運行,但叢集相關的管理功能(例如DRS)也會隨之停擺,想想看是否有什麼方法可以解決這項問題?
辦法是有的!那就直接更新到vSphere 7.0 Update 1以上版本,來使用最新的vCLS(vSphere Clustering Services)技術,讓vCenter Server即便發生故障,其叢集服務的相關功能仍可繼續正常運行,這項技術的突破對於一些已使用到vSphere DRS、Storage DRS等叢集功能的IT環境太重要了。
無論是更新現行的vSphere版本,或者直接安裝vSphere 7.0 Update 1,如圖8所示,其叢集中都會自動出現vCLS的虛擬機器,它是一個系統虛擬機器,其所使用到的虛擬硬碟資源相當小,無須配置網路連線,且預設僅配置1個CPU、128MB的RAM以及2GB的儲存空間。其中,在儲存空間部分會自動選擇存放在叢集主機的共用存放區內,若沒有偵測到可用的共用存放區,則會使用ESXi主機本機的儲存區,管理人員可以後續再自行移轉至共用的儲存區即可。
如果vCLS虛擬機器運行的所在ESXi主機停機或網路斷線,此虛擬機器將會自動移轉至其他ESXi主機來繼續運行,隨後如圖9所示可以在事件管理中查看到相關的容錯移轉事件。而當運行有vCLS虛擬機器的ESXi主機被移出叢集後,此vCLS虛擬機器也會自動移動到叢集中的其他ESXi主機來繼續運行。不過,當ESXi主機是叢集中唯一剩下的主機時,一旦也完成移出操作,則現行所有的vCLS虛擬機器都將被自動刪除。
而當要手動編輯vCLS虛擬機器或關閉電源等操作時,將會出現如圖10所示的提示訊息,告知管理人員無須人為介入此系統虛擬機器的維護,因為當對其進行手動關機,它將相隔幾秒鐘後自動再次啟動。若是執行此虛擬機器的刪除操作,它也會自動重新建立。
跨vCenter移轉虛擬機器
在vSphere 7 Update 1版本中還有一項重要實用功能的更新,那就是XVM(Advanced Cross vCenter Server vMotion),XVM功能有助於在vCenter Server執行個體之間移轉虛擬機器工作負載,而無須配置增強鏈接模式(Enhanced Linked Mode,ELM)或混合鏈接模式(Hybrid Linked Mode,HLM)。這意味著除了能夠在相同的SSO網域中執行此任務外,也可以在不同SSO網域的vCenter Server之間完成虛擬機器的移轉,簡單來說,就是跨vCenter Server虛擬機器移轉的完整解決方案,此功能已嵌入到vSphere Client操作介面中。
關於此功能的操作,可用於針對單一或批量虛擬機器的移轉,其中單一虛擬機器的移轉,只要在來源虛擬機器節點上執行「移轉」功能,便可以將此虛擬機器移轉到選定的vCenter Server下的ESXi主機來運行。若是批量的移轉需求,透過運行目標的主機或叢集節點來執行「Import VMs」功能,即可進行批量虛擬機器的選定與移轉。接下來,先說明有關於單一虛擬機器的跨vCenter Server移轉操作。
在開始之前記得在來源與目標的ESXi主機中,先針對所連接使用的網卡設定好VMkernel介面卡配置。如圖11所示,在此可以發現已啟用vMotion功能,如此才能執行線上虛擬機器的移轉功能。
接著是針對來源與目標的叢集節點部分,如圖12所示,點選至「設定」→「組態」→「VMware EVC」頁面,按下位於右上方的〔編輯〕按鈕將此功能完成啟用。所謂EVC(Enhanced VMotion Compatibility)功能,是用來解決虛擬機器手動移轉或容錯移轉至不同主機時,發現是不同世代CPU而導致無法成功移轉的問題。須注意的是,EVC僅支援相同品牌但不同世代與型號的CPU,若來源主機使用Intel處理器,而目標主機採用AMD處理器,那肯定行不通。
最後,建議開啟準備移轉的虛擬機器「編輯設定」頁面,然後如圖13所示將目前所有勾選「已連線」的網路介面卡皆取消勾選,以避免因為來源與目標的網路配置不同而造成無法執行移轉任務,因此直到完成移轉後再恢復「已連線」的勾選即可。關於此設定的修改,在相同叢集中的移轉通常不需要執行,但對於跨vCenter Server的移轉一般則需要暫時修改。
確認完成上述三個準備工作後,接下來就可以大膽地執行跨vCenter Server的虛擬機器移轉任務。首先,在來源ESXi主機的「虛擬機器」節點頁面中,針對要移轉的虛擬機器進行選定,然後點選位於「動作」或右鍵選單中的【移轉】選項。
隨後將開啟「選取移轉類型」頁面,如圖14所示,會發現除了原有的三個選項外,還多了一個「Cross vCenter Server export」。雖然此功能選項尚未完成在地語言的翻譯,但從原文的簡介中已可得知它能進行跨vCenter Server的虛擬機器匯出任務,且不需要連線相同的SSO網域。按下〔NEXT〕按鈕,繼續設定。
然後是「Select a target vCenter Server」頁面,在此輸入新的目標vCenter Server連線位址,以及帳號與密碼,如果之後還會繼續使用此連線位址,將「Save vCenter Server address」選項打勾。確認出現連線成功選定的vCenter Server訊息之後,按下〔NEXT〕按鈕。
在「選取計算資源」頁面中,選取準備用來運行此虛擬機器的目標ESXi主機。選取之後只要出現「相容性檢查成功」訊息,即可按下〔NEXT〕按鈕。如圖15所示,在「選取儲存區」頁面中,除了可選擇相容的儲存區外,還能夠修改移轉後的虛擬磁碟格式以及要套用的儲存區原則。然後,按下〔NEXT〕按鈕繼續。
接著,在「選取資料夾」頁面內選取虛擬機器移轉成功後的存放位置。當出現「相容性檢查成功」訊息時,按下〔NEXT〕按鈕。而在「選取網路」頁面中,選取移轉至目的地後所要使用的網路,若有出現相容性警告,可以暫時忽略,按下〔NEXT〕按鈕繼續。
「選取vMotion優先順序」頁面中,則可以選擇「以高優先順序排程vMotion」或「排程正常vMotion」,建議選擇前者以獲得較高的CPU資源,來迅速完成跨vCenter Server的虛擬機器移轉任務。
最後在「即將完成」頁面中確認上述步驟設定是否正確,若沒有問題便按下〔FINISH〕按鈕,即可開始執行移轉任務,整個任務完成所需的時間取決於網路連線的速度、CPU、RAM以及儲存區的效能。
跨vCenter匯入虛擬機器
有關於跨vCenter Server的虛擬機器移轉,在前面的實戰講解中所示範的是,從來源的vCenter Server將選定的單一虛擬機器執行移轉(匯出)的操作。接下來要繼續示範的則是先到目的地的vCenter Server中,在此可以看到範例中的來源vCenter Server是vcsa01.lab02.com,目的地vCenter Server則是vcsa02.lab02.com。
先選定好匯入虛擬機器後所要負責進行運行的ESXi主機(或叢集),然後按下滑鼠右鍵,並點選快速選單中的【Import VMs】,開始進行批量虛擬機器的匯入設定。
如圖16所示,來到「Select a source vCenter Server」頁面,在「NEW VCENTER」區域內,輸入新的來源vCenter Server連線位址以及帳號與密碼,如果之後還會繼續使用此連線位址,則勾選「Save vCenter Server address」選項。在確認出現連線成功選定的vCenter Server訊息後,按下〔NEXT〕按鈕。
在「Import Virtual Machines」頁面中,當來源vCenter Server旗下虛擬機器數量很多時,可以在篩選器的欄位中輸入關鍵字進行篩選,然後針對所有顯示為「green」狀態的虛擬機器,進行批量勾選並按下〔NEXT〕按鈕。
接著,在「選取計算資源」頁面中確認用來運行此虛擬機器的目標ESXi主機是否已出現「相容性檢查成功」訊息。確認後,按下〔NEXT〕按鈕。而在「選取儲存區」頁面中,除了可以選擇相容的儲存區外,還能修改移轉後的虛擬磁碟格式以及要套用的儲存區原則。設定完成後,按下〔NEXT〕按鈕。隨後,在「選取資料夾」頁面中選取虛擬機器移轉成功後的置放位置,當出現「相容性檢查成功」訊息時,再按下〔NEXT〕按鈕。
如圖17所示,在「選取網路」頁面中,選取移轉至目的地後要使用的網路,若有出現相容性警告可以暫時忽略,但如果出現「有相容性問題需要您注意」的錯誤訊息,則必須先獲得解決後才能再繼續下一步。一般常見的是目的地主機的網路安全性原則不同於來源主機的設定時,就會出現錯誤而無法繼續。此時,除了透過修改目的地網路的原則使其一致外,也可以選擇暫時將虛擬機器的網路連線取消。設定完畢,再按下〔NEXT〕按鈕。
如圖18所示,接下來在「選取vMotion優先順序」頁面中,選擇「以高優先順序排程vMotion」或「排程正常vMotion」,建議選擇前者以獲得較高的CPU資源,來迅速完成跨vCenter Server的虛擬機器移轉任務。
最後,在「即將完成」頁面內確認上述步驟設定皆無誤再按下〔FINISH〕按鈕,即可開始執行移轉任務。
圖19所示便是完成整個跨vCenter Server移轉(匯入)虛擬機器的三大步驟,分別是重新設定虛擬機器、重新放置虛擬機器,以及啟動vMotion接收作業。
結語
想要使用vSAN 7.0 Update 1更新與改善設計的所有功能,其條件就是必須分別將vCenter Server 7.0與ESXi 7.0完成Update 1的更新,然後還要將vSAN中的磁碟格式升級至13.0版本。值得注意的是,如果vSAN磁碟格式是3.0版或更新的,則在版本升級的過程中無須進行現行檔案資料的移轉,因為過程中僅需要更新中繼資料。至於vSAN磁碟格式升級的方法,可以透過在vSphere Client網站的vSAN叢集選項中選取「Allow Reduced Redundancy」,或是經由執行vSAN專屬的RVC命令「vsan.ondisk_upgrade --allow-reduced-redundancy」來完成。而要注意的是,由於在vSAN 7.0 Update 1中已淘汰磁碟格式1.0版本,因此當系統偵測到還有已淘汰的磁碟格式本時,將會阻擋透過任何方式的升級程序。
<本文作者:顧武雄,Microsoft MVP 2004-2016、MCITP與MCTS認證專家、台灣微軟Technet、TechDays、Webcast、MVA特約資深顧問講師、VMware vExpert 2016-217、IBM Unified Communications/Notes/Domino/Connections Certified。>