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省略

目录
相关文章
|
2天前
|
安全 Linux KVM
Linux虚拟化技术:从Xen到KVM
Xen和KVM是Linux平台上两种主要的虚拟化技术,各有优缺点和适用场景。通过对比两者的架构、性能、安全性、管理复杂性和硬件依赖性,可以更好地理解它们的适用场景和选择依据。无论是高性能计算、企业虚拟化还是云计算平台,合理选择和配置虚拟化技术是实现高效、稳定和安全IT环境的关键。
26 8
|
2月前
|
存储 Linux 调度
KVM 虚拟化的功能特性
【10月更文挑战第13天】虚拟化技术创建实体资源的虚拟版本,提升资源利用率。KVM(Kernel-based Virtual Machine)作为全虚拟化解决方案,借助Linux内核实现Hypervisor功能,通过模块化方式提供高效的虚拟化环境。
|
3月前
|
KVM 虚拟化
虚拟化技术概述及KVM环境安装
关于虚拟化技术概述及KVM环境安装的教程,涵盖了虚拟化的定义、分类、管理工具,以及KVM的系统需求、安装步骤和使用指南。
97 11
虚拟化技术概述及KVM环境安装
|
2月前
|
安全 KVM 虚拟化
OpenEuler 中配置 KVM 虚拟化环境指南
本文档详细介绍了如何在OpenEuler系统中配置和管理KVM虚拟化环境,包括环境准备、组件安装、虚拟机安装及管理命令等,适合初学者和有经验的用户。内容覆盖了从桥接网卡配置到虚拟机的安装与管理,以及常见问题的解决方法,帮助用户高效利用虚拟化技术。
153 0
|
4月前
|
Linux KVM 虚拟化
在Linux中,KVM和Docker在Linux虚拟化中的区别是什么?
在Linux中,KVM和Docker在Linux虚拟化中的区别是什么?
|
7月前
|
存储 Linux KVM
虚拟化技术之KVM安装与使用
虚拟化技术之KVM安装与使用
|
7月前
|
大数据 Linux KVM
【云计算与大数据技术】虚拟化技术、开源技术Xen、KVM、OpenVZ的讲解(图文解释 超详细)
【云计算与大数据技术】虚拟化技术、开源技术Xen、KVM、OpenVZ的讲解(图文解释 超详细)
288 0
|
存储 监控 网络安全
【KVM虚拟化】· 虚拟机的冷迁移和热迁移
【KVM虚拟化】· 虚拟机的冷迁移和热迁移
1284 0
|
KVM 虚拟化 Windows
【KVM虚拟化】· KVM中的网络
【KVM虚拟化】· KVM中的网络
281 0