共计 1725 个字符,预计需要花费 5 分钟才能阅读完成。
常用安装管理
创建虚拟机的桥接网卡,并原来物理网卡上 IP 自动添加到桥接网卡上:
virsh iface-bridge eth0 br0
不创建虚拟磁盘,一次性创建 KVM 虚拟机(默认为 qcow2 磁盘格式,网络为桥接模式,在此前最好安装 virt-manager):
virt-install –virt-type kvm –name CentOS-7-x86_64 –ram 2048 \
-vcpus=1 -s 20 -c /vm/iso/CentOS-7-x86_64-DVD-1511.iso –hvm \
–os-type=linux -f /vm/CentOS-7-x86_64-tmp.img –graphics vnc,listen=0.0.0.0 \
–noautoconsole
查看镜像信息:
# qemu-img info CentOS-6.5-x86_64.raw
image: CentOS-6.5-x86_64.raw
file format: raw
virtual size: 5.0G (5368709120 bytes)
disk size: 939M
把文件从 qcow2 格式装换成 raw 格式(转换之后需要修改对应 xml 文件):
qemu-img convert -f qcow2 -O raw CentOS-6.img CentOS-6.raw
转换之后需要修改 xml 中对应的镜像路径,格式。
本地虚拟机克隆
1、首先关闭虚拟机,虚拟机运行状态下无法 clone
2、以 CentOS-6-x86_64 为源镜像,克隆一个新的 CS6 的镜像,新镜像磁盘为 CS-6.raw
# virt-clone -o CentOS-6-x86_64 -n CS6 -f /vm/image/CS-6.raw
3. 对比新镜像和源镜像的 xml 文件,发现自动更新了镜像路径和 MAC 地址信息,其他不变,同时,新镜像自动加入了虚拟机列表 virsh list –all。
4、启动配置即可。
通过复制配置文件与磁盘文件的虚拟机地址克隆(适用于异机的迁移)
1、备份出需要迁移的虚拟机 xml 文件
virsh dumpxml CentOS-6-x86_64 > /vm/image/CS-6-new.xml
2、使用 vim 编辑修改此 xml 文件中的 name,uuid,mac address 虚拟磁盘路径 source file,vnc 端口等。
3、复制一份源镜像文件,并重命名为新镜像名称
cp CentOS-6-x86_64.raw CS-6-new.raw
3、重新定义此 xml 文件:
virsh define /vm/image/CS-6-new.xml
4、启动虚拟机
virsh start CS-6-new
5、当发生 UUID 或者 mac 地址冲突的情况,先修改对应的 xml 文。启动虚拟机,配置网络并修改 mac 地址,和 xml 文件中信息统一。
6、拷贝 xml 文件和镜像到另一台宿主机,修改 xml 文件中的 souce file 路径,定义虚拟机并启动:
virsh define /vm/CS-6-new.xml
virsh start CS-6-new
7、启动如果报错:
error: Failed to start domain CS-6-new
error: unsupported configuration: guest and host CPU are not compatible: Host CPU does not provide required features: fma, movbe, fsgsbase, bmi1, avx2, smep, bmi2, erms, invpcid
这是由于 CPU 信息不兼容造成的,可以修改 xml 的配置文件,使其兼容:
virsh edit CS-6-new
<cpu mode’custom’ match=’exact’>
<model>qemu64</model>
<feature name=’svm’ policy=’disable’/>
</cpu>
8、启动虚拟机,配置 IP 地址,虚拟机迁移完成。
本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-04/142857.htm