基于 CentOS7 的 KVM 部署 + 虚拟机创建

本文详细介绍了如何在VMwareWorkstation16Pro环境下部署KVM,包括检查CPU虚拟化支持、关闭防火墙和Selinux、安装KVM及相关软件包、创建虚拟机以及通过virt-manager进行远程管理。此外,还解决了可能出现的嵌套虚拟化不支持问题。

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

9ebd21bed27693c0302a2d6e9f064561



一、实验环境

实验环境:VMware Workstation 16 Pro

打开虚拟机之前,首先开启 VMware Workstation Pro 16 上的硬件辅助虚拟化功能,如下图所示:

image-20230214180936177

二、部署 KVM

1、查看 CPU 是否支持虚拟化

cat /proc/cpuinfo | grep -E 'vmx|svm'

image-20230214180308698

2、关闭防火墙/Selinux

# firewalld
systemctl stop firewalld
systemctl disable firewalld

# selinux
setenforce 0
vim /etc/sysconfig/selinux
...
SELINUX=disabled
...

3、查看是否加载KVM

lsmod | grep kvm

image-20230214181414144

如上显示的结果说明已经加载,若果没有加载请执行如下命令:

modprobe kvm

4、清理环境

如果之前安装kvm了,则先卸载kvm。

yum remove `rpm -qa | egrep 'qemu|virt|kvm'` -y
rm -rf /var/lib/libvirt  /etc/libvirt/

5、安装 KVM 相关软件包

yum install -y qemu-kvm qemu-img virt-manager libvirt libvirt-python virt-manager libvirt-client virt-install virt-viewer

6、启动 libvirt 并设置开机自启动

systemctl start libvirtd
systemctl enable libvirtd

7、Xmanager(本地虚拟化界面工具安装)

官网:https://www.xshellcn.com/

如果你在 Xshell 等 SSH 客户端操作,可本地安装该软件;如果你是在 CentOS 桌面化直接操作,可忽略这一步。

三、创建虚拟机

1、进入图形化

virt-manager

image-20230215100830320

2、上传 CentOS7 镜像到虚拟机

有个可用于测试的小镜像 cirros,下载地址为:https://download.cirros-cloud.net/

下载并上传到服务器 /var/lib/libvirt/images/ 目录下,这是 KVM 默认查找镜像文件的地方,如下图。

image-20230215103321783

3、创建虚拟机

image-20230215103446646

4、选择镜像

image-20230215103735179

image-20230215103846804

5、为虚拟机分配 CPU 和 内存

注意,内存不要给的太少,否则无法启动虚拟机。

image-20230215105056423

6、点击 Finish 启动虚拟机

image-20230215104211642

image-20230215105152907

7、查看虚拟机

virsh list

image-20230215105410564

四、远程管理 KVM 虚拟机

我们可通过 virt-manager 创建并管理 KVM 虚拟机,也可通过 virt-manager 来管理其他宿主机的 KVM 虚拟机,具体配置如下。

1、打开图形化管理界面

virt-manager

2、添加其他 Host 连接信息并连接

image-20230215111954863

image-20230215112102922

可能会无法连接成功,可能会有下图的提示,需要安装相关插件,根据提示安装即可。

image-20230215111215742

yum install -y openssh-askpass
# 或
yum install -y similar

# 安装完成后再次连接即可

连接输入远程 Host 对应的登录用户密码即可。

image-20230215112254413

最后点击 Yes 即可连接。

image-20230215112604152

如下图,已经连接到远程 Host,并显示该 Host 下的 KVM 虚拟机了。

由于服务器资源有限,我本次就是自己连自己,效果都一样。

image-20230215112725146

至此,KVM 部署 + 虚拟机创建的完整步骤已经实现!

FAQ

1、问题描述

VMware Workstation 16 PRO 虚拟机软件开启硬件辅助虚拟化功能后,虚拟机无法启动,提示不支持嵌套虚拟化

3、问题原因

主要是因为我的 Windows 开启了虚拟化驱动支持,关闭即可。

2、解决方案

打开 启用或关闭 Windows 功能

image-20230215113202214

取消勾选以下两项即可:

image-20230215113847313

最后再次启动 VMware Workstation 16 PRO 上的虚拟机即可!

