KVM的虚拟化和克隆

简介: KVM的虚拟化和克隆

1 首先在VMware workstation配置一台虚拟机

在VMware workstation安装一台图形化虚拟机,虚拟机的内存,cpu,磁盘尽可能给的足够大,我写这个博客选择的是内存12GB,处理器8个,硬盘100GB开启设备前,一定记得点击硬件设置,勾选虚拟化引擎!如图

fa6128f02d30486ca11bbf54f6538b0e.png

2 安装kvm

2.1 首先查看cpu是否支持虚拟化

cat /proc/cpuinfo | grep -E 'vmx|svm'

2.2 关闭防火墙和selinux

2.3

yum -y install qemu-kvm libvirt virt-manager  librbd1-devel virt-install

(注:qemu-kvm:主包 libvirt:api接口 virt-manager:图形化界面


kvm技术中用到了qemu+kvm,其中kvm负责cpu虚拟化+内存虚拟化但无法模拟其他设备;qemu模拟IO设备(网卡,磁盘)kvm+qemu能实现服务器虚拟化。libvirt则是调用kvm虚拟技术的接口用于管理)

2.4 启动服务,查看kvm模块,如果加载成功则软件安装完成

systemctl start libvirtd
lsmod | grep kvm


正常显示如下:

e52b2f5ee86c437c87b60d8a567854e8.png

3 文本安装虚拟机,mount宿主机iso

本次实验中,我用的ftp方式安装,所以我将宿主机的镜像,挂载到了/var/ftp/下的新建目录中。操作命令如下:

yum install -y vsftpd
systemctl start vsftpd
mkdir /var/ftp/zhu03
mount /dev/cdrom /var/ftp/zhu03
virt-install --connect qemu:///system -n zhu03 -r 2050 --disk path=/var/lib/libvirt/images/zhu03.img,size=5  --os-type=linux --os-variant=centos7.0 --vcpus=1  --location=ftp://192.168.123.133/zhu03 -x console=ttyS0 --nographics

(磁盘大小,和内存看个人需求来选择)

接下来会出现文本安装的界面,按照操作点击即可(附上操作图片)

d4a3ee20276b4e59957500f67c3c8c5d.pnga852210839b24049a0b56536f670b326.png

(数字前面的!转变为x,即完成选项,除了digit9可以空着,其他八项要全部操作完毕才可以开始install,没选完一个数字,配置完成记得按c 继续下一步。后面操作省略)

如果显示安装完成,按enter进入,输入root的用户密码即可

4 cp配置文件和镜像,来克隆安装虚拟机

首先,kvm的配置文件存在于/etc/libvirt/qemu/ 磁盘文件存在于/var/lib/libvirt/images/

也就是说,想要克隆一台虚拟机,只需要cp出一份配置文件,一份磁盘文件即可,不过配置文件的一些参数需要进行修改

我已经有了zhu03,对应就会有zhu03.img和zhu03.xml。通过这种方式cp创建名字为zhu04的虚拟机的img和配置文件,操作如下

cp /etc/libvirt/qemu/zhu03.xml /etc/libvirt/qemu/zhu04.xml
cp /var/lib/libvirt/images/zhu03.img /var/lib/libvirt/images/zhu04.img 

zhu04.xml的参数需要修改,如虚拟机名字,mac地址,uuid序列号需要不一样,磁盘镜像把刚刚cp的镜像写上去。uuid可以自己修改几个符号,也可以通过命令随机创建一个uuid

uuidgen

0fc3c5554e7c4e7b9c98b9b99a018beb.png

其他两个地方如图提示(内存磁盘大小,自己可以根据需要修改,我提到的四处是必须修改37c3865684494b2eb24981faab5625de.png

af9074d78ca349cfa2b2471bbcdb95b7.png定位到disk,修改img名称)

30224ce6fccb4d9fb8a9290bb2005ff7.png配置文件修改完毕,刷新一下zhu04文件,重新启动libvirtd,kvm克隆完成

