Linux系统KVM虚拟化自动部署

1.虚拟机安装rhel7

什么是虚拟化管理
将Linux真实主机里面的一些东西放到虚拟机上面去管理,虚拟机和真机二者功能差不多。真机为操作系统,占用磁盘空间大;虚拟机是一款软件,占用空间少,为了节省硬盘能源。
Linux系统KVM虚拟化自动部署_第1张图片
首先,确定所使用到的 CPU 必须支持 vmx 或 svm 这两个指令集中的一个,如果是英特尔的 CPU,则必须是 vmx,如果是AMD的CPU,则必须是svm。

查看本机CPU类型,发现本机CPU类型为Intel,并且支持指令集vmx

[kiosk@foundation50 ~]$ cat /proc/cpuinfo 

Linux系统KVM虚拟化自动部署_第2张图片

1.2虚拟机的手动安装
前提条件:虚拟机的安装镜像已经下载好,并且要明确存放的路径
说明:安装的是图形化的虚拟机
在真机里面的shell用root用户在里面输入virt-manager,并点击如下图标
Linux系统KVM虚拟化自动部署_第3张图片
设置虚拟机的名字,并选择使用本地文件安装(本地文件即iso文件)
Linux系统KVM虚拟化自动部署_第4张图片
Linux系统KVM虚拟化自动部署_第5张图片
对虚拟机的内存和核数进行设置

若需要安装图形,则内存至少为768M
Linux系统KVM虚拟化自动部署_第6张图片
存储空间设置

若需要安装图形存储空间至少需要5G
Linux系统KVM虚拟化自动部署_第7张图片
设置好的虚拟机硬件参数

打钩的地方为,安装虚拟机之前对硬件的信息进行查看和设定
Linux系统KVM虚拟化自动部署_第8张图片
硬件信息设定
Linux系统KVM虚拟化自动部署_第9张图片
Linux系统KVM虚拟化自动部署_第10张图片
设置完成后开始虚拟机的安装

完成后会弹出虚拟机的配置界面,选择7.3回车
Linux系统KVM虚拟化自动部署_第11张图片
语言选择
Linux系统KVM虚拟化自动部署_第12张图片
在日期时间,键盘,语言支持,安装源设置
Linux系统KVM虚拟化自动部署_第13张图片
Linux系统KVM虚拟化自动部署_第14张图片
Linux系统KVM虚拟化自动部署_第15张图片
软件选择和安装位置的设置
Linux系统KVM虚拟化自动部署_第16张图片
软件选择的设置
Linux系统KVM虚拟化自动部署_第17张图片
分区选择
Linux系统KVM虚拟化自动部署_第18张图片
添加新挂载点,主要有三个分别为/boot ,/swap ,/ ,当/的期望容量为空时,意为将剩余空间全部分配给/
Linux系统KVM虚拟化自动部署_第19张图片
Linux系统KVM虚拟化自动部署_第20张图片
Linux系统KVM虚拟化自动部署_第21张图片
Linux系统KVM虚拟化自动部署_第22张图片
Linux系统KVM虚拟化自动部署_第23张图片
在安装界面会有用户设置,可以在这个时候设置也可以在虚拟机安装完成启动后设置,进度完成虚拟机就装配完成,并会在virt-manager指令的界面显示出来
Linux系统KVM虚拟化自动部署_第24张图片
Linux系统KVM虚拟化自动部署_第25张图片

2.虚拟机管理命令

查看正在运行的虚拟机

[root@foundation50 ~]# virsh list 
 Id    Name                           State
----------------------------------------------------

查看系统当中所有的虚拟机

[root@foundation50 ~]# virsh list --all
 Id    Name                           State
----------------------------------------------------
 -     ahtl                           shut off
 -     desktop                        shut off
 -     server                         shut off

打开系统中的某个虚拟机

[root@foundation50 ~]# virsh start ahtl
Domain ahtl started

显示虚拟机

[root@foundation50 ~]# virt-viewer ahtl

正常关闭系统中的某个虚拟机

因为是正常关闭所以关机需要有一个过程

[root@foundation50 ~]# virsh shutdown ahtl
Domain ahtl is being shutdown

