前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >KVM虚拟机迁移

KVM虚拟机迁移

作者头像
星哥玩云
发布2022-09-15 21:30:41
7840
发布2022-09-15 21:30:41
举报
文章被收录于专栏:开源部署开源部署

一、KVM宿主机高可用架构设计

  • 宿主机故障,内部虚拟机可以不受影响,可以迁移走
  • 负载均衡,当某个宿主机压力过大,可以将部分虚拟机迁移到其他机器,降低其负载。

1.1、架构设计

KVM虚拟机容灾架构.png
KVM虚拟机容灾架构.png

1.2、实验机器

机器

IP

角色

node1

192.168.122.100

KVM宿主机

node2

192.168.122.200

KVM宿主机

zutuanxue

192.168.122.1

NFS存储

1.3、架构部署

部署前准备

  1. IP地址设置,保障机器间的通信
  2. 主机名设置与解析
  3. 关闭防火墙与selinux
  4. 时间同步
  5. 安装KVM虚拟化
  6. KVM宿主机实现SSH证书互信任

机器准备

代码语言:javascript
复制
[root@zutuanxue ~]# virt-clone --auto-clone -o rhel8 -n node1
正在分配 'node1.qcow2'                                                                                     |  10 GB  00:00:00     

成功克隆 'node1'。
[root@zutuanxue ~]# virt-clone --auto-clone -o rhel8 -n node2
正在分配 'node2.qcow2'                                                                                     |  10 GB  00:00:00     

成功克隆 'node2'。

部署

设置存储,开启nfs服务

代码语言:javascript
复制
[root@zutuanxue ~]# cat /etc/exports
/var/lib/libvirt/images     0.0.0.0/0.0.0.0(rw,sync,no_root_squash)
[root@zutuanxue ~]# systemctl start nfs-server.service

KVM宿主机连接NFS存储,要求开机挂载

代码语言:javascript
复制
[root@node1 ~]# mount -t nfs 192.168.122.250:/images /var/lib/libvirt/images/

[root@node2 ~]# mount -t nfs 192.168.122.250:/images /var/lib/libvirt/images/

创建一个KVM虚拟机

代码语言:javascript
复制
[root@node1 ~]# virt-install --name xx --memory 512 --vcpus=1 --disk /var/lib/libvirt/images/rhel8-clone.qcow2 --import --network network=default

1.4、虚拟机迁移

模拟一台KVM宿主机故障,KVM虚拟机实现迁移

代码语言:javascript
复制
[root@node1 ~]# virsh migrate --live --verbose xx qemu+ssh://192.168.122.200/system --unsafe
setlocale: No such file or directory
root@192.168.122.200's password: 
Migration: [100 %]


--live 在线迁移
--verbose  显示迁移进度
qemu+ssh://  libvirt提供的连接方式、
--unsafe 允许不安全迁移

二、vmware 虚拟机迁移到KVM

  • 修剪虚拟机文件
  • 将vmware磁盘格式转换为kvm磁盘格式
  • 创建虚拟机验证

a、修剪虚拟机文件

代码语言:javascript
复制
#删除缓存文件
[root@zutuanxue CentOS_8_node3.vmwarevm]# rm -rf caches/
#删除快照文件
[root@zutuanxue CentOS_8_node3.vmwarevm]# rm -rf CentOS_8_node3-Snapshot*
#删除日志文件
[root@zutuanxue CentOS_8_node3.vmwarevm]# rm -rf vmware-[0-9].log

b、将vmware磁盘格式导成kvm磁盘格式

代码语言:javascript
复制
[root@zutuanxue CentOS_8_node3.vmwarevm]# qemu-img convert 虚拟磁盘.vmdk -O qcow2 /var/lib/libvirt/images/centos_8_node3.qcow2

c、创建虚拟机加载磁盘,验证

代码语言:javascript
复制
[root@zutuanxue CentOS_8_node3.vmwarevm]# virt-install --name qy1 --memory 1024 --vcpus=2 --disk=/var/lib/libvirt/images/centos_8_node3.qcow2 --import --network network=default 
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、KVM宿主机高可用架构设计
    • 1.1、架构设计
      • 1.2、实验机器
        • 1.3、架构部署
          • 1.4、虚拟机迁移
          • 二、vmware 虚拟机迁移到KVM
          相关产品与服务
          对象存储
          对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档