• Linux之虚拟化部署
  • 压缩镜像from 21G to 500M,不影响使用
  • virt-manager命令
  • kvm虚拟化相关信息
  • 搭建本地仓库
  • 网络安装
  • 虚拟化部署一键脚本制作


Linux之虚拟化部署

安装条件
1.inter cpu ------>vmx
2.amd cpu --------->svm

【实用】kvm虚拟化安装(Linux上的vmware) ----安装virt-manager

kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程

kvm kill 进程 kvm:exiting hardware virtualization_html_02


kvm kill 进程 kvm:exiting hardware virtualization_html_03

kvm kill 进程 kvm:exiting hardware virtualization_xml_04

kvm kill 进程 kvm:exiting hardware virtualization_html_05

kvm kill 进程 kvm:exiting hardware virtualization_html_06

kvm kill 进程 kvm:exiting hardware virtualization_xml_07


不选以上打勾地方,会报如下错误

you must select an OS.

Can’t find the operating system you are looking for ?

Try selecting the next most recent version displayed,or use the "Generic " entry.

kvm kill 进程 kvm:exiting hardware virtualization_html_08


kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程_09


kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程_10


kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程_11


弹出窗口

kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程_12


kvm kill 进程 kvm:exiting hardware virtualization_虚拟化_13


kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程_14

kvm kill 进程 kvm:exiting hardware virtualization_html_15

kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程_16


kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程_17



kvm kill 进程 kvm:exiting hardware virtualization_html_18


kvm kill 进程 kvm:exiting hardware virtualization_虚拟化_19

kvm kill 进程 kvm:exiting hardware virtualization_虚拟化_20

/boot 1024M

kvm kill 进程 kvm:exiting hardware virtualization_xml_21


swap 1024M

kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程_22


/根,其余都给根

kvm kill 进程 kvm:exiting hardware virtualization_虚拟化_23


kvm kill 进程 kvm:exiting hardware virtualization_html_24


kvm kill 进程 kvm:exiting hardware virtualization_虚拟化_25

kvm kill 进程 kvm:exiting hardware virtualization_xml_26

kvm kill 进程 kvm:exiting hardware virtualization_html_27


进度条完毕,点reboot。

kvm kill 进程 kvm:exiting hardware virtualization_html_28

kvm kill 进程 kvm:exiting hardware virtualization_虚拟化_29


kvm kill 进程 kvm:exiting hardware virtualization_虚拟化_30

kvm kill 进程 kvm:exiting hardware virtualization_html_31


kvm kill 进程 kvm:exiting hardware virtualization_html_32


至此,虚拟机安装完成。

制作快照镜像文件

[root@localhost libvirt]# cd /var/lib/libvirt/images/  ##镜像目录
[root@localhost images]# ll
total 29361092
-rw-------. 1 qemu qemu 21478375424 Jan 26 00:10 rhel8.2.qcow2
##.qcow2为原始镜像
[root@localhost images]#
[root@localhost images]# qemu-img create -f qcow2 -b rhel8.2.qcow2 node26.qcow2
Formatting 'node26.qcow2', fmt=qcow2 size=21474836480 backing_file=rhel8.2.qcow2 cluster_size=65536 lazy_refcounts=off refcount_bits=16
[root@localhost images]#

生成node26.qcow2

kvm kill 进程 kvm:exiting hardware virtualization_xml_33

kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程_34

压缩镜像from 21G to 500M,不影响使用

清理缓存

virt-sysprep -d perfect

压缩

virt-sparsify --compress perfect.qcow2 perfectbase.qcow2

virt-manager

kvm kill 进程 kvm:exiting hardware virtualization_html_35

kvm kill 进程 kvm:exiting hardware virtualization_html_36

kvm kill 进程 kvm:exiting hardware virtualization_html_37


kvm kill 进程 kvm:exiting hardware virtualization_xml_38


kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程_39

kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程_40

kvm kill 进程 kvm:exiting hardware virtualization_html_41

直到完成,参考上文。

kvm kill 进程 kvm:exiting hardware virtualization_xml_42

kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程_43

快照成功运行。

kvm kill 进程 kvm:exiting hardware virtualization_虚拟化_44


快照开始很小,原镜像大。

kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程_45

virt-manager命令

virsh list 正在运行的虚拟机

kvm kill 进程 kvm:exiting hardware virtualization_html_46


kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程_47


virsh list --all 全部虚拟机

kvm kill 进程 kvm:exiting hardware virtualization_xml_48

virsh shutdown node26 虚拟机关机

kvm kill 进程 kvm:exiting hardware virtualization_虚拟化_49


kvm kill 进程 kvm:exiting hardware virtualization_xml_50


virsh start node26 虚拟机开机

kvm kill 进程 kvm:exiting hardware virtualization_虚拟化_51


kvm kill 进程 kvm:exiting hardware virtualization_xml_52


kvm kill 进程 kvm:exiting hardware virtualization_html_53


virsh destroy node26 强制关机,选项里是forceoff

kvm kill 进程 kvm:exiting hardware virtualization_html_54

kvm kill 进程 kvm:exiting hardware virtualization_xml_55


virt-viewer node26 显示虚拟机到前台

kvm虚拟化相关信息

服务名称:libvirtd 虚拟化核心:qemu/kvm 虚拟化存储目录(虚拟机硬盘)
/var/lib/libvirt/images/westos.qcow2 虚拟化硬件信息:
/etc/libvirt/qemu/westos.xml

[root@localhost images]# cd /etc/libvirt/qemu/  ##硬件信息文件

kvm kill 进程 kvm:exiting hardware virtualization_xml_56

[root@localhost qemu]# vim node26.xml

kvm kill 进程 kvm:exiting hardware virtualization_xml_57

[root@localhost qemu]# systemctl restart libvirtd.service

kvm kill 进程 kvm:exiting hardware virtualization_xml_58

双击QEMU/KVM 连接。

kvm kill 进程 kvm:exiting hardware virtualization_kvm kill 进程_59

镜像信息的备份

[root@localhost root]# mkdir  /run/media/root/ricky2-win7/backup 
[root@localhost root]# cp /var/lib/libvirt/images/rhel8.2.qcow2  /run/media/root/ricky2-win7/backup  ##备份真实镜像
[root@localhost root]# cp /etc/libvirt/qemu/rhel8.2.xml /run/media/root/ricky2-win7/backup  ##备份真实硬件信息

kvm kill 进程 kvm:exiting hardware virtualization_xml_60

镜像信息的恢复

[root@localhost qemu]# cp /run/media/root/ricky2-win7/backup/node26.qcow2 /var/lib/libvirt/images/##拷贝真实镜像到目录/var/lib/libvirt/images/
[root@localhost images]# virsh create /run/media/root/ricky2-win7/backup/rhel8.2.xml ##用真实硬件信息执行恢复命令
[root@localhost images]# virt-viewer rhel8.2

virsh create */node26.xml ##目录中没有node26信息,关机后消失。

[root@localhost qemu]# cp /run/media/root/ricky2-win7/backup/node26.qcow2 /var/lib/libvirt/images/
[root@localhost qemu]# virsh create /run/media/root/ricky2-win7/backup/node26.xml 
[root@localhost qemu]# ll /etc/libvirt/qemu/  ##目录中没有node26信息,关机后消失。
total 16
drwx------. 3 root root   42 Nov  3 20:06 networks
-rw-------. 1 root root 5661 Jan 26 04:34 node126.xml
-rw-------. 1 root root 5661 Jan 26 04:59 rhel8.2.xml
drwxr-xr-x. 2 root root    6 Jan 26 05:10 test
[root@localhost qemu]#

virsh define */node26.xml ##有node26信息,永久固定

