基于RHEL 9 搭建 KVM 虛擬化環(huán)境
1. 檢查硬件虛擬化支持
KVM 要求處理器支持硬件虛擬化技術(shù):Intel VT-x(虛擬化技術(shù)擴(kuò)展)或 AMD-V(虛擬化技術(shù)擴(kuò)展)。
檢查方法:
-
使用以下命令檢查 CPU 是否支持虛擬化:
egrep '(vmx|svm)' /proc/cpuinfo-
輸出含有
vmx的為 Intel 處理器支持虛擬化 -
輸出含有
svm的為 AMD 處理器支持虛擬化
注意:如果沒有輸出,可能需要進(jìn)入 BIOS 并啟用虛擬化技術(shù)(Intel VT-x 或 AMD-V)。
-
2. 更新系統(tǒng)
在安裝軟件包之前,先確保 RHEL 9 系統(tǒng)是最新的。
sudo dnf update -y
二、安裝 KVM 和虛擬化工具
在 RHEL 9 中,虛擬化軟件包可以通過軟件組來安裝,包含 KVM 核心組件和其他工具。
1. 安裝 KVM 和相關(guān)組件
運行以下命令安裝 KVM、libvirt(虛擬機管理工具)、virt-install(命令行安裝虛擬機工具)和 virt-manager(圖形界面虛擬機管理工具)。
sudo dnf install -y @virtualization
sudo dnf install -y virt-install virt-manager libvirt libvirt-devel qemu-kvm
安裝包解釋:
-
@virtualization:安裝虛擬化相關(guān)軟件組 -
virt-install:命令行工具,用于創(chuàng)建虛擬機 -
virt-manager:圖形化界面管理虛擬機的工具 -
libvirt:虛擬機管理工具,提供服務(wù)管理 KVM -
libvirt-devel:用于開發(fā)的庫 -
qemu-kvm:QEMU(Quick Emulator)是 KVM 的默認(rèn)虛擬機管理程序(Hypervisor)
三、啟動和配置 KVM 服務(wù)
1. 啟動 libvirtd 服務(wù)
libvirt 是 KVM 的核心服務(wù),負(fù)責(zé)管理虛擬機的生命周期。
sudo systemctl enable --now libvirtd
-
enable:設(shè)置開機自啟 -
--now:立即啟動服務(wù)
你可以用以下命令檢查服務(wù)是否正在運行:
sudo systemctl status libvirtd
2. 加入 libvirt 組(可選)
為了簡化操作,將當(dāng)前用戶加入 libvirt 組,這樣無需使用 sudo 就能管理虛擬機。
sudo usermod -aG libvirt $(whoami)
newgrp libvirt
3. 驗證 KVM 內(nèi)核模塊是否加載
驗證 KVM 內(nèi)核模塊(kernel module)是否正確加載:
sudo lsmod | grep kvm
輸出中應(yīng)該有類似如下的內(nèi)容:
kvm_intel 32768 0
kvm 90112 1 kvm_intel
其中:
-
kvm_intel表示這是 Intel 的虛擬化模塊 -
對于 AMD 的處理器,則是
kvm_amd
如果沒有看到相應(yīng)模塊,說明 KVM 模塊未加載,可以手動加載:
sudo modprobe kvm
四、網(wǎng)絡(luò)配置(可選,橋接網(wǎng)絡(luò))
虛擬機默認(rèn)通過 NAT 網(wǎng)絡(luò)訪問外部網(wǎng)絡(luò)。如果希望虛擬機能作為局域網(wǎng)中的獨立主機,使用橋接網(wǎng)絡(luò)會更合適。
1. 安裝橋接工具
sudo dnf install -y bridge-utils
2. 創(chuàng)建橋接網(wǎng)絡(luò)
首先創(chuàng)建一個新的網(wǎng)橋接口。你可以修改現(xiàn)有的網(wǎng)絡(luò)連接,或者添加新的橋接。
使用 NetworkManager 創(chuàng)建橋接:
-
打開
/etc/NetworkManager/system-connections/目錄,并找到現(xiàn)有的網(wǎng)絡(luò)連接配置文件(文件名格式類似于eno1.nmconnection)。 -
編輯該文件,將
type設(shè)置為bridge。
[connection]
id=bridge0
type=bridge
interface-name=br0
?
[bridge]
stp=false
-
重啟 NetworkManager:
sudo systemctl restart NetworkManager
-
配置完成后,可以使用
ip addr或nmcli命令查看網(wǎng)橋是否創(chuàng)建成功。
五、創(chuàng)建虛擬機
可以使用命令行工具 virt-install 或圖形化工具 virt-manager 來創(chuàng)建和管理虛擬機。
1. 使用命令行工具 virt-install 創(chuàng)建虛擬機
假設(shè)有一個 RHEL 9 的 ISO 鏡像文件在 /var/lib/libvirt/images/rhel-9.iso,并希望創(chuàng)建一臺虛擬機。
sudo virt-install \
--name=rhel-vm \
--ram=4096 \
--vcpus=4 \
--os-type=linux \
--os-variant=rhel9.0 \
--cdrom=/var/lib/libvirt/images/rhel-9.iso \
--network bridge=br0 \
--disk path=/var/lib/libvirt/images/rhel-vm.qcow2,size=20 \
--graphics=none \
--console pty,target_type=serial
參數(shù)解釋:
-
--name=rhel-vm:虛擬機名稱 -
--ram=4096:分配 4GB 內(nèi)存 -
--vcpus=4:分配 4 個虛擬 CPU 核心 -
--os-type=linux:操作系統(tǒng)類型 -
--os-variant=rhel9.0:指定 RHEL 9 版本 -
--cdrom=/path/to/iso:指定 ISO 鏡像 -
--network bridge=br0:使用br0網(wǎng)橋網(wǎng)絡(luò) -
--disk path=/path/to/disk,size=20:指定虛擬硬盤位置及大小(20GB) -
--graphics=none:無圖形化界面(使用命令行安裝) -
--console pty,target_type=serial:使用串行終端
2. 使用圖形化工具 virt-manager
-
在終端中運行
virt-manager:sudo virt-manager -
通過圖形化界面創(chuàng)建虛擬機,步驟包括:
-
選擇
本地安裝媒體。 -
指定 ISO 鏡像文件。
-
分配內(nèi)存和 CPU。
-
配置虛擬硬盤大小和位置。
-
選擇網(wǎng)絡(luò)類型(默認(rèn) NAT,或者橋接網(wǎng)橋)。
-
六、虛擬機的管理
1. 使用 virsh 管理虛擬機
virsh 是 libvirt 提供的命令行工具,用于管理虛擬機的生命周期。
查看虛擬機狀態(tài):
sudo virsh list --all
啟動虛擬機:
sudo virsh start rhel-vm
關(guān)閉虛擬機:
sudo virsh shutdown rhel-vm
強制停止虛擬機:
sudo virsh destroy rhel-vm
刪除虛擬機:
sudo virsh undefine rhel-vm
設(shè)置虛擬機開機自動啟動:
sudo virsh autostart rhel-vm
七、其他常見問題與解決方案
1. KVM 無法啟動虛擬機?
-
檢查
libvirtd服務(wù)是否正常運行:sudo systemctl status libvirtd -
確認(rèn) CPU 是否支持虛擬化,并且虛擬化技術(shù)在 BIOS 中啟用。
2. 圖形界面無法使用?
-
確保安裝了
virt-manager,并正確啟動 X11 會話(遠(yuǎn)程服務(wù)器可能需要 X forwarding 配置)。
3. 網(wǎng)絡(luò)無法連通?
本文來自博客園,作者:ZHappy-Blog,轉(zhuǎn)載請注明原文鏈接:http://www.rzrgm.cn/fqxm/p/18429045

浙公網(wǎng)安備 33010602011771號