这个文档是在刚刚在生产环境部署完成的时候,由于管理节点和网络节点在同一台物理机上,并且是单节点,另外,没有使用共享存储,存在单点故障,因此,需要考虑管理节点物理机宕机的情况下,如何迅速保障计算节点上虚拟机正常运行的问题。

    主要思路是利用计算节点上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工具重启。


   



转载于:https://blog.51cto.com/yuweibing/1656459