最小化安装的CentOS7部署KVM虚拟机

26c836250cde61d735c145ae5898e6d0.gif

正文共:1666 字 21 图,预估阅读时间:2 分钟

目前安装KVM主要有几种方式,第一种就是软件选择安装“带GUI的服务器”,然后选择虚拟化相关的附加环境KVM部署初体验;第二种就是不安装GUI服务器,软件选择“虚拟化主机”,并勾选“虚拟化平台”的附加环境。

2b00486b1c21c7f99672ebd7bdeebc14.png

还有第三种,那就是直接使用默认的最小化安装,然后手动安装其他组件,这种方式也适用于补充安装KVM组件的场景。

我也简单对比了一下,如果是选择第一种安装方式,安装完成之后,磁盘的空间占用约为3.9 GB。

da668a848a425b77fbfff3772ee1ec6d.png

使用第二种方式安装,差异主要是GUI部分,安装完成之后,磁盘的空间占用约为1.6 GB。

818795a85b06de9c176dfb46aafb94b7.png

如果是最小化安装,那磁盘空间占用就只有1.3 GB了。

27ecffc7c8ab51dbb07b61031bf85853.png

如此看来,KVM虚拟化组件的空间占用并不是很高。

83c26b3c7202318075d675953f326083.png

1、安装KVM和相关软件包

一般来讲,在安装KVM组件之前,我们要首先更新YUM软件源。

yum list && yum update -y

然后安装KVM和相关软件包:

yum install -y qemu-kvm libvirt virt-install bridge-utils

c065a343d1ac195443e313ee6e02accb.png

最小化安装的方式和其他两种有差别,通过另外两种方式完成安装后,libvirtd服务默认自启动,而最小化安装的需要手工启动并使能开机自启动。启动之后看一下虚拟化组件libvirt的服务器状态。

systemctl start libvirtd
systemctl enable libvirtd
systemctl status libvirtd

e015a7208f5a3131f5ac987f1519b3c6.png

然后使用lsmod命令查看Linux内核中kvm模块的加载情况。

lsmod | grep kvm

459eb387a096a4eb02ab3afd426e3795.png

查看主机网卡信息,发现默认的虚拟网卡一直使用的是192.168.122.1/24这个,后面有机会研究研究相关的配置问题。

7a83412812d4b9435063df1ffc4b90da.png

到这里,安装就基本结束了,我们看一下磁盘使用情况。

7ba97bb06097443e00933b0522aa58eb.png

1.8 GB,基本和选择“虚拟化主机”的相当,所以直接选择“虚拟化主机”进行安装也是一个不错的选择。

ec875d8595a6e42e32e8d110c526c07c.png

2、配置存储池

在KVM中,通过存储池的概念将物理存储资源抽象为虚拟存储池,存储池是一个抽象的存储容器,它可以包含虚拟机磁盘文件、ISO镜像等等,同时也提供了一些管理存储池和存储资源的操作。

在使用“虚拟系统管理器VMM”创建主机时,我们可以在页面查看和创建存储池。在命令行中,我们可以先查看现有的存储池信息。

virsh pool-list

898b4f6c7544a2a4e28fbb29ccea476e.png

果然,是空的,需要我们手工创建。

首先,libvirt默认的数据存储路径是/var/lib/libvirt/,我们先看一下路径下都有什么。

72362e0e4bf566096864cf1cc4d55376.png

在这些文件夹中,images文件夹主要用于存储虚拟机磁盘文件(以.qcow2或.img格式保存),dnsmasq文件夹主要用于存储网络配置文件(不是在network文件夹中),qemu文件夹主要用于存储KVM的元数据文件,还有其他虚拟机配置文件和存储池配置文件等(以.xml格式保存)。

那我们可以先在/var/lib/libvirt/images/目录下创建一个isopool文件夹来存放安装镜像,同时将此目录作为存储池的挂载点。

mkdir /var/lib/libvirt/images/isopool

然后使用以下命令来创建存储池:

virsh pool-define-as --name=iso --type=dir --target=/var/lib/libvirt/images/isopool

创建成功之后,激活存储池:

virsh pool-start iso

并且设置存储池为自动启动:

virsh pool-autostart iso

确认存储池已经成功创建:

virsh pool-list

75f5e5511ce12af7e5a6b564571aea10.png

还可以查看存储池的详细信息。

virsh pool-info iso

fb20f37a59585c5ba274e7728694ff51.png

