KVM 是 核心虛擬機器Kernel Virtualization Machine
與大多數虛擬化平台一樣,它將硬體資源(如CPU、記憶體、儲存、網路、圖形等)抽象化,並將它們分配給獨立於宿主機運行的客戶機。
先決條件
- 預先安裝Rocky Linux 9 / AlmaLinux 9
- 具有管理員權限的sudo 使用者
- 網路連線
1、驗證是否啟用了硬體虛擬化
首先,你需要驗證你的系統是否啟用了虛擬化功能。在大多數現代系統上,此功能已在 BIOS 中啟用。但可以肯定的是,你可以驗證是否如圖所示啟用了虛擬化。
此指令可偵測是否有 VMX(虛擬機器擴充Virtual Machine Extension),它是英特爾硬體虛擬化的 CPU 標誌,或稱為 SVM,它是 AMD 硬體虛擬化的標誌。
$ cat /proc/cpuinfo | egrep "vmx|svm"
從以下輸出中,你可以看到我們的系統啟用了英特爾硬體虛擬化:
2、在Rocky Linux 9 / AlmaLinux 9上安裝KVM
確保啟用虛擬化後,下一步就是安裝KVM 和管理工具。為此,請執行以下 dnf
指令。
$ sudo dnf install qemu-kvm virt-manager libvirt virt-install virt-viewer virt-top bridge-utilsbridge-utils virt-top libguestfs-tools -y
安裝完成後,執行下列指令檢查是否已載入所需的 KVM 模組。
$ lsmod | grep kvm
你應該得到以下輸出以確認已載入必要的模組:
3、啟動並啟用libvirtd 守護程式
在下一步中,一定要啟動libvirtd 守護程式。這是一個伺服器端守護程式元件,可以在虛擬化的客戶機上執行和管理任務。它被應用於虛擬化技術的管理,如 Xen、KVM、ESXi 等。
要啟動libvirtd 守護進程,請執行以下命令:
$ sudo systemctl start libvirtd
請務必啟用該服務以在引導時啟動:
$ sudo systemctl enable --now libvirtd
驗證libvirtd 守護程式是否正在運行,如下所示:
$ sudo systemctl status libvirtd
4、設定橋接介面
到目前為止,我們已經安裝了KVM 和所有管理工具,事實上,我們可以繼續啟動虛擬機器。但是,如果我們可以從管理程式網路外部存取虛擬機,那就太好了。為此,我們需要建立一個橋接介面。
首先,確定係統上的網路介面。
$ sudo nmcli connection show
從輸出來看,ens160
是活動的網路接口,請務必注意你的情況下的接口,因為你將一路使用它。
要開始建立網橋,首先,使用以下語法用其UUID 刪除連接:
$ sudo nmcli connection delete UUID
在我們的範例中,指令將會是:
$ sudo nmcli connection delete 19e98123-9a84-30a6-bc59-a7134446bb26
你將會收到連線已成功刪除的確認訊息。
在繼續進行之前,最好準備好以下詳細資訊:
- 网桥名称 – 新网桥的首选名称(例如
br1
) - 设备名称 – 这是你的网络接口的名称。它将作为网桥的从属设备(例如,
ens160
) - IP 地址/子网 – 桥接网络的 IP 地址和子网(例如
192.168.2.50/24
)。请注意,这应该与你的网络子网和 IP 地址相对应。 - 网关 – 你网络的默认网关地址(例如
192.168.2.1
) - DNS1 和 DNS2 – 首选 DNS 地址(例如
8.8.8.8
和8.8.4.4
)
继续,使用以下语法创建一个新的桥接接口。
$ sudo nmcli connection add type bridge autoconnect yes con-name BRIDGE NAME ifname BRIDGE NAME
在我们的例子中,br1
是首选的网桥接口名称。因此,命令将如图所示:
$ sudo nmcli connection add type bridge autoconnect yes con-name br1 ifname br1
在接下来的步骤中,你将通过指定 IP 子网、网关和 DNS 值来修改网桥。
首先使用以下语法指定 IP 子网:
$ sudo nmcli connection modify BRIDGE NAME ipv4.addresses IP ADDRESS/SUBNET ipv4.method manual
根据我们的设置,命令将是:
$ sudo nmcli connection modify br1 ipv4.addresses 192.168.2.150/24 ipv4.method manual
接下来,使用以下语法指定网关地址:
$ sudo nmcli connection modify BRIDGE NAME ipv4.gateway GATEWAY
根据我们的网络,该命令采用以下格式:
$ sudo nmcli connection modify br1 ipv4.gateway 192.168.2.1
DNS 地址的语法如下:
$ sudo nmcli connection modify BRIDGE NAME ipv4.dns DNS1 +ipv4.dns DNS2
该命令采用以下格式:
$ sudo nmcli connection modify br1 ipv4.dns 8.8.8.8 +ipv4.dns 8.8.4.4
此后,使用以下命令添加网桥从属设备:
$ sudo nmcli connection add type bridge-slave autoconnect yes con-name DEVICE NAME ifname DEVICE NAME master BRIDGE NAME
使用我们的值,命令如图所示:
$ sudo nmcli connection add type bridge-slave autoconnect yes con-name ens160 ifname ens160 master br1
你将收到以下确认信息,表明已成功添加网桥从属设备。请记住,桥接从属设备是你的网络接口或适配器。
要确认网桥已创建,请运行以下命令:
$ sudo nmcli connection show
从输出中,你可以看到列出了网桥接口。
激要活它,请运行以下命令:
$ sudo nmcli connection up br1
此外,你可以使用 ip addr
命令验证:
$ ip addr | grep br1
最后,编辑网桥配置文件。
$ sudo vi /etc/qemu-kvm/bridge.conf
添加以下行:
allow all
然后重新启动虚拟化守护进程以应用更改
$ sudo systemctl restart libvirtd
5、创建虚拟机
安装 KVM 并配置桥接连接后,现在让我们创建一个虚拟机。在运行命令时,为登录用户授予必要的所有权,以避免切换到 root 用户。
$ sudo chown -R $USER:libvirt /var/lib/libvirt/
在命令行上,我们将使用以下语法使用 Ubuntu 20.04 ISO 镜像创建虚拟机。
$ virt-install \--name Ubuntu \--ram 2048 \--vcpus 2 \--disk path=/var/lib/libvirt/images/ubuntu-20.04.img,size=15 \--os-variant ubuntu20.04 \--network bridge=br1,model=virtio \--graphics vnc,listen=0.0.0.0 \--console pty,target_type=serial \--cdrom /home/linuxtechi/Downloads/ubuntu-20.04.4-desktop-amd64.iso
执行该命令后,将启动图形屏幕会话,并开始安装客户操作系统。
總結
我們關於如何在 Rocky Linux 9 / AlmaLinux 9 上安裝 KVM 的文章到此結束,非常歡迎你提供回饋。
以上是如何在 Rocky Linux 9 / AlmaLinux 9 上安裝 KVM的詳細內容。更多資訊請關注PHP中文網其他相關文章!

