Openstack 之 安全關閉HA集羣


blob.png blob.png

 上面左邊是我的個人微信,如需進一步溝通,請加微信。  右邊是我的公衆號“Openstack私有云”,如有興趣,請關注。


前言

理論上,生產環境的OpenStack集羣儘量不要關閉,但由於某些原因你肯定會遇到需要關閉整個集羣的,如計劃中的機房斷電,版本升級等。特別是物理斷電要特別謹慎,因爲會導致磁盤故障,以及數據狀態的混亂,從而導致各類問題的出現。我經常遇到的問題是,當物理斷電後,mariadb galera 啓動失敗,這個組件可是核心組件,數據庫起不來,那麼整個openstack集羣就停擺了。

一般關閉的順序是這樣的,先關閉OpenStack上的虛擬機,接着關閉計算節點、Ceph節點、控制節點。如果用了“超融合架構”,將Ceph和Compute放在一起了,關機計算節點之前 ,需要先執行ceph osd set noout,才能關閉。

步驟

1、通過Horizon web管理界面或者命令行關閉虛擬機

注意:請確認虛擬機之間是否有特殊的關閉順序要求。

 

2、關閉Ceph OSD 節點

設置noout標記,防止因爲Ceph節點斷電引起重平衡

a、登陸到Controller節點或者Ceph OSD節點,執行:

ceph osd set noout

b、確認集羣狀態,可以看到noout 標記

# ceph -s
    cluster 7eb2b84a-c73e-4050-b735-3ba643ffc603
     health HEALTH_WARN
            noout flag(s) set

 

3、關閉計算節點

登陸每一個計算節點,執行:

poweroff

 

4、登陸到每個Ceph OSD節點,執行:

poweroff

5、關閉控制節點

假設你有3個控制節點(標配就是3個),首先判斷哪一臺主機上擁有keepalive主IP,首先關閉其他2臺控制節點,最後關閉擁有keepalive主IP的控制節點,並且記住關閉的順序,後面啓動的時候需要相反的順序啓動

(1)首先判斷哪一臺主機上擁有keepalive主IP,假設192.168.1.140是HA地址,用命令  ip a |grep 192.168.1.140 判斷,假設controller01擁有keepalive主IP

(2)登陸到其他兩臺控制節點controller02節點和controller03節點,分別執行:

poweroff

每個節點關閉完成,多等幾分鐘,使集羣有充足的時間在剩餘的控制節點之間重新分配服務。

(3)最後登陸到controller01節點,執行:

poweroff

 

至此,集羣已經安全關閉。

重啓集羣過程正好相反,先啓動控制節點,再啓動Ceph節點,最後啓動計算節點,啓動計算節點後再登錄web管理界面將相應的虛擬機啓動。

需要特別注意的是,啓動控制節點的時候,按照關閉相反的順序進行啓動。





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章