一 KVM宿主机内克隆

1.1 查看虚拟机配置

 [root@kvm-host ~]# cat /etc/libvirt/qemu/vm01-centos6.8.xml
…………
[root@kvm-host ~]# ll /data/images/ #虚拟机磁盘文件
total 1.3G
-rw-------. 1 qemu qemu 21G May 27 00:45 vm01-centos6.8.img [root@kvm-host ~]# virsh list --all #虚拟机名称
Id Name State
----------------------------------------------------
- vm01-centos6.8 shut off

1.2 克隆操作

 [root@kvm-host ~]# virt-clone -o vm01-centos6.8 -n vm02-centos6.8 -f /data/images/vm02-centos6.8.img

注意:也可使用下列语法——

 virt-clone --connect qemu:///system --original vm01-centos6.8 --name vm02-centos6.8 --file /data/images/vm02-centos6.8.img 
 [root@kvm-host ~]# virsh list --all
Id Name State
----------------------------------------------------
- vm01-centos6.8 shut off
- vm02-centos6.8 shut off

建议:建议克隆的时候关机操作,也可挂起状态。

1.3 启动新虚机并配置

 [root@kvm-host ~]# virsh start vm02-centos6.8
[root@kvm-host ~]# virsh console 3 #进入虚机
[root@localhost ~]# vi /etc/hosts #根据需要修改
[root@localhost ~]# vi /etc/sysconfig/network #根据需要修改
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR=52:54:00:b0:6b:dc
ONBOOT=yes #开机启动
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=172.24.8.41
NETMASK=255.255.255.0
GATEWAY=172.24.8.2
[root@localhost ~]# vi /etc/udev/rules.d/70-persistent-net.rules
# PCI device 0x1af4:0x1000 (virtio-pci)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="52:54:00:b0:6b:dc", ATTR{type}=="", KERNEL=="eth*", NAME="eth0"
[root@localhost ~]# shutdown -r now #重启生效

提示:

1:若局域网内存在DHCP可开启,若不存在,可配置和宿主机同网段的静态IP。

#ifconfig eth0 up

#dhclient eth0

2:Mac地址需要和kvm的xml配置文件中一直,全局唯一,查看地址为<mac address='52:54:00:b0:6b:dc'/>。

3:建议修改IP、MAC、UUID等信息,防止和源主机冲突。

二 异机之间克隆

2.1 查看虚拟机配置

  • 源主机名:vm01-centos6.8
  • 源主机配置文件:/etc/libvirt/qemu/vm01-centos6.8.xml
  • 源主机磁盘文件:/data/images/vm01-centos6.8.img
  • 克隆主机名:vm03-centos6.8
  • 克隆主机配置文件:/etc/libvirt/qemu/vm03-centos6.8.xml
  • 克隆主机磁盘文件:/data/images/vm03-centos6.8.img

建议:建议克隆的时候关机操作,也可挂起状态。

2.1 复制配置文件

 [root@kvm-host ~]# virsh dumpxml vm01-centos6.8 > /etc/libvirt/qemu/vm03-centos6.8.xml

2.2 复制磁盘文件

 [root@kvm-host ~]# cp /data/images/vm01-centos6.8.img /data/images/vm03-centos6.8.img

2.3 修改相关配置信息

 [root@kvm-host ~]# vi /etc/libvirt/qemu/vm03-centos6.8.xml
……
<name>vm03-centos6.8</name>
<uuid>1a35bbaf-988f-4467-abe4-5e43a97094cd</uuid>
……
<source file='/data/images/vm03-centos6.8.img'/>
……
<graphics type='vnc' port='5903' autoport='no' listen='0.0.0.0'>
……
<mac address='52:54:00:7d:99:10'/>
……

注意:需要将以上相关参数修改为和源虚机不一致。

2.4 重新定义新虚机配置

 [root@kvm-host ~]# virsh define /etc/libvirt/qemu/vm03-centos6.8.xml

2.5 启动新虚机

 [root@kvm-host ~]# virsh start vm03-centos6.8

2.6 进入新虚机并配置

 [root@kvm-host ~]# virsh console vm03-centos6.8

略,参考1.3.

