前一篇介绍了在 centos 6 上安装KVM虚拟机和virsh相关命令,这里再介绍一下如何从远程管理节点上虚拟机,就是登录到远程服务器上的virsh命令行,


2台主机:

node4: 192.168.1.166    

node5: 192.168.1.143


node4 作为远程libvirt的服务器,上面有已经创建的虚拟机,现在node5上通过以下2种方式管理远程服务器上的虚拟机:


  1. 通过qemu+ssh方式

  2. 通过qemu+tcp方式


node5上安装libvirt及相关工具包,我这里安装了这些,

#yum groupinstall "Virtualization"
#yum install libvirt libvirt-python python-virtinst virt-viewer

通过qemu+ssh连接方式比较简单,只需node5能用ssh远程访问node4即可,

命令如下:

#virsh -c qemu+ssh://root@192.168.1.166/system

如果2个节点设置了互信,免密钥登录,可直接执行virsh相关命令,

[root@node5 ~]# virsh -c qemu+ssh://root@192.168.1.166/system list
 Id    名称                         状态
----------------------------------------------------
 3     vm01                           running


下面介绍通过qemu+tcp方式登录远程节点的virsh:

node4上

修改/etc/sysconfig/libvirtd,开启以下2个配置项:

[root@node4 ~]# egrep -v "^#|^$" /etc/sysconfig/libvirtd
LIBVIRTD_CONFIG=/etc/libvirt/libvirtd.conf
LIBVIRTD_ARGS="--listen


修改配置文件,

vim /etc/libvirt/libvirtd.conf
listen_tls = 0
listen_tcp = 1
tcp_port = "16509" 
listen_addr = "0.0.0.0"
auth_tcp = "none"

重启libvirtd并查看监听的端口,

# /etc/init.d/libvirtd restart
# netstat -anltp|grep 16509
tcp   0      0 0.0.0.0:16509    0.0.0.0:*      LISTEN      28843/libvirtd


node5上远程访问(需要确保可以访问node4的16509 tcp端口):

[root@node5 ~]# virsh -c qemu+tcp://192.168.1.166/system list
 Id    名称                         状态
----------------------------------------------------
 3     vm01                           running