2020年8月19日 星期三

vC,佈署 vCenter v6.7u3g HA 手動

vCenter HA的建置
有 自動 和 手動 兩種建置方式
自動建置vCenter HA應該是大家最常使用的建置方式


情境
但可能在某些情境下
需要手動建置vCenter HA
至於是哪些情境需要手動
我也不知道,就自動的方式HA建不起來,就試試手動吧~

HA差異
vCenter HA和vSpehre HA
是不一樣層級的,各位請別搞混囉
vCenter HA 是 Application層級的,保護的對象是 vCenter 
vSphere HA 是 esxi 層級的,保護的對象是 esxi 中的 VM

網路資源
自動建置vCenter HA的不少
但有寫手動建置 vCenter HA 的幾乎沒有
有看過國外某網友寫的手動建置vCenter HA
但是在關鍵操作的地方,竟然連截圖也沒有就用描述的方式草草帶過...>_<
LAB後才知道,這個帶過,竟然是個崁~
總之~只好自己LAB了

開場白
開頭老話一句
設定有風險,設定前請詳閱設定說明書

vCenter HA的網路限制
1. Active, Passive, Witness的IP都必須為Static IP
2. vCenter HA的網路 不能和Mgmt網路相同
3. Active, Passive, Witness 之間的延遲不能超過10ms毫秒
4. 不可設定Cluster網路的Gateway

vCenter HA的進階設定(手動)
其實官網有寫,只是你一定會遇到問題

好吧~
我知道各位一定不會去看 使用說明書 XD~
且手動建置 vCenterHA 的過程,一定也不是各位想像中的簡單
這個不簡單,可能是出在 HA的限制,也可能是對 HA 使用的IP 參數設定的概念
經過多次反覆的LAB,我是覺得手動建置真的也蠻容易的啦
總之,那我們就開始囉

一、架構 LAB 環境
二、設定 vCenter HA 
三、複製 vCenter 成為 Passive 角色
四、複製 vCenter 成為 Passive 角色-自訂規格
五、複製 vCenter 成為 Passive 角色-開機並觀察
六、複製 vCenter 成為 Witness 角色
七、複製 vCenter 成為 Witness 角色-自訂規格
八、複製 vCenter 成為 Witness 角色-開機並觀察
九、繼續 vCenter HA 設定
十、驗證 vCenter HA
其他、修改 vCenter 角色的 IP
其他、透過 CLI 手動建立 vCenter HA

一、架構 LAB 環境
我的LAB環境
其實上層還有NSX、vCD...等等
但此LAB用不到,單純聚焦在vCenter就好
在一個有vCenter的 vSphere 環境,來手動建置 vCenter HA

LAB環境參數配置
如下表

先有個概念
當 vCenter HA 建好後
在有提供 vCenter 服務的那台 VM身上,必定會有 vCenter 的IP
也即為 Active角色,反之,Passive角色的那台
雖然從VM右鍵點編輯內容去看
vNIC0(Mgmt), vNIC1(VCHA)都有接上去,並有啟用
但若你到Passive的CLI去下ifconfig指令
就會發現Mgmt那個interface沒起來,這是正常且合邏輯的HA架構


二、設定 vCenter HA 
登入到vCenter的Flash介面
到vCenter層級
>設定>vCenter HA>設定

選擇【進階】


輸入 Passive和 Witness節點的IP資訊後
Pssive Node
192.168.13.68, 255.255.255.0

Witness Node
192.168.13.69, 255.255.255.0

再按一下【進階...】

再確認一下
Passive Node的 vNIC1(VCHA)的IP資訊
勾選【容錯移轉後覆寫管理網路】
然後輸入 若切換後管理網路(vNIC0)的IP資訊,就是Active Node的管理IP


再確認一下資訊
按下【下一步】

設定到這,我都驚呆了
按下【完成】之前,必須要複製好 Passive 和 Witness 
所以先不要按【完成】

