用习惯了pve现在用着xenserver有些难受,于是想着迁移到pve中。过程太心酸了,写下几篇记录文档方便后续翻阅。
本篇为xenserver转移的第一步
卸载原有的xenserver驱动
这里主要体现在win平台,由于忘记截图保存了,就没有图片介绍。
首先进入控制面板,找到程序卸载
然后找到跟xen有关的组件直接卸载。
如果不卸载,在后面导入pve之后可能无法正常安装virtio的驱动(血淋淋的教训)
导出XVA镜像
这里有两种方法导出,分别是在xcp-ng通过ui导出(挺慢的,如果太多不建议使用这个方法)
和cli命令行导出(这个比较方便)
这里只说后面这种方法。
主要用到xen的cli来实现一系列操作,为了方便直接弄了个脚本
首先创建一个要导出的虚拟机列表,里面需要写入要导出的虚拟机名称
名字的由来可以在xcp-ng中复制。
##以下是虚拟机列表文件
##每行一个虚拟机名字,别写错
aapanel
Graylog
control
ikuai
随便给这个文件命个名,例如我的叫list.txt
然后是主要导出命令这里主要是关机以及导出操作,同时需要保证你有足够的空间用来导出镜像文件
#!/bin/bash
#des是导出的存储路径
des=/root/nfs/backup
for name in `cat list.txt`
do
xe vm-shutdown name-label=${name}
xe vm-export name-label=${name} filename=${des}/${name}.xva
done
这就是导出的全部内容了。
解包
为什么要解包?
因为xen和pve的差异,这里导出的是xva的镜像,无法直接导入到pve,因此后续还需要做一些列的转换才可以导入。
转换之前则需要解包,xva类似一个压缩包,因此直接解压即可
如果存储空间不够则只能一个一个的解压然后转换。如果空间很足则可以在导出的同时进行解包。
- 单个解包
这个很简单,直接进入导出的路径然后执行下面的指令
#例如解包ikuai
cd /root/nfs/backup
mkdir ikuai
tar -xvf ikuai.xva -C ikuai
然后开始漫长的等待,如果文件大的话
- 一次性解包
这个也很简单,改一下之前的导出脚本,或者新建脚本
#!/bin/bash
#des是导出的存储路径
des=/root/nfs/backup
for name in `cat list.txt`
do
xe vm-shutdown name-label=${name}
xe vm-export name-label=${name} filename=${des}/${name}.xva
mkdir -p ${des}/${name}
tar -xvf ${des}/${name}.xva -C ${des}\${name}
done
以上为本篇全部内容