通過Nginx配置SSL/TLS來確保網站安全,需要以下步驟:1.創建基本配置,指定SSL證書和私鑰;2.優化配置,啟用HTTP/2和OCSPStapling;3.調試常見錯誤,如證書路徑和加密套件問題;4.應用性能優化建議,如使用Let'sEncrypt和會話復用。

Nginx是高性能的HTTP和反向代理服務器,擅長處理高並發連接。 1)基本配置:監聽端口並提供靜態文件服務。 2)高級配置:實現反向代理和負載均衡。 3)調試技巧:檢查錯誤日誌和測試配置文件。 4)性能優化:啟用Gzip壓縮和調整緩存策略。

Nginx缓存可以通过以下步骤显著提升网站性能:1)定义缓存区和设置缓存路径;2)配置缓存有效期;3)根据不同内容设置不同的缓存策略;4)优化缓存存储和负载均衡;5)监控和调试缓存效果。通过这些方法,Nginx缓存能减少后端服务器压力,提升响应速度和用户体验。

使用DockerCompose可以簡化Nginx的部署和管理,通過DockerSwarm或Kubernetes進行擴展是常見的做法。 1)使用DockerCompose定義和運行Nginx容器,2)通過DockerSwarm或Kubernetes實現集群管理和自動擴展。

Nginx的高級配置可以通過服務器塊和反向代理實現:1.服務器塊允許在一個實例中運行多個網站,每個塊獨立配置。 2.反向代理將請求轉發到後端服務器,實現負載均衡和緩存加速。

Nginx性能調優可以通過調整worker進程數、連接池大小、啟用Gzip壓縮和HTTP/2協議、使用緩存和負載均衡來實現。 1.調整worker進程數和連接池大小:worker_processesauto;events{worker_connections1024;}。 2.啟用Gzip壓縮和HTTP/2協議:http{gzipon;server{listen443sslhttp2;}}。 3.使用緩存優化:http{proxy_cache_path/path/to/cachelevels=1:2k

Nginx安全強化可以通過以下步驟實現:1)確保所有流量通過HTTPS傳輸,2)配置HTTP頭增強通信安全性,3)設置SSL/TLS加密數據傳輸,4)實施訪問控制和速率限制防範惡意流量,5)使用ngx_http_secure_link_module模塊防範SQL注入攻擊,這些措施能有效提升Nginx服務器的安全性。

Nginx通過配置負載均衡可以實現高可用性和可擴展性。 1)定義上游服務器組,2)選擇合適的負載均衡算法如輪詢、加權輪詢、最少連接或IP哈希,3)優化配置並監控調整服務器權重,以確保最佳性能和穩定性。


熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SecLists
SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

記事本++7.3.1
好用且免費的程式碼編輯器

Dreamweaver CS6
視覺化網頁開發工具

Atom編輯器mac版下載
最受歡迎的的開源編輯器

SublimeText3漢化版
中文版,非常好用