[root@localhost qemu]# virsh define /run/media/root/ricky2-win7/backup/node26.xml 
#Domain node26 defined from /run/media/root/ricky2-win7/backup/node26.xml
[root@localhost qemu]# 
[root@localhost qemu]# ll /etc/libvirt/qemu/  ##有node26信息,永久固定
total 24
drwx------. 3 root root   42 Nov  3 20:06 networks
-rw-------. 1 root root 5661 Jan 26 04:34 node126.xml
-rw-------. 1 root root 5658 Jan 26 05:20 node26.xml
-rw-------. 1 root root 5661 Jan 26 04:59 rhel8.2.xml
drwxr-xr-x. 2 root root    6 Jan 26 05:10 test
[root@localhost qemu]#

virsh undefine node26 移除node26信息,保留镜像。

[root@localhost qemu]# virsh undefine node26
Domain node26 has been undefined

[root@localhost qemu]# 
[root@localhost qemu]# ll /var/lib/libvirt/images/  ##镜像还在。
total 21680252
-rw-r--r--. 1 root root    76873728 Jan 26 05:30 node126.qcow2
-rwxr-xr-x. 1 root root   647495680 Jan 26 05:13 node26.qcow2
-rwxr-xr-x. 1 qemu qemu 21478375424 Jan 26 04:59 rhel8.2.qcow2

手动安装虚拟机

搭建本地仓库

网络安装

df 挂载信息的查询命令

kvm kill 进程 kvm:exiting hardware virtualization_xml_61

chmod a+x /etc/rc.d/rc.local ##给开机自启动文件执行权限
mount /dev/sdb1 /var/lib/libvirt/images/   #本次开机有效,临时挂载
#sdb1是新加装的一块硬盘,把它挂载到images目录上,用来扩容

vim /etc/rc.d/rc.local 【永久挂载】开机自启动文件,追加填写如下内容

mount /dev/sdb1 /var/lib/libvirt/images/    
#sdb1是新加装的一块硬盘,把它挂载到images目录上,用来扩容
hostnamectl set-hostname node40.westos.org  ##设置主机hostname,重启生效
reboot

virt-manager 打开虚拟机管理器

dnf install httpd -y ##安装httpd程序
55  systemctl  disable  --now firewalld 		##立即关闭防火墙
 56  systemctl enable --now httpd  				##立即启动httpd
 57  systemctl status httpd 					##查看httpd状态
58  mkdir /var/www/html/westos			##在/var/www/html/下新建westos目录
59  df			##查看挂载信息
62  umount /dev/sr0			 ##这是vmware虚拟机硬件挂载的iso镜像。
  63  mount /dev/sr0 /var/www/html/westos/	 ##把它挂载到/var/www/html/westos

vim /etc/rc.d/rc.local 【永久挂载】开机自启动文件,追加填写如下内容

umount /dev/sr0   ##这是vmware虚拟机硬件挂载的iso镜像。
mount /dev/sr0 /var/www/html/westos ##把它挂载到/var/www/html/westos
64  chown qemu.qemu /var/lib/libvirt/images/   	##/var/lib/libvirt/images/目录需要qemu.qemu用户权限
65  virt-manager
66  poweroff

虚拟化部署一键脚本制作

vim westos.sh

#!/bin/bash		##sh脚本文件的头文件
virt-install \     ##虚拟机安装命令
        --location http://192.168.1.40/westos \			##指定安装网络源
        --os-variant rhel8.2 \		##指定安装系统版本
        --vcpus 1 \			##cpu核心数量
        --memory 2048 \			##内存大小
       --disk /var/lib/libvirt/images/$1.qcow2,size=8,bus=virtio \			##硬盘位置,硬盘大小,硬盘工作总线
        --name $1 \			##虚拟机名称
        --network bridge=br0,model=virtio &			##虚拟机网卡为桥接,网卡工作模式为虚拟输入输出

注:\表示换行输入(实际数据为同一行)
\前面有一个空格,后面无任何字符。
$1为参数,表示westos.sh后面的第一串字符

sh westos.sh  linux   ##linux 传给$1

kvm kill 进程 kvm:exiting hardware virtualization_xml_62

kvm kill 进程 kvm:exiting hardware virtualization_html_63


kvm kill 进程 kvm:exiting hardware virtualization_虚拟化_64


linux已经创建。