KVM系列之虚拟克隆技术
2017-04-28 09:43
288 查看
背景
一般情况下,虚拟机承载主机上不止跑一台虚拟机,那么问题来了,如何快速批量部署?难道每台都从头根据系统提示一步一步进行安装?我真会疯掉的,那有没有什么好点的办法解决?办法肯定是有的,可以通过克隆技术制作相同的虚拟机,实现虚拟机快速部署。下面我就简单介绍两种实现方式。
实现方式:通过“virt-clone”命令,实现虚拟机克隆。
通过复制磁盘、配置文件,实现虚拟机克隆。
虚拟机承载主机系统:CentOS 7.2.1511 X86_64
命令实现
前提条件虚拟机的磁盘格式类型为qcow2。被克隆主机需要关机。
克隆虚拟机
说明:--original:指定克隆系统源--name:指定新虚拟机名称--file:指定新虚拟机存放位置
修改虚拟配置文件
或者
添加VNC窗口
启动虚拟机
连接VNC
![](http://mmbiz.qpic.cn/mmbiz_png/5Hc2DcbHnWoTGV8he07ERZl0iaVTz04ROXKxjqddIIVxyntRJBGiaoSgCD28Y3D7ozBtcvoVibO7hIvMhibPtHc7lA/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1)
![](http://mmbiz.qpic.cn/mmbiz_png/5Hc2DcbHnWoTGV8he07ERZl0iaVTz04ROKeAn0HPicHGuBaWn6ElpQN2ic2Jsh9AS9FnnKqIiaobTQVNmiciaUS9XO1g/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1)
注意:如果克隆的是linux系统,启动系统后需要处理网络。
Copy 实现
Copy 磁盘镜像、配置文件
修改配置文件
添加VNC窗口
启动虚拟机
查看虚拟机列表
连接VNC
![](http://mmbiz.qpic.cn/mmbiz_png/5Hc2DcbHnWoTGV8he07ERZl0iaVTz04ROl84icJLY7pTLGVKHYicGqMb0xWRqNjnHSictZc92SDCYnSlB1ACOQ5uAw/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1)
![](http://mmbiz.qpic.cn/mmbiz_png/5Hc2DcbHnWoTGV8he07ERZl0iaVTz04ROokkBcPCyuAllzJd5Vb0mVXHQk7o5S4vPT2pmwtGyichDGZyxqb5YRlA/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1)
系统对比
![](http://mmbiz.qpic.cn/mmbiz_png/5Hc2DcbHnWoTGV8he07ERZl0iaVTz04ROM4xeVWiaEV7E8YNa8CgDDK9Bc7Ppj8kibR64SRmLWhsDodzalAHPn4ibA/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1)
网络对比
![](http://mmbiz.qpic.cn/mmbiz_png/5Hc2DcbHnWoTGV8he07ERZl0iaVTz04ROBZIC8sDbfG5ren9ToSj8Qo9PydPsosTMkV53QDUaaNhOu0sXhs7icpA/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1)
扩展内容对配置文件不熟悉,修改起来比较困难,能否自动生成配置文件?可以的,只需要复制磁盘镜像,通过执行“virt-install”命令,就可实现自动生成配置文件,前提需要知道被克隆虚拟主机创建时的硬件配置参数(最重要的是磁盘信息)。比如之前创建windows_2k3的命令如下
改为以下命令执行
注意:只需要修改三个地方:-n 、--disk path、--vncport;
FQA
Q:克隆虚拟机能使用远程桌面连接?A:可以,需要在被克隆主机配置固定IP、创建用户密码、开启远程功能,系统克隆后就可使用远程桌面进行连接,连接需要修改IP地址,否则下一虚拟机的克隆会存在IP冲突。
Q:网络有重名A:我的电脑--属性--计算机名--更改--输入新计算机名称--重启系统即可。
Q:克隆linux系统,启动如何处理网络问题?A:需要处理70-persistent-net.rules和ifcfg-eth0文件[root@KVM_Clinet ~]# rm -rf /etc/udev/rules.d/70-persistent-net.rules[root@KVM_Clinet ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0删除MAC跟UUID,还可以手动配置静态IP(不是比改项),然后重启系统。
一般情况下,虚拟机承载主机上不止跑一台虚拟机,那么问题来了,如何快速批量部署?难道每台都从头根据系统提示一步一步进行安装?我真会疯掉的,那有没有什么好点的办法解决?办法肯定是有的,可以通过克隆技术制作相同的虚拟机,实现虚拟机快速部署。下面我就简单介绍两种实现方式。
实现方式:通过“virt-clone”命令,实现虚拟机克隆。
通过复制磁盘、配置文件,实现虚拟机克隆。
虚拟机承载主机系统:CentOS 7.2.1511 X86_64
命令实现
前提条件虚拟机的磁盘格式类型为qcow2。被克隆主机需要关机。
克隆虚拟机
[root@controller ~]# virt-clone --original windows_2k3 --name windows_2k3_01 --file /data/pool/windows_2k3_01 |
修改虚拟配置文件
[root@controller ~]# virsh edit windows_2k3_01<graphics type='vnc' port='-1' autoport='yes'>改为 <graphics type='vnc' port='5911' autoport='no'> |
[root@controller ~]# vim /etc/libvirt/qemu/windows_2k3_01.xml[root@controller ~]# virsh define /etc/libvirt/qemu/windows_2k3_01.xml |
[root@controller ~]# cp /lib/systemd/system/vncserver@.service /lib/systemd/system/vncserver@:11.service |
[root@controller ~]# virsh start windows_2k3_01 |
注意:如果克隆的是linux系统,启动系统后需要处理网络。
Copy 实现
Copy 磁盘镜像、配置文件
[root@controller ~]# cp /data/pool/windows_2k3 /data/pool/windows_2k3_02[root@controller ~]# cp /etc/libvirt/qemu/windows_2k3.xml /etc/libvirt/qemu/windows_2k3_02.xml |
[root@controller ~]# vim /etc/libvirt/qemu/windows_2k3_02.xml 改为:<name>windows_2k3_02</name> 删除:<uuid>3230baaa-88e9-4289-8c96-d6621c35cd97</uuid> 改为:<source file='/data/pool/windows_2k3_02'/> 删除:<mac address='52:54:00:87:c2:2a'/> 改为:<graphics type='vnc' port='5912' autoport='no'>[root@controller ~]# virsh define /etc/libvirt/qemu/windows_2k3_02.xml |
[root@controller ~]# cp /lib/systemd/system/vncserver@:11.service /lib/systemd/system/vncserver@:12.service |
[root@controller ~]# virsh start windows_2k3_02 |
[root@controller ~]# virsh list --all Id 名称 状态---------------------------------------------------- 12 windows_2k3_01 running 13 windows_2k3_02 running - windows_2k3 关闭 |
系统对比
网络对比
扩展内容对配置文件不熟悉,修改起来比较困难,能否自动生成配置文件?可以的,只需要复制磁盘镜像,通过执行“virt-install”命令,就可实现自动生成配置文件,前提需要知道被克隆虚拟主机创建时的硬件配置参数(最重要的是磁盘信息)。比如之前创建windows_2k3的命令如下
virt-install -n windows_2k3 -r 1024 -vcpus=1 -c /data/iso/windows_server_2003.iso --disk path=/data/pool/windows_2k3,format=qcow2,size=30,bus=ide --hvm --os-type=windows --vnc --vncport 5910 --network network=default --force --autostart |
virt-install -n windows_2k3_03 -r 1024 -vcpus=1 -c /data/iso/windows_server_2003.iso --disk path=/data/pool/windows_2k3_03,format=qcow2,size=30,bus=ide --hvm --os-type=windows --vnc --vncport 5913 --network network=default --force --autostart |
FQA
Q:克隆虚拟机能使用远程桌面连接?A:可以,需要在被克隆主机配置固定IP、创建用户密码、开启远程功能,系统克隆后就可使用远程桌面进行连接,连接需要修改IP地址,否则下一虚拟机的克隆会存在IP冲突。
Q:网络有重名A:我的电脑--属性--计算机名--更改--输入新计算机名称--重启系统即可。
Q:克隆linux系统,启动如何处理网络问题?A:需要处理70-persistent-net.rules和ifcfg-eth0文件[root@KVM_Clinet ~]# rm -rf /etc/udev/rules.d/70-persistent-net.rules[root@KVM_Clinet ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0删除MAC跟UUID,还可以手动配置静态IP(不是比改项),然后重启系统。
相关文章推荐
- KVM系列之虚拟克隆技术
- [虚拟技术]在CentOS5.4上试用kvm和xen
- IBM全力支持虚拟技术KVM(Linux+虚拟化+开源)
- [虚拟技术]在CentOS5.4上试用kvm和xen
- 用户友好的Linux虚拟技术: KVM ZT
- [虚拟技术]Xen虚拟机迁移到KVM六步走
- 克隆KVM虚拟主机后报错
- [虚拟技术]Xen虚拟机迁移到KVM六步走
- Linux虚拟技术: KVM
- [虚拟技术]Linux KVM与Xen,QEMU的性能比较
- [虚拟技术]你会选谁:Red Hat还是Ubuntu KVM虚拟化?
- [虚拟技术]你会选谁:Red Hat还是Ubuntu KVM虚拟化?
- 服务器虚拟技术中的鬼吹灯三人组:KVM、XEN、OVZ
- [虚拟技术]Linux KVM与Xen,QEMU的性能比较
- P2V在线迁移windows、linux到KVM中 « Geek Blog | Python Linux 云计算 | OpenStack 虚拟技术 HPC | 性能调优 自动化 服务器架构
- CloudStack系统部署系列教程-KVM
- Azure Messaging-ServiceBus Messaging消息队列技术系列7-消息事务
- MFC技术内幕系列之(一)---MFC应用程序“生死因果”内幕
- MFC技术内幕系列之(一)---MFC应用程序“生死因果”内幕