006.KVM虚机克隆
一 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虚机克隆的更多相关文章
- 远程管理 KVM 虚机 - 每天5分钟玩转 OpenStack(5)
上一节我们通过 virt-manager 在本地主机上创建并管理 KVM 虚机.其实 virt-manager 也可以管理其他宿主机上的虚机.只需要简单的将宿主机添加进来 填入宿主机的相关信息,确定即 ...
- 启动第一个 KVM 虚机 - 每天5分钟玩转 OpenStack(4)
本节演示如何使用 virt-manager 启动 KVM 虚机. 首先通过命令 virt-manager 启动图形界面 # virt-manager 点上面的图标创建虚机 给虚机命名为 kvm1,这里 ...
- 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设备直接分 ...
- 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设备直接分 ...
- KVM(六)Nova 通过 libvirt 管理 QEMU/KVM 虚机
1. Libvirt 在 OpenStack 架构中的位置 在 Nova Compute 节点上运行的 nova-compute 服务调用 Hypervisor API 去管理运行在该 Hypervi ...
- 启动第一个 KVM 虚机
本节演示如何使用 virt-manager 启动 KVM 虚机. 首先通过命令 virt-manager 启动图形界面 1 # virt-manager 点上面的图标创建虚机 给虚机命名为 kvm1, ...
- 远程管理 KVM 虚机
上一节我们通过 virt-manager 在本地主机上创建并管理 KVM 虚机.其实 virt-manager 也可以管理其他宿主机上的虚机.只需要简单的将宿主机添加进来 填入宿主机的相关信息,确定即 ...
- O005、远程管理 KVM 虚机
参考https://www.cnblogs.com/CloudMan6/p/5256018.html 上一节我们通过 virt-manager 在本地主机上创建并管理 KVM 虚机,其实 virt ...
- O004、启动第一个KVM虚机
参考https://www.cnblogs.com/CloudMan6/p/5249270.html 本节演示如何使用 virt-manager 启动 KVM 虚机, 提前下载一个 cirro ...
随机推荐
- spring hibernate实现动态替换表名(分表)
1.概述 其实最简单的办法就是使用原生sql,如 session.createSQLQuery("sql"),或者使用jdbcTemplate.但是项目中已经使用了hql的方式查询 ...
- dedecms添加文章时提示标题为空,编辑文章时编辑器空白的解决办法
dedecms添加文章时提示标题为空,编辑文章时编辑器空白的解决办法 dedecms出现这个问题与代码无关,主要是和PHP的版本有关,用的PHP5.4,更换成PHP5.2之后就不会有这个问题了. 问题 ...
- 管理KVM虚拟机(二)
管理KVM虚拟机 工具:libvirt 官网:http://libvirt.org/ 介绍:Libvirt 库是一种实现 Linux 虚拟化功能的 Linux® API,它支持各种虚拟机监控程序,包括 ...
- python教程1:Python基础之数据类型和变量、字符串和编码
视频链接:http://www.bilibili.com/video/av10730372/ 我是在Linux下玩python的,Linux下默认安装python,直接打个pyhon3就好了,pyth ...
- 并查集:POJ 1182 食物链 复习
#include <iostream> #include <algorithm> #include <cstring> #include <cstdlib&g ...
- systemd的电源管理
ArchLinux早就使用systemd替代了init脚本. 不用图形界面.或者使用 i3.awesome 这样简单的窗口管理器时,systemd 可以替代 acpid 处理 ACPI 事件. 注意: ...
- 20155314 2016-2017-2 《Java程序设计》第6周学习总结
20155314 2016-2017-2 <Java程序设计>第6周学习总结 教材学习内容总结 理解流与IO 理解InputStream/OutPutStream的继承架构 理解Reade ...
- Anaconda+django写出第一个web app(六)
今天学习如何写一个注册用户的界面. 上一节的导航栏中我们修改了导航栏右侧的文字为register并将路径设置为/register,内容如下: <li><a href="/r ...
- lucene查询索引之QueryParser解析查询——(八)
0.语法介绍:
- Phantomjs 抓取、分析某个页面加载时浏览器发起的所有的子请求
var page = require('webpage').create(), system = require('system'), address; if (system.args.length ...