在 Centos7 的KVM上啟用巢狀虛擬化
巢狀虛擬化意味著在虛擬機器內配置虛擬化環境。換句話說,我們可以說嵌套虛擬化是虛擬機管理程式的特性,它允許我們透過虛擬化管理程式(宿主機)的硬體加速在虛擬伺服器內安裝和運行虛擬機器。
在這篇文章中,我們將討論如何在 CentOS 7 / RHEL 7 的 KVM 上啟用巢狀虛擬化。我假定您已經配置過 KVM 管理程式。如果您不熟悉如何安裝和設定 KVM 管理程序,請參考以下文章。
#讓我們進入虛擬化管理程序,驗證您的 KVM 宿主機是否啟用了巢狀虛擬化。
基於 Intel 的處理器執行以下命令:
[root@kvm-hypervisor ~]# cat /sys/module/kvm_intel/parameters/nested N
基於 AMD 的處理器執行以下命令:
[root@kvm-hypervisor ~]# cat /sys/module/kvm_amd/parameters/nested N
上述指令輸出 N 表示巢狀虛擬化是已停用的。如果我們得到的輸出是 Y 則表示在您的宿主機器已啟用嵌套虛擬化。
現在啟用巢狀虛擬化,使用以下內容建立一個檔案名稱 /etc/modprobe.d/kvm-nested.conf 的檔案:
[root@kvm-hypervisor ~]# vi /etc/modprobe.d/kvm-nested.conf
options kvm-intel nested=1 options kvm-intel enable_shadow_vmcs=1 options kvm-intel enable_apicv=1 options kvm-intel ept=1
儲存並退出檔案。
現在移除 kvm_intel 模組然後透過 modprobe 指令加入相同的模組。在移除模組之前,請確保虛擬機器已關機,否則我們會得到像 “modprobe: FATAL: Module kvm_intel is in use” 這樣的錯誤訊息。
[root@kvm-hypervisor ~]# modprobe -r kvm_intel [root@kvm-hypervisor ~]# modprobe -a kvm_intel
現在驗證巢狀虛擬化功能是否啟用。
[root@kvm-hypervisor ~]# cat /sys/module/kvm_intel/parameters/nested Y
#假設我們在 KVM 管理程式上有一台已經啟用了巢狀虛擬化的名為 “director” 的虛擬機器。在測試之前,請確保 CPU 模式為 “host-modle” 或 “host-passthrough” ,使用 Virt-Manager 或 virtsh 編輯指令檢查虛擬機器的 CPU 模式。
#cpu_mode_vm_kvm
現在登入 director 這台虛擬機器並執行 lscpu 和 lsmod 指令。
[root@kvm-hypervisor ~]# ssh 192.168.126.1 -l root root@192.168.126.1's password: Last login: Sun Dec 10 07:05:59 2017 from 192.168.126.254 [root@director ~]# lsmod | grep kvm kvm_intel 170200 0 kvm 566604 1 kvm_intel irqbypass 13503 1 kvm
[root@director ~]# lscpu
#lscpu_command_rhel7_centos7
讓我們試著在director 這台虛擬機的虛擬管理器GUI 或virt-install 指令建立一台虛擬機,在我的情況下我使用virt-install 命令。
[root@director ~]# virt-install -n Nested-VM --description "Test Nested VM" --os-type=Linux --os-variant=rhel7 --ram=2048 --vcpus=2 --disk path=/var/lib/libvirt/images/nestedvm.img,bus=virtio,size=10 --graphics none --location /var/lib/libvirt/images/CentOS-7-x86_64-DVD-1511.iso --extra-args console=ttyS0 Starting install... Retrieving file .treeinfo... | 1.1 kB 00:00:00 Retrieving file vmlinuz... | 4.9 MB 00:00:00 Retrieving file initrd.img... | 37 MB 00:00:00 Allocating 'nestedvm.img' | 10 GB 00:00:00 Connected to domain Nested-VM Escape character is ^] [ 0.000000] Initializing cgroup subsys cpuset [ 0.000000] Initializing cgroup subsys cpu [ 0.000000] Initializing cgroup subsys cpuacct [ 0.000000] Linux version 3.10.0-327.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC) ) #1 SMP Thu Nov 19 22:10:57 UTC 2015 ………………………………………………
#cli-installer-virt-install-command-kvm
這證實了巢狀虛擬化已成功啟用,因為我們能在虛擬機器內建立虛擬機器。
以上是在 Centos7 的KVM上啟用巢狀虛擬化的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

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

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

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

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

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

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

VS Code 系統要求:操作系統:Windows 10 及以上、macOS 10.12 及以上、Linux 發行版處理器:最低 1.6 GHz,推薦 2.0 GHz 及以上內存:最低 512 MB,推薦 4 GB 及以上存儲空間:最低 250 MB,推薦 1 GB 及以上其他要求:穩定網絡連接,Xorg/Wayland(Linux)

Linux系統的五個基本組件是:1.內核,2.系統庫,3.系統實用程序,4.圖形用戶界面,5.應用程序。內核管理硬件資源,系統庫提供預編譯函數,系統實用程序用於系統管理,GUI提供可視化交互,應用程序利用這些組件實現功能。

雖然 Notepad 無法直接運行 Java 代碼,但可以通過借助其他工具實現:使用命令行編譯器 (javac) 編譯代碼,生成字節碼文件 (filename.class)。使用 Java 解釋器 (java) 解釋字節碼,執行代碼並輸出結果。

vscode 內置終端是一個開發工具,允許在編輯器內運行命令和腳本,以簡化開發流程。如何使用 vscode 終端:通過快捷鍵 (Ctrl/Cmd ) 打開終端。輸入命令或運行腳本。使用熱鍵 (如 Ctrl L 清除終端)。更改工作目錄 (如 cd 命令)。高級功能包括調試模式、代碼片段自動補全和交互式命令歷史。

要查看 Git 倉庫地址,請執行以下步驟:1. 打開命令行並導航到倉庫目錄;2. 運行 "git remote -v" 命令;3. 查看輸出中的倉庫名稱及其相應的地址。

VS Code擴展安裝失敗的原因可能包括:網絡不穩定、權限不足、系統兼容性問題、VS Code版本過舊、殺毒軟件或防火牆干擾。通過檢查網絡連接、權限、日誌文件、更新VS Code、禁用安全軟件以及重啟VS Code或計算機,可以逐步排查和解決問題。

在 Visual Studio Code(VSCode)中編寫代碼簡單易行,只需安裝 VSCode、創建項目、選擇語言、創建文件、編寫代碼、保存並運行即可。 VSCode 的優點包括跨平台、免費開源、強大功能、擴展豐富,以及輕量快速。

VS Code 可以在 Mac 上使用。它具有強大的擴展功能、Git 集成、終端和調試器,同時還提供了豐富的設置選項。但是,對於特別大型項目或專業性較強的開發,VS Code 可能會有性能或功能限制。
