Linux下的虚拟化部署

本文详细介绍了在Linux环境下使用KVM进行虚拟化的步骤,包括KVM的安装条件、安装过程、虚拟机管理、硬盘管理和网络配置。还探讨了如何创建虚拟机快照、调整硬盘大小以及构建网桥。此外,分享了通过脚本自动化创建虚拟机的方法和注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.在Linux中实现虚拟化

1.1 kvm安装条件

nter cpu ----> vmx
amd cpu -------> svm

kvm是指内核级的虚拟化;vmx指全虚拟化功能,这是一个指令集,可以使用下图命令:在这里插入图片描述在这里插入图片描述从上图可以看出vmx全虚拟化功能开启,可以安装kvm

1.2 kvm虚拟化安装

需要提前安装好三个虚拟化工具,可以在软件仓库配置好的前提下直接安装这三个软件,执行dnf group install “Virtualization Client” “Virtualization Hypervisor” “VirtualizationT ools” -y安装命令:

Virtualization Client ——虚拟化客户端
Virtualization Tools ——虚拟化工具
Virtualization Hypervisor ——虚拟化核心套件
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
安装完成后,在Applications中可以看到:

在这里插入图片描述安装步骤:
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述

1.3 kvm虚拟化相关信息

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

1.4 硬盘管理

manger qcow2 disk
qemu-img info xxxx.qcow2 查询虚拟硬盘信息
qemu-img create -f qcow2 xxxx.qcow2 -o lazy_refcounts=off 建立虚拟硬盘并指定动态应用空间(动态应用磁盘空间)
qemu-img resize xxx.qcow2 20G 改变虚拟硬盘容量最大伐直
在这里插入图片描述true:设计几G占几G
在这里插入图片描述

false:动态硬盘用多少占多少
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.Linux系统安装

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述

2 .1 虚拟机快照

当虚拟机安装好后,为了防止突发情况,使虚拟机崩溃,可以使用虚拟机的快照功能,相当于克隆。虚拟机的硬盘可能会在操作过程中因操作不当,导致硬盘的损坏等问题。此时使用快照不仅节省时间,其本身文件较小,操作不当时,可以删除并重新快照。
1)使用超级用户进入 cd /var/lib/libvirt/images/ ,然后ls查看一下,里面有和虚拟机有关的.qcow2文件,如果该文件中的内容被修改,就会导致虚拟机崩溃。输入快照命令完后,被照出来的文件也存在于该目录下
在这里插入图片描述

将快照好的文件导入,此处选择第四个选项
在这里插入图片描述

2.1 虚拟机管理命令

virt-viewer westos 显示westos虚拟机
virt-manager 打开虚拟机控制器
virsh list 没有运行的虚拟机,是不会显示的
virsh list --all 列出所有虚拟机
virsh start westos 开启虚拟机。该命令可以运行起虚拟机,但是无法显示出来,此时就需要再使用第一条命令,显示虚拟机
virsh shutdown westos 正常关闭虚拟机
virsh destroy westos 断电westos虚拟机 。上面的 shutdowm有时无法关闭虚拟机,此时就使用该命令,快速关闭虚拟机,它是没有关闭过程的,直接关闭,而shutdowm有关闭的过程
在这里插入图片描述

3.网桥的构建

(1) cd /etc/sysconfig/network-scripts ,进入网卡配置目录。ls,里面显示的是原始的真实网卡配置文件。编辑vim ifcfg-ens3 和vim ifcfg-br0:在这里插入图片描述vim ifcfg-lhy中的内容,里面的ip、网关、域名根据情况设定,可写可不写。type、bootproto、name、device、onboot,bridge必有:

在这里插入图片描述4)重启网络服务,输入命令:
nmcli connection reload

nmcli connection up ens3

nmcli connection up br0

在这里插入图片描述bridge link 看到网桥即表示网桥建立成功:
在这里插入图片描述

4.虚拟机在Linux系统中传输

怎样复制别的主机里边的虚拟机
需要把想要的主机的虚拟机的所有的配置文件全部放到自己的主机
硬盘:scp root@172.25.254.19:/var/lib/libvirt/images/westos.qcow2 /var/lib/libvirt/images(传输较慢)
在这里插入图片描述
硬件信息: /etc/libvirt/qemu/
在这里插入图片描述scp root@172.25.254.19: /etc/libvirt/qemu/westos.xml /var/lib/libvirt/images
之后输入virsh create westos.xml(如下图)
在这里插入图片描述

这样的方式临时的
永久:virsh define westos.xml
在这里插入图片描述

5.虚拟机建立脚本

,编辑vim westos.sh脚本文件。虚拟机在安装时,用到的命令是 virt-install,可以 man virt-install查看参数

在这里插入图片描述脚本文件内容:
#!/bin/bash -->脚本指令解释器
virt-install --location http://172.25.254.77/westos --os-variant rhel8.2 --vcpus 1 --memory 2048 --disk /var/lib/libvirt/images/test.qcow2,size=8,bus=virtio --name test --network bridge=br0,model=virtio

在这里插入图片描述写完脚本内容后 sh westos_vm.sh westosvma运行该脚本即可,但是这种方法只能创建一个虚拟机。所以当该虚拟机创建好后,再想建立另一个虚拟机时,是不行的;或者把该虚拟机关掉,再运行脚本会报错,因为之前建立的虚拟机已经存在。

为了解决只能创建一个虚拟机的情况可以使用‘$1’($1:表示输入的第一个字符串被识别,不固定),此时需要重新编辑脚本里面的内容
上图的脚本文件内容写在一行不好区分,但是不能直接使用回车换行,这样系统会不识别该命令,所以可以使用反斜杠做换行符。 注意:每一个换行副和前面的字符串之间必须有一个空格,这个空格代表了命令和参数之间的空格换行符后面什么都不能加,包括空格等,当反斜杠后面没加其他符号时,鼠标到换行符处是黄色的,否则显示白色

脚本写完后会占用终端,如果不想要占用终端,可以在脚本文件中,最后一行处加上一个 &,将它打入后台
–network bridge=br0,model=virtio &
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值