設定上若跳出
"管理介面(NIC0)IP位址未對應到vCenter Server PNID 的訊息"
PNID即對應的FQDN的網路位置
可能是IP設錯,或是DNS設錯
可以透過連到vCenter CLI去查看正確的PNID所對應的IP是什麼
#shell
#/usr/lib/vmware-vmafd/bin/vmafd-cli get-pnid --server-name localhost

再查nslookup就可以知道
目前vCenter的IP
#nslookup
#vc67.vmlab1.net


三、複製 vCenter 成為 Passive 角色
另外開Browser,登入Web Client
去複製vCenter成為Passive角色
一定要開Flash版的Web Client

在vCenter上按滑鼠右鍵
選擇【複製】,再選擇【複製到虛擬機器

給個新VM一個名稱
我是命名為Lab1_vCenter67u3g-P

因為我有開DRS
所以直接選 Cluster 層級即可

我的LAB環境
儲存部分用的是Share 的 NFS


四、複製 vCenter 成為 Passive 角色-自訂規格
這邊是最重要的地方
按照VMware官網KB所描述
要勾選【自訂作業系統】、【建立之後開啟虛擬機器電源】這兩項
https://docs.vmware.com/tw/VMware-vSphere/6.7/com.vmware.vsphere.avail.doc/GUID-368D743A-33D3-47D8-B084-CEDFC02F44FB.html#GUID-368D743A-33D3-47D8-B084-CEDFC02F44FB

點一下【建立新規格】的icon

注意喔
一定要用flash版的 Web Client 才會出現這個icon
國外網站沒有寫這段,VMware 官網 KB也沒註明這個
讓我足足找了一個整天的 icon
vCenter都重練了幾次,還原快照多次...
一度強烈懷疑KB寫錯了,正準備要放棄的時候
想說用Flash介面登入試試
果然~是介面顯示的問題 >__<
VMware你就不能在KB上好好註明一下嗎~怒啊~

雖然說
沒有透過 自訂規格 應該也能能把vCentet HA手動建起來
但複雜度就高了一些

先給這個規格
一個名稱

輸入這個Passive角色VM的相關資訊
輸入名稱: vc67 (hostname, 要和 Active 的名稱一樣 )
網域名稱: vmlab1.net

vCenter HA 的 三個角色
都要是相同的時區,選擇【台北】

設定IP
這個Passive角色會有2個vNIC
先編輯vNIC1,即指的是第1張網卡(Mgmt)

IP位址: 192.168.11.67
子網路遮罩: 255.255.255.0

再來編輯
NIC2網卡,即指的是第2張網卡(VCHA)

IP位址: 192.168.13.68
子網路遮罩: 255.255.255.0

設定完成後【下一步】

輸入DNS
主要DNS: 192.168.11.53 (必須確實存在,且可以解析剛剛vc67的FQDN喔)
DNS搜尋路徑: vmlab1.net

【完成】規格的新增

選到剛剛所建好的 自定規格

按下【完成】

複製的過程有點久
試過幾次,複製都是失敗,且會出現以下訊息

五、複製 vCenter 成為 Passive 角色-開機並觀察
但再觀察此VM
應該是已經複製完成
不知原因,出現和esxi主機連結錯誤
可是esxi活得好好的啊~

那既然
官網KB有說要開機
且查看目前此VM
任何可以對正常VM所做的操作,這個VM也都可以做
那麼,就讓他開機吧~


開機後
我們開console進去

透過這個Passive去ping Active角色的 vNIC1(VCHA)看看
並查看Passive上的vNIC狀態
看起來管理IP(192.168.11.67)現在不在這台Passive角色的身上(正常)
#ping 192.168.13.67
#ifconfig | grep "inet addr"

這樣我還是不放心
到底是不是因為Active不在這台VM身上
還是根本就沒有設定好
我們再來查看一下網卡的設定檔
#cd /etc/systemd/network
#ls -al (看到有2個設定檔,就安心了)
#cat 10-eth0.network.manual
#cat 10-eth1.network



