KVM热迁移虚拟机报错

kvm动态热迁移时虚拟机报错

报错:

[root@kvm01 ~]# virsh migrate vm01 --live --unsafe qemu+ssh://192.168.124.243/system
错误:unable to connect to server at ‘kvm02:49152’: Connection timed out

原因及分析:

首先根据报错认为目标宿主机49152端口不可达,最后发现是host文件内配置的解析为 192.168.31.242 kvm02,而实际kvm02 的IP为192.168.124.242,所以解析时将"kvm02:49512"解析为了"192.168.31.242:49512" 错误的IP地址,所以才会出现目标不可达。

后面还会附加非hosts文件导致的问题解决方式

解决方式:

方式一:修改或添加hosts解析

1.打开编辑hosts文件

vi /etc/hosts

2.修改文件内容

目标IP	目标hostname
192.168.124.242	kvm02	//根据自己的IP进行更改,这里只做教学
192.168.124.241	kvm01	//两台互相加上对端IP解析,可以进行互相迁移

3.修改后验证是否解析成功

ping 	对端hostname
-- ping kvm02
//可以ping通代表hosts修改正确
方式二:关闭可能影响的服务

1.关闭防火墙

systemctl stop firewalld
systemctl disable firewalld	//关闭开机自启

2.关闭selinux防火墙

setenforce 0

永久关闭修改配置文件
vi /etc/
vi /etc/selinux/config
--SELINUX=enforcing	 //二者存一,另一个注释掉,这个是允许开机自启
--SELINUX=disabled	//禁止开机自启

3.关闭iptables防火墙

systemctl stop iptables 
方式三:通过放端口方式

CentOS6.* 的linux版本是自带iptables,可直接使用该方式。
CentOS7默认不自带iptables,如使用该方式,请手动安装iptables后使用。
需根据自身需要开放所需端口
1.通过防火墙firewalld方式

       firewall-cmd --zone=public --add-port=16509/tcp --permanent
  命令含义:
 --zone #作用域	public 表示作用域为公共的
 --add-port=16509/tcp  #添加端口,格式为:端口/通讯协议
 --permanent  #永久生效,没有此参数重启后失效

2.通过iptables方式
a)

#开放端口:49512
/sbin/iptables -I INPUT -p tcp –dport 49512 -j ACCEPT

b)

#开放端口:49512
-A INPUT -m state –state NEW -m tcp -p tcp –dport 49512 -j ACCEPT
service iptables restart

猜你喜欢

转载自blog.csdn.net/shoujoai/article/details/131539801