1、在克隆虚拟机之前,必须先暂停或者停掉kvm 虚拟机。以虚拟机 snale 为例,先暂停虚拟机,如下

  1. [root@kvm ~ ::]#virsh list
  2. Id 名称 状态
  3. ----------------------------------------------------
  4. snale running
  5.  
  6. [root@kvm ~ ::]#virsh suspend snale
  7. snale 被挂起
  8.  
  9. [root@kvm ~ ::]#virsh list
  10. Id 名称 状态
  11. ----------------------------------------------------
  12. snale 暂停

第一种方法:针对虚拟机本身直接克隆:

1、执行命令virt-clone

  1. [root@kvm ~ ::]#virt-clone -o snale -n snale_clone -f /kvm3/snale_clone.img
  2. 正在克隆 snale.img | GB :
  3.  
  4. Clone 'snale_clone' created successfully.

参数说明:

  1. -o :指定源虚拟机
  2. -n :命名新克隆的虚拟机
  3. -f :指定新克隆虚拟机的位置

克隆完成后,在生成硬盘映像文件的同时,也会克隆虚拟机的配置文件:

  1. [root@kvm ~ ::]#ls /kvm3
  2. snale_clone.img
  3. [root@kvm ~ ::]#ls /etc/libvirt/qemu
  4. autostart networks snale2.xml snale_clone.xml snale.xml

查看各虚拟机的状态:

  1. [root@kvm ~ ::]#virsh list --all
  2. Id 名称 状态
  3. ----------------------------------------------------
  4. snale 暂停
  5. - snale2 关闭
  6. - snale_clone 关闭

