KVM 实战虚拟机克隆

KVM克隆虚拟机

使用克隆的方式保存两台vm配置完全一致。

  • 暂停虚拟机(suspend)用于克隆
[root@sh-kvm-2 ~]# virsh suspend kvm-1
[root@sh-kvm-2 ~]# less /dev/vg_shkvm2/kvm-3
Domain kvm-1 suspended
  • 使用下面命令进行克隆
virt-clone \
 --connect qemu:///system \
 --original kvm-1 \
 --name kvm-3 \
 --file /dev/vg_shkvm2/kvm-3
 # 或者
 virt-clone --connect qemu:///system --original aniu-saas-1 --name aniu-saas-2 --file /dev/cl/aniu-saas-2 --check all=off
 # ERROR    This will overwrite the existing path '/dev/cl/aniu-saas-2' (Use --check path_exists=off or --check all=off to override)

此操作大概会持续两到三分钟,依赖于原生vm的大小

  • 克隆完成,可以重启原生虚拟机kvm-1
virsh resume kvm-1
  • 启动克隆的虚拟机(kvm-2)

克隆虚拟机是原始VM的一个副本,所有VM属性(VCPUs、内存、磁盘空间)和磁盘内容将是相同的。克隆命令负责生成一个新的MAC地址对于VM克隆并更新适当的网络控制器配置文件(即。因此避免重复的MAC地址,需要修改克隆虚拟机的MAC

[root@sh-kvm-2-1 ~]# ifconfig -a | grep HWaddr
eth1      Link encap:Ethernet  HWaddr 52:54:00:C3:87:E7
# 把查到的MAC地址添加到ifcfg-eth0,改掉原来的MAC地址,注释UUID,修改IPADDR,然后重启network
[root@sh-kvm-2-1 network-scripts]# cat ifcfg-eth0  # 修改完成后的eth0网卡配置文件
DEVICE="eth0"
BOOTPROTO="static"
BROADCAST="192.168.0.255"
DNS1="114.114.114.114"
GATEWAY="192.168.0.1"
HWADDR="52:54:00:C3:87:E7"
IPADDR="192.168.0.95"
NETMASK="255.255.255.0"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="050e9024-3a2b-46b8-a21f-2925aa7d4bec"
  • 重启网络报错
[root@sh-kvm-2-1 network-scripts]# /etc/init.d/network restart
Shutting down loopback interface:  [  OK  ]
Bringing up loopback interface:  [  OK  ]
Bringing up interface eth0:  Device eth0 does not seem to be present, delaying initialization.
[FAILED]

这种情况是网卡mac故障导致的,修复过程:

[root@sh-kvm-2-1 ~ ]# cd /etc/udev/rules.d
[root@sh-kvm-2-1 rules.d]# cat 70-persistent-net.rules # 编辑70-persistent-net.rules,修改eth0的MAC地址为上面通过ifconfig命令搜出来的

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", aTTR{address}=="52:54:00:C3:87:E7", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
# 修改完成,完后重启网络,成功
# 另一种方法:

rm -rf /etc/udev/rules.d/70-persistent-net.rules # 然后reboot重启即可

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏张戈的专栏

Linux下巧用chattr、watch命令的实例

一、起因 前些日子,张戈在日志备份服务器加入了日志压缩的计划任务(详见服务器日志备份超节省空间的思路),结果发现监控总是发来 tar 的报警,提示存在 tar ...

3318
来自专栏程序手艺人

mbed TLS 简明教程(二)

7345
来自专栏用户画像

Git冲突:commit your changes or stash them before you can merge.

git stash: 备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致。同时,将当前的工作区内容保存到Git栈中。 ...

562
来自专栏linux驱动个人学习

udev和devfs的区别

devfs(设备文件系统)是由Linux2.4内核引入的,它的出现主要使得设备驱动程序能够自主管理自己的设备文件。具体来说,devfs具有如下优点:

873
来自专栏L宝宝聊IT

Keepalived+双主实现mysql高可用

生产环境中一台 mysql 主机存在单点故障,所以我们要确保 mysql 的高可用性,即两台 MySQL服务器如果其中有一台 MySQL 服务器...

733
来自专栏散尽浮华

Centos7修改默认网卡名(改为eth0)以及网卡启动报错RTNETLINK answers: File exists处理

安装好centos7版本的系统后,发现默认的网卡名字有点怪,为了便于管理,可以手动修改。下面对centos7版本下网卡重命名操作做一记录: 1)编辑网卡信息 [...

2039
来自专栏Albert陈凯

2018-09-11 Svn升级Git不需要那么痛URL that points to a project root(may be the same as Subversion repository

一. 介绍 SubGit是用java语言编写的。SubGit是一种subversion与git代码库之间双向同步工具。如何在本地subversion版本库上安...

571
来自专栏FreeBuf

Word漏洞CVE-2017-0199剖析,微软的补丁你装了吗?

前言 近期,FireEye检测到了一种利用漏洞CVE-2017-0199的恶意OfficeRTF文档——本周早前FreeBuf也报道了这一漏洞,在无需启用Wor...

18810
来自专栏蓝天

crontab和crond分析

更好使用crontab,和解决crontab使用问题。本文分析的是Paul Vixie版本crontab和crond。一般可通过执行“man crontab...

412
来自专栏IPSecVPN

开源strongswan/openswan/ipsectools与腾讯云协商IPSEC VPN实操

写在最前面:在接入腾讯云的大量客户中,很多客户并不会购买专用的vpn硬件设备,而是使用第三方的开源软件,如strongswan,openswan,以及ipsec...

190

扫码关注云+社区