镜像制作之vmdk镜像转kvm镜像

准备vmware导出的ovf镜像

[root@localhost ~]# ll
total 3472056
-rw-------. 1 root root       1448 Sep 15 19:40 anaconda-ks.cfg
-rw-r--r--  1 root root 3488363008 Sep 18 02:10 Temp_Centos-disk1.vmdk

安装kvm虚拟化及virt-manager

[root@localhost ~]# yum install qemu-kvm qemu-kvm-tools libvirt qemu-kvm libvirt  bridge-utils virt-manager qemu-kvm-tools xorg-x11-xauth tigervnc-server vnc device-mapper-libs libguestfs-winsupport -y

windows系统镜像转换需安装驱动

[root@localhost ~]# rpm -ivh https://fedorapeople.org/groups/virt/virtio-win/repo/stable/virtio-win-0.1.171-1.noarch.rpm

创建kvm存储池(用来提供vmdk镜像存储) 

[root@localhost ~]# systemctl start libvirtd
[root@localhost ~]# mkdir -p /app/vmfs
[root@localhost ~]# virsh pool-define-as vmdisk --type dir --target /app/vmfs
Pool vmdisk defined

[root@localhost ~]# virsh pool-build vmdisk
Pool vmdisk built

[root@localhost ~]# virsh pool-autostart vmdisk
Pool vmdisk marked as autostarted

[root@localhost ~]# virsh pool-start vmdisk
Pool vmdisk started

使用virt-manager里的工具virt-v2v进行转换qcow2

[root@localhost ~]# virt-v2v -i disk Temp_Centos-disk1.vmdk -o libvirt -os vmdisk -of qcow2

注意:如果转换中途失败或者报错可以加参数-v -x看过程

[root@localhost ~]# virt-v2v -v -x -i disk Temp_Centos-disk1.vmdk -o libvirt -os vmdisk -of qcow2

 转换之前需关闭selinux,将其设置成disable

 转换后可以查看qcow2文件大小居然有12G。(原因是因为镜像空间有碎片,这里压缩一下就好了)

[root@localhost ~]# cd /app/vmfs/
[root@localhost vmfs]# du -lh Temp_Centos-disk1-sda
12G     Temp_Centos-disk1-sda

推荐virt-sparsify,它的磁盘碎片压缩比例可以达到95%以上,比qemu-img强太多

[root@localhost vmfs]# virt-sparsify --compres Temp_Centos-disk1-sda CentOS7.9-x86-KVM.qcow2

 压缩后只有1.4G,至此整个vmware镜像转qcow2过程完成。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

九分横南

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值