open Stack及VM虚拟机和其他平台虚拟机迁移至 VMware vSphere(esxi)虚拟化平台骨灰级后台磁盘替换法迁移方式

标签:无视VMware版本限制、无平台限制、跨平台操作、快速执行。

一、信息收集

1、收集待迁移机器的基础信息,包括主机名、系统版本、启动方式、CPU、内存、硬盘、网卡、IP、用户名、密码等信息,统计好总资源占用量,评估迁移后平台是否具备整体容纳资格。
2、规划好迁移后机器的主机名和IP地址信息,其他规格信息如无特殊要求,照旧即可,信息规划表如下所示:
在这里插入图片描述

二、拷贝待迁移机器的虚拟磁盘文件

1、open Stack中磁盘获取方式
可查看虚拟机信息,并查询磁盘卷文件所处位置,转换磁盘格式为vmdk并拷贝至本地。

virsh list			//查看虚拟机实例
virsh domblklist instance-000002df		//查看对应虚拟机实例磁盘信息
qemu-img info /dev/disk/by-path/pci-0000:4b:00.1-fc-0x500601624de0057e-lun-63	//查看磁盘详细信息,如大小格式
qemu-img convert -p -f raw /dev/disk/by-path/pci-0000:4b:00.1-fc-0x500601624de0057e-lun-63 -O vmdk /mnt/migrate.vmdk		//转换虚拟机磁盘格式从raw到vmdk格式并将转换后的磁盘放到/mnt/migrate.vmdk中

在这里插入图片描述
也可通过其他方式获取到虚拟机原始完整磁盘文件,该虚拟机有几块磁盘就拷贝几个磁盘文件至本地,确保磁盘文件的完整性及无损坏。
获取完整磁盘文件后转换其他格式磁盘文件如raw、qcow、qcow2等格式为vmdk格式,采用

qemu工具,Windows下及Linux下都可安装。转换命令为:
qemu-img convert -p -f raw /dev/disk/by-path/pci-0000:4b:00.1-fc-0x500601624de0057e-lun-63 -O vmdk /mnt/migrate.vmdk
-p	显示进度
-f	转换前磁盘格式
-O	转换后磁盘格式

2、VMware中磁盘获取方式
(1)VMware Workstation中导出
通过系统自带导出功能导出OVF文件。
在这里插入图片描述
在这里插入图片描述
导出完成后会生成如下文件,其中.vmdk结尾的磁盘文件最为重要,其他为该虚拟机各项信息的描述性文件。
在这里插入图片描述
也可以直接进入虚拟机文件存放目录下,找到虚拟磁盘文件。
在这里插入图片描述
以上方式都可获取到虚拟机磁盘文件。
(2)VMware vSphere或esxi中获取磁盘文件
同理,可通过系统自带导出功能导出OVF文件。
在这里插入图片描述
或进入虚拟机文件存放路径导出磁盘文件。
在这里插入图片描述
在这里插入图片描述

三、执行迁移操作

1、在平台中创建好虚拟机

系统版本与迁移的机器相匹配
在这里插入图片描述
规格信息与迁移的机器相匹配,待迁移机器有几块磁盘,则迁移后的机器添加几块磁盘,磁盘为空白即可,CD/DVD无需指定镜像,保持为空连接。
在这里插入图片描述
引导方式为BIOS
在这里插入图片描述
创建完成
在这里插入图片描述
2、上传待迁移的磁盘文件至虚拟化平台中。

登陆至esxi后台中,连接sftp进行上传。
在这里插入图片描述
上传完成。
在这里插入图片描述
3、执行迁移,对新创建空虚拟机进行磁盘替换
(1)将上传后的磁盘克隆至待迁移空虚拟机路径中。

vmkfstools -i CentOS_7.0-disk1.vmdk -d thin ../迁移01/new迁移01.vmdk
-i	指定克隆源磁盘
-d	指定克隆方式	thin表示精简置备方式

最后接目标路径及名称
在这里插入图片描述
(2)删除空虚拟机原磁盘文件,并将克隆后磁盘替换至该虚拟机中进行加载。

vmkfstools -U 迁移01.vmdk
-U	删除磁盘
vmkfstools -E new迁移01.vmdk 迁移01.vmdk
-E 替换源磁盘文件为新磁盘文件

在这里插入图片描述
(3)启动该虚拟机
在这里插入图片描述
(4)迁移完成,将系统开机
大多数情况下开机即可正常启动进入系统。
如出现以下情况,请执行后续步骤解决。
在这里插入图片描述
1.检查磁盘信息
报错信息中提示未找到/dev/centos/root,初步怀疑是由于底层虚拟化平台变更导致vg或LV命名发生变化。
2.进入救援模式
列出系统上可用逻辑卷
在这里插入图片描述
3.检查/etc/default/grub中引导信息
主要检查rd.lvm=参数值与lvs中列出的逻辑卷名称是否一致。

[root@Docker ~]# cat /etc/default/grub 
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

通过grub信息可以看到逻辑卷未发生变化,引导不成功并非是由于逻辑卷命名变更导致的。
4.重建initramfs 文件
判断可能是initramfs文件是依据旧平台硬件创建的,而不支持新平台的硬件。
尝试从系统的救援内核进行启动。
注:救援内核是由原始安装程序安装的,并且支持大多数硬件
重新引导虚拟机。在boot页面,选择CentOS Linx(0-rescue-xxx) 7 (Core)启动。
在这里插入图片描述
从救援内核启动引导成功,可以成功进入系统。说明是由于initramfs 文件导致未成功引导,我们只需要重建即可。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

#cd /boot/
#dracut -f initramfs-3.10.0-957.el7.x86_64.img
#reboot

在这里插入图片描述
完成后重启系统即可,系统至此恢复正常。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
注意事项:
虚拟机跨平台迁移涉及到底层硬件的环境的变更,正常情况下系统对大多数硬件环境都支持,迁移后可正常启动,但也可能出现一些突发问题导致拉起失败,如启动项调整、引导重构、磁盘接口变更、机器类型(machine type)修改等问题,需要分开讨论解决。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Dreamsi_zh

您的鼓励是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值