HCRM博客

如何在KVM上安装CentOS操作系统?

KVM 安装 CentOS

一、前言

KVM(Kernelbased Virtual Machine)是一种基于内核的虚拟机,通过将 Linux 转变为一个强大的虚拟化平台,使用户能够在一台物理主机上运行多个操作系统实例,本文将详细介绍如何在CentOS 7/9系统上安装和配置KVM,并创建第一个CentOS虚拟机。

如何在KVM上安装CentOS操作系统?-图1
(图片来源网络,侵权删除)

二、检查硬件是否支持虚拟化

在进行KVM安装之前,首先需要确认CPU是否支持虚拟化技术(Intel VT或AMDV),可以使用以下命令进行检查:

egrep c '(vmx|svm)' /proc/cpuinfo

如果输出的数字大于0,说明CPU支持虚拟化。

三、安装KVM相关软件包

1、更新系统

在开始之前,确保你的系统是最新的。

   sudo yum update y

2、安装必要的软件包

使用yum命令安装KVM、libvirt和其他相关工具。

如何在KVM上安装CentOS操作系统?-图2
(图片来源网络,侵权删除)
   sudo yum install y epelrelease
   sudo yum install y qemukvm libvirt virtinstall bridgeutils libguestfstools virtmanager

3、启用并启动libvirtd服务

安装完成后,启用并启动libvirtd服务以管理虚拟机。

   sudo systemctl enable libvirtd
   sudo systemctl start libvirtd
   sudo systemctl status libvirtd

4、验证KVM模块加载

使用以下命令查看KVM模块是否成功加载。

   lsmod | grep kvm

四、配置桥接网络

默认情况下,由libvirtd配置基于dhcpd的网桥,你可以使用以下命令验证:

brctl show
virsh netlist

所有虚拟机只能对同一台服务器上的其它虚拟机进行网络访问,为你创建的私有网络是192.168.122.0/24,验证:

如何在KVM上安装CentOS操作系统?-图3
(图片来源网络,侵权删除)
virsh netdumpxml default

如果你希望你的虚拟机可用于LAN上的其他服务器,请在连接到你的LAN的服务器上设置一个网桥,更新你的网卡配置文件,如ifcfgens33或em1:

vi /etc/sysconfig/networkscripts/ifcfgens33

添加一行:

BRIDGE=br0

编辑/etc/sysconfig/networkscripts/ifcfgbr0

vi /etc/sysconfig/networkscripts/ifcfgbr0

添加以下内容:

DEVICE="br0"
TYPE=Bridge
ONBOOT=yes
DEFROUTE=yes
IPADDR=192.168.1.100
PREFIX=24
GATEWAYDEV=ens33
DNS1=8.8.8.8

重新启动网络服务:

sudo systemctl restart NetworkManager

用brctl命令验证它:

brctl show

五、创建第一个虚拟机

1、下载CentOS ISO镜像

获取CentOS 7的ISO镜像并将其放置在指定目录中,我们将ISO文件放在/var/lib/libvirt/boot/目录下。

   cd /var/lib/libvirt/boot/
   wget https://mirrors.kernel.org/centos/7.4.1708/isos/x86_64/CentOS7x86_64Minimal1708.iso

2、验证ISO镜像

下载完成后,验证ISO文件的SHA256值是否正确。

   wget https://mirrors.kernel.org/centos/7.4.1708/isos/x86_64/sha256sum.txt
   sha256sum c sha256sum.txt

3、创建虚拟机

使用virtinstall命令创建一个新的CentOS虚拟机,以下是示例命令:

   virtinstall \
     virttype=kvm \
     name centos7 \
     ram 2048 \
     vcpus 1 \
     osvariant=centos7.0 \
     cdrom=/var/lib/libvirt/boot/CentOS7x86_64Minimal1708.iso \
     network=bridge=br0,model=virtio \
     graphics vnc \
     disk path=/var/lib/libvirt/images/centos7.qcow2,size=40,bus=virtio,format=qcow2

4、连接到虚拟机控制台

从另一个终端通过SSH配置VNC登录,输入:

   virsh dumpxml centos7 | grep vnc<graphics type='vnc' port='5901' autoport='yes' listen='127.0.0.1'>

记录下端口值(即5901),你需要使用SSH客户端来建立隧道和VNC客户端才能访问远程vnc服务器,在客户端系统中输入以下SSH端口转发命令:

   ssh vivek@server1.cyberciti.biz L 5901:127.0.0.1:5901

一旦你建立了SSH隧道,你可以将你的VNC客户端指向你自己的127.0.0.1(localhost)地址和端口5901,如下所示:

你应该看到CentOS Linux 7客户虚拟机安装屏幕如下:现在只需按照屏幕说明进行操作并安装CentOS 7,一旦安装完成后,请继续并单击重启按钮,远程服务器关闭了我们的VNC客户端的连接,你可以通过KVM客户端重新连接,以配置服务器的其余部分,包括基于SSH的会话或防火墙。

六、常见问题及解决方法

1、问题:无法连接到虚拟机控制台

确保SSH隧道已正确建立。

检查防火墙设置,确保允许VNC流量。

确认VNC端口号正确。

2、问题:虚拟机无法联网

确认网桥接口配置正确。

检查虚拟机的网络配置,确保其设置为正确的网络模式。

使用virsh netlistbrctl show命令检查网络状态。

通过以上步骤,你已经成功在CentOS上安装了KVM,并创建了第一个虚拟机,KVM提供了强大的虚拟化功能,可以帮助你更高效地管理和利用服务器资源,你可以进一步探索更多高级功能,如自动备份、快照、迁移等,以满足不同的业务需求。

分享:
扫描分享到社交APP
上一篇
下一篇