同样的,我们再创建一个目录disks来存储磁盘文件。

mkdir /var/lib/libvirt/images/disks
virsh pool-define-as --name=disks --type=dir --target=/var/lib/libvirt/images/disks
virsh pool-start disks
virsh pool-autostart disks
virsh pool-list
virsh pool-info disks

50964a312e411bd80b2b865381d4c883.png

现在,我们就可以将虚拟磁盘文件存储到该目录中,作为KVM虚拟机的磁盘了。

如果不想要这些存储池了,可以使用命令进行删除,我就不演示了。

virsh pool-destroy disks
virsh pool-undefine disks

3e7b7680b22c1bb57ec31830e1f64431.png

3、创建虚拟机

因为没有使用GUI,所以默认没有安装“虚拟系统管理器VMM”,也就无法在命令行拉起对应的窗口了,仅可以使用virt-install命令来创建新的虚拟机。

首先上传一个安装镜像文件。

c35f802fcccac9b1b17a2057dd7b7192.png

然后创建一台名为vsr的虚拟机,分配2核vCPU、2 GB内存、8 GB磁盘,

virt-install \
  --name vsr \
  --vcpus 2 \
  --memory 2048 \
  --cpu host \
  --disk path=/var/lib/libvirt/images/disks/vsr.qcow2,size=8 \
  --os-type linux \
  --os-variant centos6.0 \
  --cdrom /var/lib/libvirt/images/isopool/VSR1000_H3C-CMW710-R1340P16-X64.iso \
  --network bridge=virbr0,model=virtio \
  --graphics vnc,listen=0.0.0.0,port=5901

其中各个参数的含义如下:

--name vsr:指定虚拟机的名称为vsr。

--vcpus 2:分配2核vCPU。

--memory 2048:分配2 GB内存。

--cpu host:使用宿主机的CPU模型。

--disk path=/var/lib/libvirt/images/disks/vsr.qcow2,size=8:创建一个大小为 8 GB 的虚拟磁盘,并将其保存在/var/lib/libvirt/images/disks/目录下。

--os-type linux:指定虚拟机的操作系统类型为Linux。

--os-variant centos6.0:指定虚拟机的操作系统版本为Linux 2.6,“centos6.0”是针对CentOS 6.x版本的一个常用操作系统变量。

--cdrom /var/lib/libvirt/images/isopool/VSR1000_H3C-CMW710-R1340P16-X64.iso:挂载光驱,并将其 ISO 镜像文件路径设置为 /var/lib/libvirt/images/isopool/VSR1000_H3C-CMW710-R1340P16-X64.iso。

--network bridge=virbr0,model=virtio:指定虚拟机使用的网络接口类型为 virtio,并连接到名为virbr0的Linux桥接网络。

--graphics vnc,listen=0.0.0.0:指定虚拟机使用VNC图形界面进行访问,监听端口为5901。

a8a9f168fddb247e50c3a9c5a08411b9.png

然后他会停留在这个页面,不用管他,直接Ctrl+C。然后查看端口信息。

51a123d067e89b416b9b0fb949889ada.png

查看虚拟机列表,可以看到虚拟机也是运行状态了。

virsh list --all

1580a6d049db6bab1abbeff9e8292818.png

因为本地没有安装GUI,所以我们从其他电脑远程一下宿主机的5901端口。

14393ae588ad5db23d9c76c73e54ead1.png

可以看到安装界面了,按要求完成安装即可。不过在安装完成之后,虚拟机会自动关机,需要手工再开启一下。

virsh start vsr

4be1be02fbed56446fdbee16def6b795.png

然后就可以再次使用VNC连接虚拟机了。

c40233887b2259129d62397aa3c8abc7.png

是不是显得有点麻烦呢?

08790df6ff5b9979b32cbc48ceeec810.gif

长按二维码
关注我们吧

d2fed0a4d43d90597a5d3d3e85605386.jpeg

0c86fe656ad957b31c47fa50ab42cc76.png

网络之路1:初识网络

网络之路2:初识路由表

chatGPT又火了,用openAI写文章到底靠不靠谱?

基于CentOS部署SmartDNS

使用Python批量处理Excel的内容

如何使用Python提取Excel中固定单元格的内容

配置openVPN使用用户名密码认证

带认证的openVPN连接/断开操作指南

配置CentOS 7通过MSTSC连接远程桌面

Ubuntu 18.04快速配置WireGuard互联

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Danileaf_Guo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值