上面左邊是我的個人微信,如需進一步溝通,請加微信。 右邊是我的公衆號“Openstack私有云”,如有興趣,請關注。
這個文檔是在剛剛在生產環境部署完成的時候,由於管理節點和網絡節點在同一臺物理機上,並且是單節點,另外,沒有使用共享存儲,存在單點故障,因此,需要考慮管理節點物理機宕機的情況下,如何迅速保障計算節點上虛擬機正常運行的問題。
主要思路是利用計算節點上kvm自帶的虛擬機管理工具virsh,直接在虛擬機上增加一塊虛擬網卡,並且將這塊虛擬網卡橋接到計算節點的br-ex網橋上,注意,br-ex網橋必須是直接連接到業務網絡的,如果名稱不一樣,請按照實際情況進行修改,必須是接入能夠連接到業務網絡的虛擬網橋上。接入到業務網絡的網橋後,再通過vnc接入到虛擬機,修改新增網卡的IP地址爲業務網絡的IP地址。好了,接下來就讓我們開始動手,以下的命令都是在root賬號下執行的:
首先,需要具備接入虛擬機的條件,即需要能夠遠程桌面,安裝vnc和xauth:
yum install -y tigervnc xauth
使用virsh工具軟件增加一塊網卡,直接連接到br-ex 執行下面的命令:
virsh edit instance-00000002
其中instance-00000002 是需要處理的虛擬機名稱。
virsh的命令使用可以直接使用virsh -h查看幫助。
增加一塊網卡。爲了便於查看,在現有<interface>... </interface>的位置下面增加下面的配置:
<interface type='bridge'> <source bridge='br-ex'/> <virtualport type='openvswitch'> </virtualport> </interface>
(具體xml格式可以參考:http://libvirt.org/formatdomain.html#elementsNICSVirtual)
關閉虛擬機電源:
virsh destroy instance-00000002
啓動虛擬機:
virsh start instance-00000002
使用virsh和vnc連接虛擬機:
virsh vncdisplay instance-00000002
:0
vncviewer :0
進入虛擬機,將第二塊網卡的地址改爲業務地址
至此,應急處理操作就這樣完成了。如果控制節點恢復了,後面需要還原配置,按照下面的方法進行恢復:
虛擬機恢復:
將虛擬機內部網絡設置復原,具體參考上面vnc接入虛擬機的方法進行操作。
執行下面的命令修改配置:
virsh edit instance-00000002
將上面文檔中臨時增加的interface部分去掉。
最後,通過管理界面啓動虛擬機,或者通過上面的virsh工具重啓。