操作前先关闭虚拟机

虚拟机的克隆

一、命令行克隆virt-clone(方法一)

virt-clone -o vm1 -n vm2 -f /kvmdata/vm2.img

参数说明:

  • -o:指定需要被clone的虚拟机
  • -n:命名clone后的虚拟机名称
  • -f:指定新clone的虚拟机的位置或者说是使用新的磁盘镜像文件

完成上面命令执行后,同时在/etc/libvirt/qemu下也会生成privi-server_clone.xml文件

操作演示:

1、克隆前必须先关机

[root@kvmserver ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
3 centos7.0-2 running [root@kvmserver ~]# virt-clone -o centos7.0-2 --auto-clone

ERROR 必须暂停或者关闭有要克隆设备的域。

在这里克隆之前必须先关机

[root@kvmserver ~]# virsh shutdown centos7.0-2

域 centos7.0-2 被关闭

2、不加参数克隆,导致没有改名

[root@kvmserver ~]# virt-clone -o centos7.0-2 --auto-clone
正在分配 'centos7.0-2-clone.qcow2' | 10 GB 00:00:43

成功克隆 'centos7.0-2-clone'。

[root@kvmserver ~]# virsh list --all

Id 名称 状态

  • centos7.0-2                    关闭
  • centos7.0-2-clone              关闭

上面虽然克隆成功了,但是名字没改,它自动帮我们起了名字centos7.0-2-clone

3、克隆并改名

virt-clone -o centos7.0-2 -n centos7-2 --auto-clone

-n 意思是改名

[root@kvmserver ~]# virt-clone -o centos7.0-2 -n centos7-2 --auto-clone
正在分配 'centos7-2.qcow2' | 10 GB 00:01:18

成功克隆 'centos7-2'。

[root@kvmserver ~]# virsh list --all

Id 名称 状态

  • centos7-2                      关闭
  • centos7.0-2                    关闭
  • centos7.0-2-clone              关闭

4、克隆时使用新的磁盘镜像文件

 virt-clone -o centos7.0-2 -n centos7-2 -f /var/lib/libvirt/images/centos7-4.qcow4 --auto-clone

-f 是指在克隆时使用新的磁盘镜像文件

[root@kvmserver ~]#  virt-clone -o centos7.0-2 -n centos7-4 -f /var/lib/libvirt/images/centos7-4.qcow4 --auto-clone
正在分配 'centos7-4.qcow4' | 10 GB 00:00:46 成功克隆 'centos7-4'。

[root@kvmserver ~]# virsh list --all

Id 名称 状态

  • centos7-2                      关闭
  • centos7-4                      关闭
  • centos7.0-2                    关闭
  • centos7.0-2-clone              关闭

克隆的过程中自动修改了MAC、UID、NAME等,这些冲突的参数。

二、手动克隆(方法二)

复制kvm虚拟机配置文件及磁盘映象文件克隆

共4个步骤:

  • 进入 /etc/libvirt/qemu 目录
  • 复制虚拟机配置文件 vm1.xmlvm2.xml
  • 复制磁盘镜像vm1为vm2
  • vm2.xml进行修改

手动必须修改的地方:
UID、name、MAC 这三个是必须要更改的。否则会冲突
可选修改:cpu、内存,我这里就不改了。


具体操作:

1、复制配置文件

[root@kvmserver /]# cd /etc/libvirt/qemu
[root@kvmserver qemu]# cp centos7.0-01.xml centos7.0-02.xml
[root@kvmserver qemu]# vim centos7.0-02.xml

修改就按上面介绍的方法修改三个地方即可,cpu和内存我们就不修改了。

2、复制磁盘镜像文件

[root@kvmserver qemu]# cd /kvmdata/
[root@kvmserver kvmdata]# ll
总用量 1633616
-rw------- 1 root root 21478375424 9月 17 14:55 centos7.0-01.qcow2
[root@kvmserver kvmdata]# cp centos7.0-01.qcow2 centos7.0-02.qcow2

3、创建虚拟机并重启

virsh define /etc/libvirt/qemu/centos7.0-02.xml
systemclt restart libvirtd

三、开启路由转发

vim /etc/sysctl.conf

末尾添加
net.ipv4.ip_forward = 1

刷新配置

sysctl -p

四、测试

成功开启,但是计算机名还是centos7-01,修改成02以免冲突。

接下来我们把两台都开启

完美开启

</article>

[转帖]07、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. kvm虚拟机的克隆以及快照

    克隆(常见有3种方法) 1 直接克隆(克隆虚拟机使用自己的磁盘) virt-clone -o vm-01 -n vm-02 -f /kvm/os/vm-02.qcow2 virsh start vm- ...

  5. 烂泥:KVM虚拟机克隆

    本文由秀依林枫提供友情赞助,首发于烂泥行天下. 上一篇文章介绍了有关KVM虚拟机快照的创建与恢复,这篇文章我们来介绍有关KVM虚拟机克隆. KVM虚拟机的克隆,我们可以分以下几步: 1. 使用virt ...

  6. Linux中如何克隆KVM虚拟机

    转载:https://yq.aliyun.com/articles/64860 作者 digoal 日期 2016-11-11 标签 Linux , KVM , 虚拟化 , 克隆 背景 当需要批量部署 ...

  7. kvm虚拟化之kvm虚拟机克隆

    kvm虚拟机的克隆分为两种情况,本文也就通过以下两种情况进行克隆,克隆虚拟机为OEL5.8X64. (1) KVM主机本机虚拟机直接克隆. (2) 通过复制配置文件与磁盘文件的虚拟机复制克隆(适用于异 ...

  8. CentOS 6.9下KVM虚拟机通过virt-clone克隆虚拟机(转)

    一.virt-clone概述 1.virt-clone作用简介 virt-clone主要是用来克隆kvm虚拟机,并且通过Options.General Option.Storage Configura ...

  9. 如何克隆kvm虚拟机

    关于如何使用kvm虚拟化技术创建虚拟机,这里有一系列博客讲的已经非常清楚了,这里不再赘述,不过其中有些小坑可能需要大家注意: 0. 写在创建虚拟机之前(即教程的系列三之前) 1. 确认防火墙是否关闭, ...

  10. KVM虚拟机管理——虚拟机克隆

    1. 概述2. 部署基本操作系统虚拟机3. 配置虚拟机3.1 修改/etc/sysconfig/network3.2 删除/etc/sysconfig/network-scripts/ifcfg-et ...

随机推荐

  1. 现代 CSS 解决方案:文字颜色自动适配背景色!

    在 23 年的 CSS 新特性中,有一个非常重要的功能更新 -- 相对颜色. 简单而言,相对颜色的功能,让我们在 CSS 中,对颜色有了更为强大的掌控能力. 其核心功能就是,让我们能够基于一个现有颜色 ...

  2. 新版的Django中的path不能使用正则表达式

    新版的path 虽然 取代了 之前的url,但是在写路由的时候不能在路由中直接写正则表达式,不然会找不到页面. 解决方法使用 re_path from django.urls import re_pa ...

  3. 用 Socket.D 替代原生 WebSocket 做前端开发

    socket.d.js 是基于 websocket 包装的 socket.d 协议的实现.就是用 ws 传输数据,但功能更强大. 功能 原生 websocket socket.d 说明 listen ...

  4. Spring Boot入坑-1-入坑准备&Spring简介

    [写在前面] 长期做基于Spring Boot的企业应用,计划将与应用相关的技术点,通过简介.步骤.示例的方式,记录并分享出来,用于作为Spring Boot入门的记录与教程 计划的内容有: Spri ...

  5. Mybatis源码3 CachingExecutor, 二级缓存,缓存的实现

    Mybatis CachingExecutor, 二级缓存,缓存的实现 一丶二级缓存概述 上一章节,我们知道mybaits在构造SqlSession的时候,需要让SqlSession持有一个执行器,如 ...

  6. SQLite3使用笔记(2)——插入

    目录 1. 论述 2. 总结 1. 论述 如同上一篇文章SQLite3使用笔记(1)--查询所述,使用SQLite进行查询操作同样有两种方式.对于比较简单的表格插入,使用sqlite3_exec()接 ...

  7. 华为云如何赋能无人车飞驰?从这群AI热血少年谈起

    摘要:由华为云携手上海交通大学学生创新中心举办的"第二届华为云人工智能大赛 · 无人车挑战杯"中,来自电子科技大学的"暑期休闲队"获得大赛季军. 由华为云携手上 ...

  8. 细说Python Lambda函数的用法,建议收藏!

    摘要:今天我就和大家聊聊lambda函数,在Python编程中,大家习惯将其称为表达式. 名称是用于引用或寻址任何实体的约定.我们周围的几乎所有事物都有名字.编程领域也与此一致.但这是必须命名的吗?还 ...

  9. 火山引擎DataLeap的Data Catalog系统公有云实践

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 Data Catalog是一种元数据管理的服务,会收集技术元数据,并在其基础上提供更丰富的业务上下文与语义,通常支 ...

  10. 不知如何优选达人?火山引擎 VeDI 零售行业解决方案一键解决!

      技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 "人-货匹配"这句营销老话,在直播电商兴起的这几年,似乎不再专指消费者与商品之间的关系. 过去 ...