長年從事企業IT技術顧問以來,筆者發現許多IT人員都有一個共同的盲點,那就是只顧著解決用戶的問題而忽略了自身的問題。舉例來說,經常會設想如何讓應用程式與服務的功能更強、速度更快,但卻忘了與切身相關的基礎建設與管理工具的重要性,這就好像一棟豪華的大樓蓋在不穩固的地基之上,隨便來個天災或人禍都可能使其崩塌,到頭來要出來面對與扛責任的還是IT人員。像這樣的真實案例在許多學術所領導的單位層出不窮,因為它們只唯一重視研發成果,而導致在系統面與管理面的所學相當薄弱。
IT基礎建設與管理工具是用戶所看不到的,但它卻是非常重要。要知道讓全球一切雲服務運行順暢的幕後,就是一群日以繼夜負責維運的工程師,倘若沒有一個穩固的基礎架構以極易於使用的管理工具,即便有再偉大的應用與服務都難以運行。然而,採用私有雲端架構的目的,強調的不外乎是讓應用程式與服務的部署更容易、運行不間斷、速度更加快、安全更牢固,但要記得一開始就選對部署雲端架構的虛擬化平台,對於IT人員更是極為重要,否則未來將可能陷入一步錯步步錯的窘境。
VMware vSphere 7.0是雲基礎平台的極佳選擇,可以輕易解決上述應用與服務的四大需求,且通通透過vSphere Client就能夠完成相關功能的啟用與配置。只是別忘了,在全心全意發揮vCenter Server的各項功能來保護ESXi主機中運行的虛擬機器與應用服務之時,記得也要把vCenter Server納入受保護的對象中,這包括了備援、備份以及更新,在此稱它為vCenter Server的鐵三角計畫。唯有落實鐵三角計畫,才能讓vSphere雲架構的運行真正獲得全面的保障,接下來就以實戰講解方式引領大家完成這項任務。
vCenter HA準備工作
根據vCenter Server的鐵三角計畫,對於現有運行中的vCenter Server 7.0系統,首先要解決的是其熱備援問題,讓它可以像其他重要的虛擬機器一樣有如受到vSphere HA般的保護,達到故障發生時的自動備援上線機制。
vCenter HA的運作方式是藉由三種不同的vCenter Server伺服器角色來組合完成,分別是主動節點(Active Node)、被動節點(Passive Node)以及見證節點(Witness Node)。其中見證節點便是讓自動容錯備援機制能夠成功運行的關鍵角色,而主動節點與被動節點則會自動完成雙方PostgreSQL資料庫的複寫同步,以及組態設定檔的同步,以便隨時可以經由容錯機制來代替另一方的運行。
啟用vCenter HA功能的方法相當簡單,全都只要在vSphere Client網站中操作就可以完成,但在開始動手之前有幾項必要條件需要預先準備好,分別說明如下:
‧vCenter Server必須是採用靜態IP配置。
‧為vCenter Server虛擬機器所在的ESXi主機,以及準備用來運行被動節點、見證節點的ESXI主機皆安裝好一張專屬網卡,以作為vCenter HA連接網路的使用。
‧vCenter Server必須已啟用SSH服務功能,若過去在部署時沒有啟用,也可以到vCenter Server Appliance網站上進行啟用。
‧成為主動節點的vCenter Server必須是連接管理自己所屬的ESXi主機和本身的虛擬機器。
‧後續連接vCenter HA網路的三個節點皆必須採用靜態IP位址配置。
vCenter HA網路配置
在幫vCenter Server虛擬機器所在的ESXi主機,安裝好專屬用來處理vCenter HA網路流量的網卡後,接下來建立一個相對應獨立的vSwitch來運行vCenter HA網路。如圖1所示,在這個範例中可以看見目前僅有一個vSwitch0是作為虛擬機器與運行管理的基礎網路,因此點選「新增網路」超連結。
在「選取連線類型」頁面中,由於想要建立的是負責處理虛擬機器流量的網路,因此選取「標準交換器的虛擬機器連接埠群組」,再按下〔NEXT〕按鈕。如圖2所示,將來到「選取目標裝置」頁面,此時不選取現有的標準交換器,而是改選「新增標準交換器」,以便讓vCenter HA的複寫同步以及監視的網路流量能夠獨立運行。按下〔NEXT〕按鈕,繼續後面的設定。
在「建立標準交換器」頁面中,預設不會有任何已指派的介面卡。如圖3所示,點選〔+〕新增小圖示加入尚未被指派的網卡,也就是在前面介紹中所預先準備好的實體網卡,讓它成為作用中的介面卡,再按下〔NEXT〕按鈕。
來到「連線設定」頁面後,如圖4所示,輸入一個易於識別的網路標籤(例如vCenter HA Network),以防未來被不同用途需求的虛擬機器配置所使用。至於VLAN識別碼,可以選擇不輸入或使用一組專屬的識別碼來運行,然後按下〔NEXT〕按鈕。接著,在「即將完成」頁面中確認上述步驟設定無誤,再按下〔FINISH〕。建立好此虛擬機器網路之後,將會看到多了一個vSwitch1來供它與實體介面卡的連接。最後,記得在其他兩台準備好的ESXi主機上也完成同樣的設定。
啟用vCenter HA功能
在完成vCenter HA網路的準備後,接下來就可以啟用vCenter HA的熱備援功能。如圖5所示,在vCenter Server節點的「設定」→「vCenter HA」頁面中,按下〔設定VCENTER HA〕按鈕。
如圖6所示,在「資源設定」頁面中先為主動節點設定好vCenter HA網路,然後勾選「自動建立被動和見證節點的複製品」設定,再按下位於「被動節點」區域內的〔編輯〕按鈕。
將開啟被動節點資源設定的「名稱和資料夾」頁面,在此設定被動節點虛擬機器的顯示名稱,並且選擇置放的資料夾位置,再按下〔下一步〕按鈕。如圖7所示,接著在「計算資源」頁面中選取將用來運行被動節點虛擬機器的ESXi主機,請勿挑選與其他兩個節點相同的ESXi主機,以免增加高可用性的運行風險。設定完成後,按下〔下一步〕按鈕。
在「儲存區」頁面中,建議選擇所在ESXi主機的本地儲存區即可,切勿挑選與其他兩個節點相同的儲存區,然後按下〔下一步〕按鈕。在「網路」頁面中,則選擇所要使用的管理網路以及vCenter HA網路,如圖8所示。最後,在「檢閱」頁面內確認上述步驟設定無誤後,按下〔完成〕即可。
完成被動節點資源設定後,繼續點選「見證節點」區域內的〔編輯〕按鈕。在開啟見證節點資源設定頁面中,同樣依序完成名稱和資料夾、計算資源以及儲存區的設定,其中計算資源和儲存區的設定也請勿與其他兩個節點設定相同。如圖9所示,在「網路」頁面中,則會發現僅須選取「vCenter HA網路」設定,這是因為它僅是用來監視主動與被動節點的運行,以便在任一節點發生故障而無法正常連線時,自動執行容錯移轉任務。
在完成見證節點資源設定後,便會正式進入vCenter HA的部署任務,過程中將會看到虛擬機器的複製進度,以及部署vCenter HA叢集的總體進度,而在尚未完成整體任務之前,僅會看到作用中的主動節點呈現「已啟動」狀態,其餘兩個節點則會呈現為「無法使用」。如圖10所示,則是一個已成功完成vCenter HA部署的顯示狀態,可以選取任一節點來檢視IP設定與虛擬機器設定。以虛擬機器設定來說,就能夠檢視到所屬的vCenter Server管理節點、資料中心、叢集、主機、資料存放區以及vCenter HA網路。
此外必須注意的是,只要部署vCenter HA的過程沒有完整執行成功,便會出現類似如圖11所示的「vCenter HA具有無效的組態」訊息,其中最有可能的原因就是網路連線問題。以這裡所模擬的測試環境來說,當主機之間採用無線網路進行連線時,在進入到複製虛擬機器的階段,便可能因網路頻寬問題而導致中斷,一旦改實體網路並重新執行部署便能成功。無論如何,在這種狀態下,便需要按下〔移除VCENTER HA〕按鈕來重新執行部署任務。
變更vCenter HA運行狀態
在vCenter HA正常運行的狀態下,主動節點與被動節點之間的資料庫以及組態設定檔案將會進行同步與複寫,並且會在主動節點發生故障時自動進行角色的交換,然後再次恢復上線服務。然而,在某些時候可能需要將vCenter HA設定進入維護模式,例如進行vCenter Server的升級或是硬體方面的維護,以便讓主動節點與被動節點不會在此期間自動進行角色交換,即使被動節點與見證節點無法正常連線,主動節點的服務仍可繼續正常運行。
如何變更vCenter HA的運行狀態呢?很簡單,只要在vCenter Server管理節點的「設定」→「vCenter HA」頁面中按下〔編輯〕按鈕,即可在「編輯vCenter HA」頁面中,選取「維護模式」並按下〔確定〕按鈕,如圖12所示。此外值得注意的是,除了維護模式外,還可以依照實際現況的需要來選擇關閉或移除vCenter HA配置,前者會繼續保存目前的設定但不提供複寫與故障移轉功能,後者則是恢復原有單一vCenter Server的服務模式。
解決vCenter HA叢集主機部署問題
當部署vCenter HA的主動節點設定,在剛完成「網路」設定並按下〔下一步〕按鈕時卻出現錯誤訊息,如圖13所示,在此以原文的「Resource pool and host do not belong to the same compute resource.」訊息截圖來加以呈現。會出現此訊息的原因是目前vCenter Server所在的ESXi主機,並未與其他兩個節點的ESXi主機位在相同的叢集中,怎麼辦呢?
此時若想將vCenter Server所在的ESXi主機加入現行的叢集中,那肯定是行不通的,原因是一旦把此ESXi主機加入叢集中,該主機便須要進入維護模式的狀態下才能加入到現行叢集的配置,而主機在正式進入維護模式狀態之前,所有現行於此主機中運行的虛擬機器都得預先完成移轉或關機才可以,然而除非還有第二部vCenter Server正在運行中,否則是不能夠對於現行的vCenter Server Appliance虛擬機器進行關機的,因為只要一關機,vSphere Client也就無法繼續進行操作。
其實解決此問題的方法相當容易,只要採用複製虛擬機器的方式,將現行的vCenter Server Appliance虛擬機器先複製到叢集中選定的ESXi主機中運行,再將原vCenter Server Appliance虛擬機器關機與刪除,即可在不停機的狀態之下順利完成新增至叢集的完整設定,接下來就來學一下整個操作過程的講解。
首先,在vCenter Server Appliance虛擬機器的「動作」選單中,點選【複製】子選單中的【複製到虛擬機器】,來開啟「複製現有的虛擬機器」頁面。如圖14所示,在「選取名稱和資料夾」頁面內先輸入一個暫時使用的虛擬機器名稱,並選擇所要置放的資料夾位置,然後按下〔NEXT〕按鈕繼續。
如圖15所示,進入「選取計算資源」頁面後,選取一台還有充足資源來運行vCenter Server Appliance虛擬機器的ESXi主機,如果目標叢集已啟用了全自動的DRS功能,則可以考慮直接選擇叢集,選取後只要在下方出現了「相容性檢查成功」訊息即可。再按下〔NEXT〕按鈕,來到「選取儲存區」頁面,建議選擇目標ESXi主機的本地儲存區,並且選取虛擬磁碟格式為「與來源格式相同」。連續按下〔NEXT〕按鈕,到「即將完成」頁面中,確認上述步驟的設定無誤後按下〔FINISH〕按鈕。
完成複製vCenter Server虛擬機器後,開啟所在ESXi主機(ESXi03)的VMware Host Client網站,然後在虛擬機器的頁面中,將已關機的vCenter Server虛擬機器刪除。緊接著,再到新複製的vCenter Server虛擬機器所在的ESXi主機(ESXi01),如圖16所示,點選「動作」選單中的【重新命名】,將此虛擬機器更名為原來的顯示名稱,然後點選「開啟電源」圖示,即可恢復vCenter Server的運行。
接下來,必須回到vSphere Client叢集的配置頁面。如圖17所示,在「Cluster」→「設定」→「快速入門」頁面中,可以發現目前的叢集主機只有兩台(ESXi01與ESXi02),在此必須讓已經沒有運行原vCenter Server虛擬機器的ESXi03主機加入叢集中,才能執行後續vCenter HA的部署任務,因此按下〔新增〕按鈕。
在「新增主機」頁面中,可以直接從「現有主機」清單中來選取,然後按下〔下一頁〕按鈕。來到「主機摘要」頁面,如圖18所示可以查看到所選取主機的網路、資料存放區以及已開啟電源的虛擬機器等相關資訊,然後按下〔下一頁〕按鈕。在「即將完成」頁面中,則會看到系統已提示在移至叢集之前,主機將會進入維護模式。最後,按下〔完成〕按鈕即可。
當再次回到「Cluster」→「設定」→「快速入門」頁面,將會看到在「新增主機」區域內顯示「主機3(1未設定)」訊息。點選「設定主機」區域中的〔設定〕按鈕,如此一來系統就會把現行的叢集設定,套用在這台新增的ESXi主機配置中。
如圖19所示,便是完成了三台ESXi主機於相同叢集的結果頁面,而主要節點的vCenter Server虛擬機器也已改由ESXi01主機來運行。在這個架構下,便可以很快速地完成vCenter HA功能的啟用。
待續
由於篇幅所限,下集文章將接續說明vCenter HA容錯移轉、關於vCenter HA降級狀態問題、如何手動設定vCenter HA、備份vCenter Server、還原vCenter Server,以及更新vCenter Server。
<本文作者:顧武雄,Microsoft MVP 2004-2016、MCITP與MCTS認證專家、台灣微軟Technet、TechDays、Webcast、MVA特約資深顧問講師、VMware vExpert 2016-217、IBM Unified Communications/Notes/Domino/Connections Certified。>