006.KVM虚机克隆的更多相关文章

  1. 远程管理 KVM 虚机 - 每天5分钟玩转 OpenStack(5)

    上一节我们通过 virt-manager 在本地主机上创建并管理 KVM 虚机.其实 virt-manager 也可以管理其他宿主机上的虚机.只需要简单的将宿主机添加进来 填入宿主机的相关信息,确定即 ...

  2. 启动第一个 KVM 虚机 - 每天5分钟玩转 OpenStack(4)

    本节演示如何使用 virt-manager 启动 KVM 虚机. 首先通过命令 virt-manager 启动图形界面 # virt-manager 点上面的图标创建虚机 给虚机命名为 kvm1,这里 ...

  3. KVM 介绍(8):使用 libvirt 迁移 QEMU/KVM 虚机和 Nova 虚机 [Nova Libvirt QEMU/KVM Live Migration]

    学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分 ...

  4. KVM 介绍(6):Nova 通过 libvirt 管理 QEMU/KVM 虚机 [Nova Libvirt QEMU/KVM Domain]

    学习 KVM 的系列文章: (1)介绍和安装 (2)CPU 和 内存虚拟化 (3)I/O QEMU 全虚拟化和准虚拟化(Para-virtulizaiton) (4)I/O PCI/PCIe设备直接分 ...

  5. KVM(六)Nova 通过 libvirt 管理 QEMU/KVM 虚机

    1. Libvirt 在 OpenStack 架构中的位置 在 Nova Compute 节点上运行的 nova-compute 服务调用 Hypervisor API 去管理运行在该 Hypervi ...

  6. 启动第一个 KVM 虚机

    本节演示如何使用 virt-manager 启动 KVM 虚机. 首先通过命令 virt-manager 启动图形界面 1 # virt-manager 点上面的图标创建虚机 给虚机命名为 kvm1, ...

  7. 远程管理 KVM 虚机

    上一节我们通过 virt-manager 在本地主机上创建并管理 KVM 虚机.其实 virt-manager 也可以管理其他宿主机上的虚机.只需要简单的将宿主机添加进来 填入宿主机的相关信息,确定即 ...

  8. O005、远程管理 KVM 虚机

    参考https://www.cnblogs.com/CloudMan6/p/5256018.html   上一节我们通过 virt-manager 在本地主机上创建并管理 KVM 虚机,其实 virt ...

  9. O004、启动第一个KVM虚机

    参考https://www.cnblogs.com/CloudMan6/p/5249270.html   本节演示如何使用 virt-manager 启动 KVM 虚机,   提前下载一个 cirro ...

随机推荐

  1. Java体验的重点难点-----总结

    1.关于JVM原理:http://www.cnblogs.com/zhanglei93/p/6590609.html 2.关于垃圾收集机制:http://www.cnblogs.com/zhangle ...

  2. Java基础-SSM之Spring快速入门篇

    Java基础-SSM之Spring快速入门篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.    Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java ...

  3. 测试浏览器是否支持某个CSS属性

    花了几个小时写了个API,为了兼容多种用法和测试花了不少时间,求鞭打.嘲笑和建议. <!DOCTYPE HTML> <html lang="zh-CN"> ...

  4. php拾遗: 类型约束

    突然间什么都不想干,感觉就像来大姨夫一样..但是又不能断了每个工作日都写博客的习惯..所以今天水一下吧. PHP用了快2年了,但是这东西竟然第一次看到,突然间,觉得自己有掉回战五渣的行列了.翻开官方文 ...

  5. Vue模板语法V-bind

    一.插值 1.文本 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://w ...

  6. GBDT理解

    一.提升树 提升方法实际采用加法模型(即基函数的线性组合)与前向分布算法.以决策树为基函数的提升方法称为提升树,boosting tree.对分类问题的决策树是二叉分类树,对回归问题的决策树是二叉回归 ...

  7. 20155303 实验四 Android程序设计

    20155303 实验四 Android程序设计 目录 第24章:初识Android 任务一: 完成Hello World, 要求修改res目录中的内容,Hello World后要显示自己的学号 学习 ...

  8. 【API】文件操作编程基础-CreateFile、WriteFile、SetFilePointer

    1.说明 很多黑客工具的实现是通过对文件进行读写操作的,而文件读写操作实质也是对API函数的调用. 2.相关函数 CreateFile : 创建或打开文件或I/O设备.最常用的I/O设备如下:文件,文 ...

  9. windows下使用pip安装python模块lxml

    pip install lxml 1 1 会有如下问题:  结果一路解决下去,解决了一个坑还是有一个坑,遂放弃,查找有没有别的解决办法. 亲测使用wheel+pip可以成功安装lxml! wheel本 ...

  10. ASP.NET MVC3 Model的常用验证示例

    1.金额(10位整数,2位小数) #region 余额 /// <summary> /// 余额 /// </summary> [DisplayName("余额&qu ...