ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

KVM 虚拟机冷/热迁移

2020-07-23 20:31:59  阅读:308  来源: 互联网

标签:data 虚拟机 KVM kvm01 kvm02 centos7.0 迁移 root


  • 在进行迁移之前需要准备一台与KVM01配置相同的机器KVM02,部署好kvm环境。

  • 设备:
       192.168.22.136   kvm01
       192.168.22.137   kvm02

一、虚拟机冷迁移

1、在kvm01、 kvm02 中安装 kvm 组件

[root@kvm01/2 ~]# yum install libvirt* virt-* qemu-kvm* -y

2、配置桥接网络

[root@kvm01/2 ~]# virsh iface-bridge eth0 br0

3、将虚拟机kvm01关机,导出配置文件

[root@kvm01 ~]# virsh dumpxml centos7.0 > centos7.0.xml

4、将虚拟机配置文件传输到kvm02上

1、传输配置文件
[root@kvm01 ~]# scp -rp  centos7.0.xml  192.168.22.137:/root/
2、传输磁盘文件
[root@kvm01 ~]# scp -rp  /var/lib/libvirt/images/centos7.0.qcow2 192.168.22.137:/var/lib/libvirt/images/

5、kvm02中导入配置文件

[root@kvm02 ~]# virsh define centos7.0.xml

6、启动虚拟机

[root@kvm02 ~]# virsh start centos7.0

7、查看虚拟机状态

[root@kvm02 ~]# virsh list --all 
 Id    名称                         状态
----------------------------------------------------
 1     centos7.0                          running

  至此,完成了一次KVM冷迁移

二、virt-manager 和 kvm 虚拟机热迁移

  • 实现kvm虚拟机热迁移核心:共享存储,在这里使用的是NFS共享存储。

1、NFS(存储端kvm01)

[root@kvm01 ~]# vim /etc/hosts
192.168.22.136  kvm01
192.168.22.137  kvm02
​
[root@kvm01 ~]# yum -y install nfs-utils rpcbind   #安装nfs服务
[root@kvm01 ~]# mkdir /data                        #创建共享文件夹
​
[root@kvm01 ~]# vim /etc/exports
#不压制root权限(当client端使用root挂载时,也有root权限),使该网段共享该文件夹
/data    192.168.22.0/24(rw,sync,no_root_squash)
[root@kvm01 ~]# systemctl start nfs-server
[root@kvm01 ~]# systemctl enable nfs-server
[root@kvm01 ~]# exportfs -v
/data     192.168.22.0/24(rw,wdelay,no_root_squash,no_subtree_check,sec=sys,rw,secure,no_root_squash,no_all_squash)

2、nfs 客户端(kvm02)

[root@kvm02 ~]# vim /etc/hosts
192.168.22.136  kvm01
192.168.22.137  kvm02
​
[root@kvm02 ~]# yum -y install nfs-utils rpcbind
1. 查看存储端共享 
   [root@client ~]# showmount -e kvm01   #这里写ip或主机名均可
   Export list for nas:
   /data 192.168.22.0/24
2. 手动挂载
   [root@kvm02 ~]# mount -t nfs kvm01:/data /data
   [root@kvm02 ~]# umount /data          #如果取消挂载可用该命令
3. 自动挂载到网站主目录
   [root@kvm02 ~]# vim /etc/fstab
   nas:/data      /data           nfs     defaults        0 0
   [root@kvm02 ~]# mount -a              #如果取消挂载可用该命令
4. 查看挂载
   [root@kvm02 ~]# df
   kvm01:/data     7923136 692416   6821568  10% /data
   注意:远程挂载考虑到挂载失败的问题,生产环境建议设置开机启动挂载
5. 加入开机自启动
   [root@kvm02 ~]# echo  'mount.nfs 192.168.22.136:/data /data' >>/etc/rc.local
   [root@kvm02 ~]# chmod +x /etc/rc.d/rc.local

3、共享镜像配置(存储端kvm01)

(1)将/var目录下的源磁盘镜像拷贝到共享目录/data下

[root@kvm02 ~]# cp /var/lib/libvirt/images/centos7.0.qcow2 /data/

(2)用virsh edit将源虚拟机配置路径改到/data下

[root@kvm02 ~]# virsh edit centos7.0
改前:<source file='/var/lib/libvirt/images/centos7.0-clone.qcow2'/>
改后:<source file='/data/centos7.0-clone.qcow2'/>

(3)启动被迁移虚拟机,用virt-manager工具迁移

[root@kvm02 ~]# virt-manager

4、virt-manager工具进行迁移

(1)ssh方式添加连接(kvm01与kvm02做相同步骤可实现互相迁移,这里以kvm01添加kvm02为例)

 

 

(2)两次弹框,依次输入“yes”和对方密码(这里以kvm02添加kvm01的情况为例)

 

 

(3)启动要迁移的虚拟机centos7.0,之后会在kvm01的virt-manager上观察这台机器状态为running,且运行位置为kvm01

 

 

(4)选择centos7.0,右键选择迁移,并且选中高级选项里的第一项(这里是后来又换机做了实验,153应该对应原来的137)

(5)之后观察kvm02的virt-manager发现,运行的centos7.0迁移到了kvm02上

 

 

 

 

(6)在kvm02上查看虚拟机列表

[root@kvm02 ~]# virsh list --all 
 Id    名称                         状态
----------------------------------------------------
 1     centos7.0                          running

  至此,完成一次热迁移

 

 

标签:data,虚拟机,KVM,kvm01,kvm02,centos7.0,迁移,root
来源: https://www.cnblogs.com/lz-200/p/13368545.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有