本文一開始先比較建構vCenter Server管理平台時採用External部署模式或Embedded部署模式到底有哪些差異之處,然後實作在多台vCenter Server環境中建立vCenter Embedded Linked Mode,以便在單一管理介面內同時管理多台vCenter Server運作環境,並示範如何利用指令來查詢PSC角色之間的同步狀態。
對於導入VMware vSphere虛擬化技術的企業和組織來說,vCenter Server管理平台的重要性不言而喻。過去,當vSphere管理人員在規劃和部署vCenter Server管理平台時,第一項規劃重點便是選擇vCenter Server作業系統類型,需要採用Windows Server或SUSE Linux作業系統。
第二項規劃重點則是選擇部署模式,如圖1所示,一般來說,中大型規模vSphere叢集環境,建議採用運作角色分離的「External Deployment」模式,也就是將PSC(Platform Services Controller)角色和vCenter Server角色分開部署及運作在不同主機上。倘若為小型規模vSphere叢集環境,則建議採用運作角色集中的「Embedded Deployment」模式,以便於管理與維護。
External部署模式—架構複雜不易維護
事實上,在過去的vCenter Server 5.x版本中,由於vCenter Server核心服務過多的關係,因此隨著企業建構的規模不斷成長時,必須將vCenter Server核心服務拆開運作,以便因應大型規模運作環境,導致vCenter Server服務可能必須分別運作在「六台」主機上,這包括了vCenter Server資料庫、vUM安全性更新管理員等等角色。
為此,從vCenter Server 6.0版本開始,核心服務集中為僅有vCenter Servre和PSC角色,所以企業組織只要將vCenter Server和PSC角色分別運作在「兩台」主機上,即可因應中大型規模運作環境的需求。
如上所述,在中大型vSphere叢集環境時,部署模式必須採用External Deployment運作模式,以便將vCenter Server和PSC角色分別部署在兩台不同的主機上,來因應中大型規模運作環境的需求。然而,考量企業組織正式營運環境的SLA水準,勢必需要為vCenter Server管理平台與PSC角色建立HA(High Availability)高可用性機制,以便因應故障損壞或災難事件的發生,如圖2所示。
同時,採用中大型vSphere叢集規模的企業,通常也有跨越全球多個站台的運作需求,因此vSphere管理人員必須規劃和部署多個站台以及vCenter Server和PSC的HA機制,並且搭配SSO Domain身分驗證機制,如圖3所示,以便vSphere管理人員能夠跨越多個站台,同時管理不同的vCenter Server和PSC運作架構。
如上所述,管理人員可以看到,隨著vSphere叢集運作規模逐漸擴大,同時導入HA高可用性機制和多個站台之後,除了整體vSphere運作架構複雜性不斷增加之外,還必須額外建立網路流量的負載平衡機制來確保HA高可用性機制正常運作,上述種種對於企業組織來說,不管在IT預算或維運人力上都逐漸形成困擾。
棄用External部署模式
VMware官方收集到大量使用者意見反應後,在2018年11月時正式宣布,External PSC部署模式將會被「棄用」(Deprecated),同時表示後續新版本的vCenter Server,將不會再有External PSC的部署選項。
轉換External至Embedded部署模式
那麼原本已經採用External部署模式、建立vSphere叢集環境的企業組織,應該如何轉換或遷移至架構簡單且容易維護的Embedded部署模式?事實上,當VMware宣布棄用External部署模式時,便同時發布了「Converge Tool」轉換工具。
在採用Converge Tool轉換工具之前,有相關注意事項必須考慮。首先,Converge Tools不支援Windows vCenter Server管理平台,同時採用的vSphere版本至少須為vSphere 6.5 Update 2d、vSphere 6.7 Update 1或更高版本,才能夠使用Converge Tool轉換工具將External部署模式轉換成Embedded部署模式,如圖4所示。
第二個注意事項是,當管理人員在執行轉換作業之前,必須先分析目前採用的SSO Domain中,有哪些VMware解決方案已經在SSO Lookup Service進行註冊的動作,例如NSX、SRM(Site Recovery Manager)等等,因為當部署模式轉換作業執行完成後,管理人員需要手動將這些解決方案重新組態設定到Embedded部署模式的vCenter Server中。
倘若管理人員無法確認哪些VMware解決方案已經向SSO Lookup Service進行註冊的話,可以開啟vCenter Server的SSH連線功能,採用管理者帳號登入後,執行「python /usr/lib/vmidentity/tools/scripts/lstool.py list --url http://localhost:7080/lookupservice/sdk」指令,即可顯示SSO Lookup Service的註冊服務清單。
此外,管理人員如果無法確認vCenter Server主機指向哪台PSC的話,可以分別透過兩種方式進行確認。首先,在vSphere HTML5 Client管理介面中,依序點選「vCenter Server > Configuration > Settings > Advanced Settings」項目,然後在vCenter Server進階組態設定清單中,查看「config.vpxd.sso.admin.url」欄位,便是vCenter Server主機指向的PSC角色主機資訊,如圖5所示。
管理人員若希望透過CLI指令模式查詢vCenter Server主機指向的PSC角色主機資訊,開啟vCenter Server的SSH連線功能並採用管理者帳號登入後,先執行「hostname」指令,確認目前的vCenter Server主機名稱,接著執行「/usr/lib/vmware-vmafd/bin/vmafd-cli get-ls-location —server-name localhost」指令,即可查詢vCenter Server主機指向的PSC角色主機資訊,如圖6所示。
完成上述前置作業後,管理人員就可以執行Converge Tool轉換工具,將External部署模式轉換為Embedded部署模式。
增強型Embedded部署模式—架構簡單易維護
從vSphere 6.5 Update 2版本開始,VMware在整合多台vCenter Server的「連結模式」(Linked Mode)機制中,開始支援運作架構簡單且容易維護的部署模式,稱之為「vCenter Embedded Linked Mode」或「vCenter with Embedded PSC in Enhanced Linked Mode」。
簡單來說,可以將多台採用Embedded部署模式的vCenter Server,在同一個網域中互相串聯起來,並且這樣的運作架構完全支援中大型運作規模。值得注意的是,vCenter Embedded Linked Mode運作架構不支援Windows vCenter Server。下列是vCenter Embedded Linked Mode的優點:
‧不需要External PSC角色,除了減少主機數量外,整體的部署和運作架構更為簡單。
‧透過File-Based機制,即可輕鬆達成vCenter Server的備份和還原的目的。
‧無須額外建置負載平衡機制,簡化整體架構中的HA高可用性機制。
‧支援vSphere SSO(Single Sign-On)機制,除了達成更高的管理靈活性之外,在單一vSphere SSO Domain中,最多可連結15台vCenter Server主機,如圖7所示,並且集中於單一管理視窗中。
‧支援VAMI(vSphere Appliance Management Interface)管理介面,搭配整合的UX Guidelines、HTML/CSS Framework、Angular等等技術,讓管理人員透過Clarity UI管理介面就能輕鬆維護vCSA資源管理工作任務。
實戰vCenter Embedded Linked Mode
在本文實戰環境中,將採用兩台vCenter Server管理平台,安裝最新的vCSA 6.7 Update1版本,實作vCenter Embedded Linked Mode,並且SSO Domain名稱為「vsphere.weithenn.org」,再搭配管理人員習慣的最新vSphere HTML5 Client管理工具。
部署第一台vCenter Server
事實上,在vCenter Embedded Linked Mode運作架構中,部署第一台vCenter Server管理平台的方式,與一般部署vCenter Server Embedded模式相同。因此這裡僅針對安裝流程中需要管理人員注意的地方進行說明。
在vCenter Server安裝流程中,於部署流程Stage1的第三個步驟,在「Select deployment type」頁面中,選擇採用「Embedded Platform Services Controller」模式進行vCenter Server的部署作業,如圖8所示。
在Stage1部署流程中,第一台vCenter Server的相關組態設定資訊,在本文實作環境中VM虛擬主機名稱是「vCSA01」、FQDN名稱為「vcsa01.vsan.weithenn.org」、而IP位址為「10.10.75.67」。
在Stage2部署流程中,由於屆時vCenter Embedded Linked Mode運作架構,為多台vCenter Server互相連結並同步相關資訊,因此須確保vCenter Server套用NTP時間校時機制。在第三個步驟SSO Configuration頁面時,選擇「Create a new SSO domain」項目,並採用「vsphere.weithenn.org」為SSO Domain名稱,如圖9所示。
部署完第一台vCenter Server後,確認是否能夠採用SSO Domain加上管理者帳號,登入vSphere HTML5 Client管理介面,本文實作環境採用「Administrator@vsphere.weithenn.org」登入後,建立資料中心名稱為「Datacenter01」,以及叢集名稱為「Cluster01」,如圖10所示,以便稍後與第二台vCenter Server運作環境,能夠比較差異並進行識別。
部署第二台vCenter Server
確認第一台vCenter Server順利運作,並且透過建立的SSO Domain登入vSphere環境後,接著便可以部署第二台vCenter Server管理主機。
同樣地,絕大部分的部署流程與組態設定,都與一般部署vCenter Server Embedded模式相同。因此僅說明安裝流程中需要管理人員注意的地方。第二台vCenter Server安裝流程中,在部署流程Stage1的第三個步驟,於「Select deployment type」頁面中,同樣選擇採用「Embedded Platform Services Controller」模式進行vCenter Server的部署作業。
在Stage1部署流程中,第二台vCenter Server的相關組態設定資訊,在本文實作環境中VM虛擬主機名稱為「vCSA02」、FQDN名稱是「vcsa02.vsan.weithenn.org」、IP位址為「10.10.75.68」,如圖11所示。
在Stage2部署流程中,首先確保第二台vCenter Server管理主機已經套用NTP時間校時機制,以避免在vCenter Embedded Linked Mode運作架構中,多台vCenter Server互相連結時,會因為主機時間不同步造成非預期的錯誤發生。
在第三個步驟「SSO Configuration」頁面時,選擇「Join an existing SSO domain」項目,並鍵入第一台vCenter Server管理主機資訊,以及所建立的SSO Domain資訊。在本文實作環境中,「Embedded PSC」欄位為第一台vCenter Server主機「vcsa01.vsan.weithenn.org」,至於「SSO Domain」名稱欄位,填入「vsphere.weithenn.org」即可,如圖12所示。
部署完第二台vCenter Server後,確認是否能夠採用同樣的SSO Domain加上管理者帳號,登入vSphere HTML5 Client管理介面,本文實作環境採用「Administrator@vsphere.weithenn.org」登入後,建立資料中心名稱為「Datacenter02」,以及叢集名稱「Cluster02」。
如圖13所示,可以在vSphere HTML5 Client管理介面中,同時看到兩台vCenter Server管理主機所管理的資料中心、叢集、資源集區、VM虛擬主機等等,表示vCenter Embedded Linked Mode已部署完成,並且依序點選「vCenter Server > Linked vCenter Server Systems」項目,可以看到兩台vCenter Server管理主機互相連結,當然後續若更多vCenter Server主機加入連結,便能夠看到更多台vCenter Server主機。
單台vCenter Server需要技術支援時
由於vCenter Embedded Linked Mode運作架構已經成形,所以在vSphere HTML5 Client管理介面中,可同時管理不同vCenter Server運作環境。然而,當某個vCenter Server和管理站台發生難以排除的故障事件,需要請求VMware技術支援時,該如何匯出個別vCenter Server主機資訊,以利VMware技術人員進行故障排除呢?
登入管理介面後,依序點選「Menu > Administration > Deployment > System Configuration」項目,即可看到「vCenter Embedded Linked Mode」中所有加入連結的vCenter Server主機,包括vCenter Server部署模式、版本、主機名稱等等資訊。
接著,只要點選希望匯出資訊的vCenter Server,再點選「EXPORT SUPPORT BUNDLE」項目,如圖14所示,在彈出視窗中勾選所要匯出的項目,即可下載vCenter Server主機技術支援資訊檔案(.zip)。
管理憑證
同樣地,在不同vCenter Server所管理的運作環境中,主機之間的連線和相關通訊,預設情況下採用不同的憑證,當管理人員需要管理個別vCenter Server憑證時,於登入管理介面後,依序點選「Menu > Administration > Certificates > Certificate Management」項目,然後填入希望管理的vCenter Server主機資訊,包括FQDN或IP位址、管理者帳號以及管理者密碼,並按下〔Login and Manage Certificates〕按鈕。
順利登入憑證管理頁面後,將會顯示目前登入的是哪一台vCenter Server主機,以及所採用的管理者帳號和憑證資訊,管理人員可以依據需求查看不同用途憑證的內容,或是針對安全性憑證進行管理作業,例如Renew或Replace的動作,如圖15所示。
查詢Embedded PSC同步狀態
除了在管理介面查看相關資訊外,如果管理人員希望透過CLI文字介面來查詢Embedded PSC同步資訊,可以透過SSH連線方式,登入同一個SSO Domain中的任意vCenter Server主機,即可進行相關資訊的查詢作業。
在本文實作環境中,透過SSH登入第一台vCenter Server主機(vcsa01.vsan.weithenn.org),通過身分驗證程序之後,鍵入「shell」才會切換成Bash文字管理模式,接著執行「vdcrepadmin -f showservers」指令,搭配連線主機名稱、管理者帳號、管理者密碼,就能夠顯示目前同一個SSO Domain中已經互相連結和同步PSC的vCenter Server主機資訊。
執行「vdcrepadmin -f showpartners」指令,則是顯示同一個SSO Domain,此台vCenter Server主機中,PSC角色的另一個合作夥伴資訊。由於在第一台vCenter Server主機執行,所以顯示的合作夥伴資訊為第二台vCenter Server主機(vcsa02.vsan.weithenn.org)。最後鍵入「vdcrepadmin -f showpartnerstatus」指令,顯示同一個SSO Domain中與其他PSC角色合作夥伴之間,PSC資料的「同步狀態」(Replication Status),其中「change number」欄位顯示的數值,表示「更新順序號碼」(Update Sequence Number,USN),也就是PSC角色之間的運作資訊的同步狀態,如圖16所示。
結語
透過本文的說明及展示,相信大家已經了解,在建構vCenter Server管理平台時,採用External和Embedded部署模式有哪些差異。值得注意的是,由於External部署模式已經正式棄用,所以管理人員在建立新的vCenter Server時,應採用架構簡單容易維護的Embedded部署模式才對。最後,實作演練如何在多台vCenter Server環境中建立vCenter Embedded Linked Mode,以便在單一管理介面中同時管理多台vCenter Server運作環境,並且透過指令查詢PSC角色之間的同步狀態。
<本文作者:王偉任,Microsoft MVP及VMware vExpert。早期主要研究Linux/FreeBSD各項整合應用,目前則專注於Microsoft及VMware虛擬化技術及混合雲運作架構,部落格weithenn.org。>