<think>好的,我需要帮助用户在CentOS系统上安装KVM虚拟机。首先,我得确认用户的具体需求是什么。用户提到的是CentOS,但CentOS有不同的版本,比如CentOS 7CentOS 8,安装步骤可能有所不同。不过根据提供的引用内容,引用[1]提到了如何在CentOS 7上安装KVM,而引用[2]则指出CentOS 5.4之前的版本需要从extras仓库安装。因此,用户可能使用的是较新的CentOS版本,比如CentOS 7,所以应该优先参考引用[1]的指南。 接下来,我需要整理安装步骤。通常,安装KVM的流程包括以下几个步骤:检查硬件虚拟化支持、安装必要的软件包、启动并启用libvirtd服务、配置网络桥接(可选)、验证安装等。根据引用[1],可能需要使用特定的命令来安装KVM和相关工具,比如qemu-kvm、libvirt以及virt-install等。此外,用户可能还需要安装图形管理工具,如virt-manager,方便管理虚拟机。 需要注意的是,不同版本的CentOS可能在软件包名称或仓库配置上存在差异。例如,CentOS 7的软件源可能和CentOS 8有所不同。因此,在步骤中需要明确说明针对哪个版本。根据引用[1]中的指南,应该适用于CentOS 7。另外,引用[2]提到CentOS 5.4之前的版本需要从extras仓库安装,但用户可能不太可能还在使用这么旧的版本,所以主要参考CentOS 7的步骤。 另外,关于网络配置部分,默认情况下KVM会使用NAT网络,但如果用户需要桥接网络以获得更好的性能或直接访问物理网络,可能需要额外配置桥接接口。这部分可能需要用户有一定的网络配置知识,但根据用户的需求,可以提供一个基本的桥接配置方法。 最后,验证安装是否成功可以通过运行virsh命令检查libvirtd服务状态,或者使用virt-manager图形界面来创建虚拟机。同时,用户可能需要了解如何下载ISO镜像并安装客户机操作系统,这部分也可以简要提及,或提供相关参考链接。 现在需要将这些步骤结构化,确保每个步骤清晰,命令准确,并且引用正确的来源。同时,注意用户可能需要的是逐步指南,所以每个步骤要详细但不过于复杂。此外,需要检查是否有其他依赖项或常见问题,比如SELinux或防火墙设置,是否需要调整,这些也可以在注意事项中提及。 总结下来,步骤可能包括: 1. 检查CPU虚拟化支持 2. 安装KVM及相关软件包 3. 启动并启用libvirtd服务 4. 配置网络桥接(可选) 5. 验证安装 6. 创建虚拟机(示例命令) 每个步骤都需要对应的命令和说明,确保用户能顺利执行。同时,根据引用[1]和引用[2]的内容,确保命令的正确性。例如,安装KVM软件包时,CentOS 7使用yum安装,而CentOS 8可能使用dnf,但用户问题中提到的是CentOS,所以应统一使用yum命令,或者在适当的时候注明版本差异。 此外,需要注意权限问题,用户可能需要加入libvirt组,或者使用sudo执行命令。这些细节也需要在步骤中说明,避免用户遇到权限错误。 最后,生成相关问题,可能涉及KVM的管理、网络配置优化、性能调优等,帮助用户进一步学习。</think>### 分步指南:在CentOS 7下安装KVM虚拟机 #### 1. **检查硬件虚拟化支持** - 在终端运行以下命令,验证CPU是否支持虚拟化: ```bash egrep -c '(vmx|svm)' /proc/cpuinfo ``` 若输出值大于`0`,表示支持虚拟化[^1]。 - 确保BIOS中已启用虚拟化技术(如Intel VT-x或AMD-V)。 #### 2. **安装KVM及相关软件包** - 更新系统并安装必要组件: ```bash sudo yum update -y sudo yum install -y qemu-kvm libvirt virt-install bridge-utils virt-manager ``` 此命令安装了KVM核心组件、虚拟机管理工具(`virt-install`)及图形界面(`virt-manager`)[^2]。 #### 3. **启动并启用libvirtd服务** - 启动服务并设置开机自启: ```bash sudo systemctl start libvirtd sudo systemctl enable libvirtd ``` - 验证服务状态: ```bash sudo systemctl status libvirtd ``` #### 4. **配置网络桥接(可选)** - 默认使用NAT网络,若需桥接网络: 1. 创建桥接配置文件`ifcfg-br0`: ```bash sudo vi /etc/sysconfig/network-scripts/ifcfg-br0 ``` 添加以下内容(假设物理网卡为`eth0`): ```plaintext DEVICE=br0 TYPE=Bridge BOOTPROTO=dhcp ONBOOT=yes DELAY=0 ``` 2. 修改物理网卡配置`ifcfg-eth0`,移除IP配置并绑定到桥接: ```plaintext DEVICE=eth0 ONBOOT=yes BRIDGE=br0 ``` 3. 重启网络服务: ```bash sudo systemctl restart network ``` #### 5. **验证安装** - 运行以下命令检查KVM模块是否加载: ```bash lsmod | grep kvm ``` 若输出包含`kvm_intel`或`kvm_amd`,则加载成功。 - 使用`virt-manager`图形界面创建虚拟机(需图形环境支持)。 #### 6. **通过命令行创建虚拟机示例** - 下载ISO镜像(如CentOS 8)至`/path/to/iso`。 - 执行安装命令: ```bash sudo virt-install \ --name=centos8-vm \ --ram=2048 \ --vcpus=2 \ --disk path=/var/lib/libvirt/images/centos8-vm.qcow2,size=20 \ --cdrom=/path/to/CentOS-8-x86_64.iso \ --os-type=linux \ --network bridge=br0 \ --graphics vnc ``` 此命令创建一个2核CPU、2GB内存、20GB磁盘的虚拟机,并通过VNC连接安装系统。 #### **注意事项** - **权限问题**:普通用户需加入`libvirt`组才能管理虚拟机: ```bash sudo usermod -aG libvirt $USER ``` - **防火墙**:若启用防火墙,需放行相关流量: ```bash sudo firewall-cmd --add-service={http,https,ssh} --permanent sudo firewall-cmd --reload ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

云计算-Security

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

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

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

打赏作者

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

抵扣说明:

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

余额充值