强制关闭系统中的某个虚拟机
相当于断电,所以虚拟机将立刻关闭

[root@foundation50 ~]# virsh destroy ahtl
Domain ahtl destroyed

将虚拟机从一台主机传到另一台主机
需要拷贝两个文件
主机1:
/etc/libvirt/qemu/ 下的 .xml 文件,为该虚拟机的硬件信息文件
/var/lib/libvirt/images/下的 .qcow2 文件,为该虚拟机的硬盘文件

主机2:
若没有将主机1中的 .xml 文件拷贝过来,可以使用图形界面进行虚拟机的配置
Linux系统KVM虚拟化自动部署_第26张图片
若两个文件都有,安装时,需将/var/lib/libvirt/images/xxx.qcow2和/etc/libvirt/qemu/xxx.xml 移动到原有目录,再执行指令进行配置:
virsh create xxx.xml 为一次性创建,在进行force off强制关闭后将会消失
virsh define xxx.xml 为永久创建虚拟机
virsh undefine xxx.xml 删除虚拟机硬件信息
rm -fr /var/lib/libvirt/images/xxx.qcow2 删除虚拟机硬盘文件

3.虚拟机快照

虚拟机快照是什么?
磁盘“快照”是虚拟机磁盘文件(VMDK)在某个点及时的副本,系统崩溃或系统异常,可以通过使用快照来保持磁盘文件和系统存储。

虚拟机快照的原理
用一个文件放到真实文件的面前,看到的是真实文件的文件,使用的是快照,不对的时候舍弃快照,再用一个新的快照。一个节点相当于一台主机,有自己的功能。

使用快照的原因
虚拟机坏了不可恢复,需要重装,比较麻烦,不可逆,而快照是可逆的。

快照生成指令: qemu-img create -f qcow2 -b vmname.qcow2 node1.qcow2

[root@foundation50 ~]# cd /var/lib/libvirt/images/
[root@foundation50 images]# qemu-img create -f qcow2 -b ahtl.qcow2 node1.qcow2
Formatting 'node1.qcow2', fmt=qcow2 size=10737418240 backing_file='ahtl.qcow2' encryption=off cluster_size=65536 lazy_refcounts=off 

意思是,为ahtl.qcow2 创建名为node1.qcow2 的快照

du -sh node1.qcow2查看快照文件的大小,一般比真正的虚拟机文件要小

[root@foundation50 images]# du -sh node1.qcow2 
32M	node1.qcow2
[root@foundation50 images]# du -sh ahtl.qcow2 
3.5G	ahtl.qcow2

将生成的快照文件导入虚拟机
Linux系统KVM虚拟化自动部署_第27张图片
Linux系统KVM虚拟化自动部署_第28张图片
之后的操作与创建虚拟机类似,可配置硬件信息,最终将得到一台新的快照虚拟机。

若快照虚拟机被破坏,则只需在virt-manager 中将该虚拟机强制关机,然后将 .qcow2 文件删除,再重新生成快照,重新启动虚拟机后,快照虚拟机被恢复

4.自动化管理虚拟机脚本

建立虚拟机配置的脚本文件: vim /mnt/vm_creat.sh
在这里插入图片描述
在配置脚本文件中编辑:
Linux系统KVM虚拟化自动部署_第29张图片
脚本执行后会弹出虚拟机设置界面,就需要进行如上边的操作了

可以在virt-manager界面中看到新建的虚拟机
在这里插入图片描述

5.使用脚本安装虚拟机快照

建立虚拟机配置的脚本文件: vim /mnt/vm_snapshoot.sh

[root@foundation50 mnt]# chmod +x /mnt/vm_snapshoot.sh 
[root@foundation50 mnt]# /mnt/vm_snapshoot.sh ahtl ccc

在配置脚本文件中编辑:
Linux系统KVM虚拟化自动部署_第30张图片
脚本执行后会弹出虚拟机设置界面,就需要进行如上边的操作了

可以在virt-manager界面中看到新建的虚拟机
Linux系统KVM虚拟化自动部署_第31张图片

你可能感兴趣的:(Linux系统KVM虚拟化自动部署)