用习惯了pve现在用着xenserver有些难受,于是想着迁移到pve中。过程太心酸了,写下几篇记录文档方便后续翻阅。

本篇为xenserver转移的第一步

卸载原有的xenserver驱动

这里主要体现在win平台,由于忘记截图保存了,就没有图片介绍。

首先进入控制面板,找到程序卸载

然后找到跟xen有关的组件直接卸载。

如果不卸载,在后面导入pve之后可能无法正常安装virtio的驱动(血淋淋的教训)


导出XVA镜像

这里有两种方法导出,分别是在xcp-ng通过ui导出(挺慢的,如果太多不建议使用这个方法)

和cli命令行导出(这个比较方便)

这里只说后面这种方法。

主要用到xen的cli来实现一系列操作,为了方便直接弄了个脚本

首先创建一个要导出的虚拟机列表,里面需要写入要导出的虚拟机名称

image.png

名字的由来可以在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

以上为本篇全部内容

最后修改:2023 年 07 月 28 日
如果觉得我的文章对你有用,请随意赞赏