PVE迁移到VMware
思路:从PVE导出虚拟机磁盘 -> ESXI创建新的虚拟机 -> PVE导出的磁盘上传到ESXI -> 将上传的磁盘转为精简置备并挂载为启动盘 -> 启动虚拟机安装VMware Tools1、从PVE导出虚拟机磁盘通过ssh连接到pve物理机,找到pve上虚拟机的磁盘并转格式。pve每个虚拟机都有ID,可以根据ID来查找磁盘位置,这里要迁移的虚拟机ID为219。root@l
pve迁移vmware辅助脚本:
https://github.com/zhegeshijiehuiyouai/RoadToDevOps/tree/master/10-pve-vmware-tools/01-pve-to-vmware
思路:
从PVE导出虚拟机磁盘 -> ESXI创建新的虚拟机 -> PVE导出的磁盘上传到ESXI -> 将上传的磁盘转为精简置备并挂载为启动盘 -> 启动虚拟机安装VMware Tools
1、从PVE导出虚拟机磁盘
通过ssh连接到pve物理机,找到pve上虚拟机的磁盘并转格式。
pve每个虚拟机都有ID,可以根据ID来查找磁盘位置,这里要迁移的虚拟机ID为219。
root@lab-pve-1:/dev# find / -name vm-219-disk*
/dev/me4024-4-lvm/vm-219-disk-1
/dev/me4024-4-lvm/vm-219-disk-0
可以看到虚拟机挂载了两块盘,一块一块的弄。
root@lab-pve-1:/dev# ls -l /dev/me4024-4-lvm/vm-219-disk-0
lrwxrwxrwx 1 root root 8 Feb 10 18:40 /dev/me4024-4-lvm/vm-219-disk-0 -> ../dm-94
可以看到vm-219-disk-0指向了/dev/dm-94(注意:虚拟机关机重启后,软链接指向的文件可能会变化)
root@lab-pve-1:/dev# ls -l /dev/dm-94
brw-rw---- 1 root disk 253, 94 Apr 13 16:24 /dev/dm-94
b格式代表外接设备,如磁盘等。
qemu-img命令查看磁盘格式
qemu-img info <设备>
使用qemu-img命令转下格式
qemu-img convert -f <原格式> -O <目标格式> <原文件路径> <目标文件路径>
存放目标文件的目录一定要注意下磁盘空间大小,避免磁盘空间耗尽。
root@lab-pve-1:/dev# qemu-img info dm-94
image: dm-94
file format: raw
virtual size: 100 GiB (107374182400 bytes)
disk size: 0 B
root@lab-pve-1:/dev# qemu-img convert -f raw -O vmdk /dev/dm-94 /dev/vm219-0.vmdk
如果pve和esxi服务器网络通的话,转好后,可以通过scp直接拷贝到esxi服务器上,或者先下载到自己的电脑上,后面再上传。
重复上面的操作,将第二块盘/dev/me4024-4-lvm/vm-219-disk-1也转格式。
2、ESXI创建新的虚拟机
cpu和内存与原pve上的虚拟机保持一致,硬盘无所谓,因为一会要替换。建好虚拟机后,将其关机。
这里克隆出来的虚拟机有两块硬盘,将它们都删除。
3、PVE导出的磁盘上传到ESXI
如果通过scp或其他命令已经将硬盘拷贝到了esxi服务器上的话,可以跳过本节,本节适用于下载到本地电脑后,再上传的情况。
找到刚才创建的虚拟机在vcenter/esxi上存放的目录,将导出的磁盘上传到此目录。我这里是vcenter的界面,存储是放在磁盘阵列里的,目录名为虚拟机名。
提示转到esxi上去上传
上传成功
再上传第二块盘
4、将上传的磁盘转为精简置备并挂载为启动盘
此时如果挂载上传的两块盘,会发现它们的类型为厚置备,占用空间大,将其转为精简置备。
通过ssh连接到esxi物理机,进入到虚拟机文件存放的目录
vmkfstools -i vm219-0.vmdk 172.16.32.33-jianwei-migrate.vmdk -d thin
vmkfstools -i vm219-1.vmdk 172.16.32.33-jianwei-migrate_1.vmdk -d thin
回到vcenter,找到新建的虚拟机,点击 操作 -> 编辑设置 -> 添加新设备 -> 现有磁盘 ,依次添加转为精简置备的两块盘。
5、启动虚拟机安装VMware Tools
此时重启后不管的话,由于硬盘驱动的原因会报错,解决方法是启动虚拟机后,立即到终端上立刻按下键,选择救援模式进入
新增内核模块,支持vmware硬件:
vim /etc/dracut.conf.d/drivers.conf
add_drivers+="vmxnet3 vmw_pvscsi"
使用dracut命令重新构建kernel
dracut --verbose --force
# 【注意】如果有多个内核,需要指定内核版本为grub2中第一个启动的内核
# 查看内核
egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \' | awk -F "(" '{print $2}' | awk -F ")" '{print $1}' | sort -rV
# 生成指定版本的内核
dracut --verbose --force --kver 3.10.0-1160.21.1.el7.x86_64
因为安装vmware tools的时候,也会添加这两个模块,为了避免重复,生成新的initramfs后,删除新增的模块
rm -f /etc/dracut.conf.d/drivers.conf
解决网络问题
1、pve迁移过来的虚拟机都带有 cloud-init
,在重启时它会修改网卡配置,所以我们将它卸载掉
rpm -e --nodeps cloud-init
2、在vcenter上查到新虚拟机的mac地址,将虚拟机中网络配置文件的mac地址替换,例如centos7的配置文件为/etc/sysconfig/network-scripts/ifcfg-eth0。
修改之后重启服务器
reboot
【补充】
如果ip都配置正确后还是网络不通,选择虚拟机的 操作 --> 编辑设置 --> 网络适配器1
是否已连接,同时检查网卡状态是否勾选 打开电源时连接
最后,记得安装VMware Tools
点击 “安装 VMware Tools …”
ssh到新建的虚拟机,执行
mount /dev/sr0 /mnt
mkdir /tmp/00
cp -ar /mnt/* /tmp/00
cd /tmp/00
tar xf VMwareTools-10.3.5-10430147.tar.gz # 解压出 vmware-tools-distrib
cd vmware-tools-distrib
./vmware-install.pl # 安装vmware tools,根据提示选择,最后会提示安装成功,成功后重启服务器
更多推荐
所有评论(0)