六、複製 vCenter 成為 Witness 角色
這部分和複製成Passive角色的 操作
大致上都相同

但在這裡要特別注意一下
要勾選【自訂作業系統】、【建立之後開啟虛擬機器電源】喔


七、複製 vCenter 成為 Witness 角色-自訂規格
請勾選
按下【新增自訂規格】的icon

這邊輸入Witness角色的資訊
照VMware官方KB描述
Witness角色的電腦名稱可以是另外的和Active不一樣的
另外,在LAB環境我並未對vc67w做DNS的正反解析紀錄(可能是非必要條件)
電腦名稱: vc67w
網域名稱: vmlab1.net

網路設定的部分
照VMware官方KB
並未對vNIC1(Mgmt)有設定上的說明
在LAB環境設定,我就忽略他~應該不重要,也是非必要條件吧~

NIC2(VCHA): 192.168.13.69

NIC1(Mgmt): 不設定不用理他

主要DNS: 192.168.11.53
DNS搜尋路徑: vmlab1.net

自訂規格,完成

複製VM,設定完成


若出現什麼連線遠端主機錯誤的訊息
可以觀察一下,Witness角色的VM是否已經覆置完成
若已經完成就手動將VM開機吧~
我在LAB環境,停在99%就跳錯誤了


八、複製 vCenter 成為 Witness 角色-開機並觀察
和Passive一樣
雖然複製跑到99%沒有完成,但還是可以對Witness做操作
就把他開機吧~


再到console去查看網卡狀態
#shell
#cd /etc/systemd/network
#ls -al
#cat /etc/10-eth1.network (只看這個if,因為Witness角色只用到這個interface)


透過Witness角色
去ping看看Active和Passive的VCHA的IP是否會通
正常應該都要能ping通
#ping 192.168.13.67 (ping Active)
#ping 192.168.13.68 (ping Passive)


九、繼續 vCenter HA 設定
角色回到Web Client
繼續設定vCenter HA

自動就會幫你選【進階】

連線IP的設定
這階段也不用再設定
反覆的LAB數次後,我個人覺得
當你第一次進行vCenterHA設定時,vCenter的底層應該就被修改
所以他才會提示你在完成vCenter HA前,必須要複製好另外2個角色
即當你設定完自訂規格的IP後,開始進行複製VM時
這些在底層的修改參數就被一併帶過去成為Passive、Witness角色
若這時,你雖然將2個角色複製完,但取消了 vCenter HA設定
就是透過vCenter HA頁籤中的【移除 vCenter HA】時
vCenter底層的參數就會恢復原狀,而這個參數你是看不到的

完成

task會看到 vCenter HA 叢集 設定完成

這時候
我們就回到 HTML介面的 Web Client看一下vCenter HA的狀態


十、驗證 vCenter HA
切換一下測試看看


容錯移轉
是需要時間的

移轉好後
再來觀察一下
現在Active在哪一台上
現在已經切到 192.168.13.68 這台囉
搞定~收工


其他、修改 vCenter 角色的 IP
在手動建置vCenter HA的時候
其實都不需要登入底層CLI的
但有時候可能在自訂規格設定IP的時候
輸入錯誤的資訊
例如我在某次LAB時
誤將Passive的vNIC0 (Mgmt IP)打成 192.168.11.68
正確應該是和 Active的 192.168.11.67 一致才對
且也已經複製完了,執行過vCenter HA就會跳出以下訊息

這時候
為了避免浪費時間,重新複製
所以就會直接開 Passive 的 Console 
登入去修改 IP
改完後,記得重新啟動一下 網路服務
#systemctl restart systemd-networkd


其他、透過 CLI 手動建立 vCenter HA
意外得到這個URL
國外網友透過CLI去手動設定vCenter HA
https://davidstamen.com/2016/11/21/vsphere-65-vcha-issues/


沒有留言:

張貼留言