2、启动新克隆的虚拟机,配置计算机名及IP地址:

  1. [root@kvm ~ ::]#virsh start snale_clone
  2. 错误:开始域 snale_clone 失败
  3. 错误:internal error process exited while connecting to monitor: char device redirected to /dev/pts/
  4. --29T09::.983409Z qemu-kvm: Failed to start VNC server on `0.0.0.0:': socket bind failed: Address already in use

此时是无法启动的,要先修改它的配置文件,更改VNC端口,将port从5901改成5903

  1. [root@kvm qemu ::]#virsh edit snale_clone
  2. 编辑了域 snale_clone XML 配置。
  3.  
  4. [root@kvm qemu ::]#
  5. [root@kvm qemu ::]#virsh start snale_clone
  6. snale_clone 已开始
  7.  
  8. [root@kvm qemu ::]#virsh list
  9. Id 名称 状态
  10. ----------------------------------------------------
  11. snale 暂停
  12. snale_clone running

此时我们就可以登录虚拟机进行配置了!

由于虚拟机是centos 6 系列的。克隆进行网络配置,别忘记了修改 /etc/udev/rules.d/70-persistent-net.rules 文件。

第二种方法:复制kvm虚拟机配置文件及磁盘映象文件克隆

1 导出虚拟机 snale 的配置文件到 /etc/libvirt/qemu 目录下并重命名为 snale_cp.xml:

  1. [root@kvm kvm3 ::]#virsh dumpxml snale >/etc/libvirt/qemu/snale_cp.xml
  1. [root@kvm kvm3 ::]#ls /etc/libvirt/qemu
  2. autostart networks snale2.xml snale_cp.xml snale.xml

2 复制kvm 虚拟磁盘文件到 /data/kvm/image 目录下并重命名为snale_cp.img:

  1. [root@kvm ~ ::]#cp /kvm/image/snale.img /kvm3/snale_cp.img
  2. [root@kvm ~ ::]#ls /kvm3
  3. snale_cp.img

3使用vi 或vim 编辑新虚拟机的主配置文件 snale_cp.xml (注:由于此时的虚拟机还未注册,所以暂时不支持virsh edit 编译),修改name,uuid,disk位置,vnc端口:

  1. [root@kvm qemu ::]#vim snale_cp.xml

修改name标签

  1. <name>snale_cp</name>

uuid,随意改下数值

  1. <uuid>192fdc94-c81b-fa35--0c073eee2c27</uuid>

disk标签

  1. <disk type='file' device='disk'>
  2. <driver name='qemu' type='raw' cache='none'/>
  3. <source file='/kvm3/snale_cp.img'/>

vnc port 唯一值,不要重复

  1. <graphics type='vnc' port='' autoport='no' listen='0.0.0.0'>

:wq

4、注册新的虚拟机;

  1. [root@kvm qemu ::]#virsh define /etc/libvirt/qemu/snale_cp.xml
  2. 定义域 snale_cp(从 /etc/libvirt/qemu/snale_cp.xml

5、启动snale_cp:

  1. [root@kvm qemu ::]#virsh start snale_cp
  2. snale_cp 已开始
  1. [root@kvm qemu ::]#netstat -lntp|grep
  2. tcp 0.0.0.0: 0.0.0.0:* LISTEN /qemu-kvm

KVM之七:KVM克隆的更多相关文章

  1. 关于kvm虚拟机的克隆方法总结

    kvm虚拟机的克隆分为两种情况,第一种kvm宿主机上对虚拟机直接克隆 第二种通过复制配置文件与磁盘文件的虚拟机复制克隆(适用于异机的静态迁移). 现笔者将分别两种kvm虚拟机克隆的的详细操作过程都记录 ...

  2. kvm虚拟机的克隆

    kvm虚拟机的克隆分为两种情况 (1) KVM主机本机虚拟机直接克隆. (2) 通过复制配置文件与磁盘文件的虚拟机复制克隆(适用于异机的静态迁移). 1.  本机虚拟机直接克隆 (1) 查看虚拟机配置 ...

  3. 转:KVM 虚拟机的克隆

    KVM 虚拟机的克隆 首先把需要克隆的源虚拟机先关闭,然后使用以下命令来进行克隆,注意我这里使用的是相对路径.   virsh shutdown VM02 virt-clone -o VM02 -n ...

  4. CentOS 7 安装配置KVM 通过KVM安装CentOS系统

    搭建环境 : CentOS 7 [root@KVM ~]# systemctl stop firewalld [root@KVM ~]# systemctl disable firewalld [ro ...

  5. [qemu][kvm] 在kvm嵌套kvm的虚拟机里启动kvm加速

    常规情况下,如果在kvm的虚拟机里,又想使用kvm的虚拟机,会报如下的错误信息: [root@host0 nlb]# Could not access KVM kernel module: No su ...

  6. KVM到KVM之v2v迁移

    1.源KVM虚拟主机node1 (1).查看源KVM虚拟主机上的虚拟机列表,本文计划将oeltest01虚拟机迁移到其它KVM虚拟主机中. (2).查看oeltest01虚拟机磁盘文件位置/data/ ...

  7. kvm虚拟机最佳实践系列2-创建KVM及KVM优化

    创建KVM及KVM优化 把KVM优化与KVM创建放在一起,是因为我们创建的KVM是要用在生产环境中,所以基础优化工作是必备的. 创建KVM 创建系统盘, 大小: 操作系统通常都不到10G,所以系统盘2 ...

  8. VMWare、KVM、Virtualbox克隆或复制Linux虚拟机后eth0找不到的解决方案

    快速处理办法: cat /etc/sysconfig/network-scripts/ifcfg-eth0 sed -i '/UUID/d' /etc/sysconfig/network-script ...

  9. 006.KVM虚机克隆

    一 KVM宿主机内克隆 1.1 查看虚拟机配置 [root@kvm-host ~]# cat /etc/libvirt/qemu/vm01-centos6.8.xml ………… [root@kvm-h ...

随机推荐

  1. R语言︱R社区的简单解析(CRAN、CRAN Task View)

    笔者寄语:菜鸟笔者一直觉得r CRAN离我们大家很远,在网上也很难找到这个社区的全解析教程,菜鸟我早上看到一篇文章提到了这个,于是抱着学渣学习的心态去看看这个社团的磅礴.威武. CRAN(The Co ...

  2. linux下自动加载设备驱动程序模块

    假设你的设备驱动程序为:yourdrivername.ko  1 cp yourdrivername.ko /lib/modules/"version"/kernel/driver ...

  3. Count:2org.apache.batik.transcoder.TranscoderException: null

    1.错误描述 Count:2org.apache.batik.transcoder.TranscoderException: null Enclosed Exception: The current ...

  4. Linux显示列出块设备

    Linux显示列出块设备 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOI ...

  5. Caused by: java.lang.ClassNotFoundException: org.springframework.orm.hibernate4.HibernateTemplate

    1.错误描述 严重: Context initialization failed org.springframework.beans.factory.CannotLoadBeanClassExcept ...

  6. Java中的表达式运算

    1.问题背景    以下代码运行的结果为:    A.a的值:8   b的值:7           B.a的值:8  b的值:8    C.a的值:9   b的值:7           D.a的值 ...

  7. TypeError: Error #1034: 强制转换类型失败:无法将 "0.49" 转换为 mx.graphics.IFill。

    1.错误描述 TypeError: Error #1034: 强制转换类型失败:无法将 "0.49" 转换为 mx.graphics.IFill. at mx.charts.ser ...

  8. idea好用插件(一)

    代码规范插件 Alibaba Java Coding Guidelines 安装后 可以在文件.文件夹邮件,显示编码规约扫描,点击后显示 可以通过双击定位问题代码,对某些问题可以进行快速的修复 比如: ...

  9. 【转载】Apache Storm 官方文档 —— 基础概念

    [转载自https://yq.aliyun.com/articles/87510?t=t1] Storm 系统中包含以下几个基本概念: 拓扑(Topologies) 流(Streams) 数据源(Sp ...

  10. 【BZOJ4916】神犇和蒟蒻(杜教筛)

    [BZOJ4916]神犇和蒟蒻(杜教筛) 题面 BZOJ 求 \[\sum_{i=1}^n\mu(i^2)\ \ 和\ \sum_{i=1}^n\phi(i^2)\] 其中\[n<=10^9\] ...