virsh define /etc/libvirt/qemu/vm4.xml
systemctl restart libvirtd


5 克隆的kvm无网络连接的解决方案

通过cp配置文件和镜像的虚拟机无法上网,需要在宿主机上开启路由转发功能

vim /etc/sysctl.conf

在配置文件中,加入一条命令

net.ipv4.ip_forward=1

此时,virt-manager 打开zhu04,上网正常

(kvm创建的虚拟机默认是nat网络模式)

6 命令行克隆

virt-clone -o vm2 --auto-clone

正在分配 ‘vm2-clone.qcow2’ | 5.0 GB 00:00

成功克隆 ‘vm2-clone’。

-o

origin-原始

virt-clone -o vm2 -n vm5 --auto-clone

正在分配 ‘vm5.qcow2’ | 5.0 GB 00:00

成功克隆 ‘vm5’。

-n :指定新客户机的名字

virt-clone -o vm2 -n vm6 -f /var/lib/libvirt/images/vm6.img

正在分配 ‘vm6.img’ | 5.0 GB 00:00

成功克隆 ‘vm6’。

-f ,–file

NEW_DISKFILE:为新客户机使用新的磁盘镜像文件

这条命令在克隆的同时,可以指定镜像文件的位置和名称。

7629058707)]

正在分配 ‘vm6.img’ | 5.0 GB 00:00

成功克隆 ‘vm6’。

-f ,–file

NEW_DISKFILE:为新客户机使用新的磁盘镜像文件

这条命令在克隆的同时,可以指定镜像文件的位置和名称。

图形化克隆kvm省略

目录
相关文章
|
机器学习/深度学习 Linux KVM
Debian11安装KVM虚拟化并安装Centos
grep --color --perl-regexp 'vmx | svm' /proc/cpuinfo 首先检查其是否支持虚拟化. 分别用以下条命令查看
1108 0
Debian11安装KVM虚拟化并安装Centos
|
机器学习/深度学习 存储 Linux
CentOS 7 部署 KVM 虚拟化
CentOS 7 部署 KVM 虚拟化
618 0
|
安全 IDE KVM
[ 云计算相关 ] KVM虚拟化平台windows虚拟机迁移到openstack虚拟化平台(KVM虚拟化环境中Windows虚拟机安装Virtio驱动程序)
KVM虚拟化平台windows虚拟机迁移到openstack虚拟化平台(KVM虚拟化环境中Windows虚拟机安装Virtio驱动程序) 因为这也不是我的本职工作,只是这次恰巧碰到了,帮着解决了以下,我就没深究原理了,问我原理可能我也不知道,只是这个操作步骤吧,亲测有效。
448 0
[ 云计算相关 ] KVM虚拟化平台windows虚拟机迁移到openstack虚拟化平台(KVM虚拟化环境中Windows虚拟机安装Virtio驱动程序)
|
10月前
|
存储 监控 网络安全
【KVM虚拟化】· 虚拟机的冷迁移和热迁移
【KVM虚拟化】· 虚拟机的冷迁移和热迁移
825 0
|
10月前
|
KVM 虚拟化 Windows
【KVM虚拟化】· KVM中的网络
【KVM虚拟化】· KVM中的网络
192 0
|
10月前
|
存储 KVM 文件存储
【KVM虚拟化】· 存储池、存储卷
【KVM虚拟化】· 存储池、存储卷
358 0
|
10月前
|
存储 监控 安全
【KVM虚拟化】· virsh文件管理
【KVM虚拟化】· virsh文件管理
295 0
|
10月前
|
XML Shell API
【KVM虚拟化】· virsh管理命令
【KVM虚拟化】· virsh管理命令
231 0
|
10月前
|
XML 存储 安全
【KVM虚拟化】· 命令行KVM安装linux
【KVM虚拟化】· 命令行KVM安装linux
125 0
|
10月前
|
存储 安全 Linux
【KVM虚拟化】· 图形化KVM安装linux
【KVM虚拟化】· 图形化KVM安装linux
189 0

相关课程

更多