Linux中國

Ubuntu 22.04 之 KVM 安裝手札

KVM 基於內核的虛擬機 Kernel-based Virtual Machine 的首字母縮寫,這是一項集成在內核中的開源虛擬化技術。它是一種類型一(裸機)的 管理程序 hypervisor ,可以使內核能夠作為一個 裸機管理程序 bare-metal hypervisor

KVM 之上可以運行 Windows 和 Liunx 虛擬機。每個虛擬機都獨立於其它虛擬機和底層操作系統(宿主機系統),並擁有自己的 CPU、內存、網路介面、存儲設備等計算資源。

本文將介紹在 Ubuntu 22.04 LTS(Jammy Jellyfish)中如何安裝 KVM 。在文末,我們也將演示如何在安裝 KVM 完成之後創建一台虛擬機。

1、更新 Ubuntu 22.04

在一切開始前,打開終端並通過如下命令更新本地的軟體包索引:

$ sudo apt update

2、檢查虛擬化是否開啟

在進一步行動之前,首先需要檢查你的 CPU 是否支持 KVM 虛擬化,確保你系統中有 VT-x( vmx)英特爾處理器或 AMD-V(svm)處理器。

你可以通過運行如下命令,如果輸出值大於 0,那麼虛擬化被啟用。否則,虛擬化被禁用,你需要啟用它:

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

SVM-VMX-Flags-Cpuinfo-linux

根據上方命令輸出,你可以推斷出虛擬化功能已經啟用,因為輸出結果大於 0。如果虛擬化功能沒有啟用,請確保在系統的 BIOS 設置中啟用虛擬化功能。

另外,你可以通過如下命令判斷 KVM 虛擬化是否已經在運行:

$ kvm-ok

運行該命令之前,請確保你已經安裝了 cpu-checker 軟體包,否則將提示未找到該命令的報錯。

直接就在下面,你會得到如何解決這個問題的指示,那就是安裝 cpu-checker 包。

KVM-OK-Command-Not-Found-Ubuntu

隨後,通過如下命令安裝 cpu-checker 軟體包:

$ sudo apt install -y cpu-checker

接著再運行 kvm-ok 命令,如果 KVM 已經啟動,你將看到如下輸出:

$ kvm-ok

KVM-OK-Command-Output

3、在 Ubuntu 22.04 上安裝 KVM

隨後,通過如下命令在 Ubuntu 22.04 中安裝 KVM 以及其他相關虛擬化軟體包:

$ sudo apt install -y qemu-kvm virt-manager libvirt-daemon-system virtinst libvirt-clients bridge-utils

以下為你解釋剛剛安裝了哪些軟體包:

  • qemu-kvm – 一個提供硬體模擬的開源模擬器和虛擬化包
  • virt-manager – 一款通過 libvirt 守護進程,基於 QT 的圖形界面的虛擬機管理工具
  • libvirt-daemon-system – 為運行 libvirt 進程提供必要配置文件的工具
  • virtinst – 一套為置備和修改虛擬機提供的命令行工具
  • libvirt-clients – 一組客戶端的庫和API,用於從命令行管理和控制虛擬機和管理程序
  • bridge-utils – 一套用於創建和管理橋接設備的工具

4、啟用虛擬化守護進程(libvirtd)

在所有軟體包安裝完畢之後,通過如下命令啟用並啟動 libvirt 守護進程:

$ sudo systemctl enable --now libvirtd
$ sudo systemctl start libvirtd

你可以通過如下命令驗證該虛擬化守護進程是否已經運行:

$ sudo systemctl status libvirtd

Libvirtd-Status-Ubuntu-Linux

另外,請將當前登錄用戶加入 kvmlibvirt 用戶組,以便能夠創建和管理虛擬機。

$ sudo usermod -aG kvm $USER
$ sudo usermod -aG libvirt $USER

$USER 環境變數引用的即為當前登錄的用戶名。你需要重新登錄才能使得配置生效。

5、創建網橋(br0)

如果你打算從本機(Ubuntu 22.04)之外訪問 KVM 虛擬機,你必須將虛擬機的網卡映射至網橋。virbr0 網橋是 KVM 安裝完成後自動創建的,僅做測試用途。

你可以通過如下內容在 /etc/netplan 目錄下創建文件 01-netcfg.yaml 來新建網橋:

$ sudo vi /etc/netplan/01-netcfg.yaml
network:
  ethernets:
    enp0s3:
      dhcp4: false
      dhcp6: false
  # add configuration for bridge interface
  bridges:
    br0:
      interfaces: [enp0s3]
      dhcp4: false
      addresses: [192.168.1.162/24]
      macaddress: 08:00:27:4b:1d:45
      routes:
        - to: default
          via: 192.168.1.1
          metric: 100
      nameservers:
        addresses: [4.2.2.2]
      parameters:
        stp: false
      dhcp6: false
  version: 2

保存並退出文件。

註:上述文件的配置是我環境中的,請根據你實際環境替換 IP 地址、網口名稱以及 MAC 地址。

你可以通過運行 netplan apply 命令應用上述變更。

$ sudo netplan apply

你可以通過如下 ip 命令,驗證網橋 br0

$ ip add show

Network-Bridge-br0-ubuntu-linux

6、啟動 KVM 虛擬機管理器

當 KVM 安裝完成後,你可以使用圖形管理工具 virt-manager 創建虛擬機。你可以在 GNOME 搜索工具中搜索 Virtual Machine Manager 以啟動。

點擊搜索出來的圖標即可:

Access-Virtual-Machine-Manager-Ubuntu-Linux

虛擬機管理器界面如下所示:

Virtual-Machine-Manager-Interface-Ubuntu-Linux

你可以點擊 「 文件 File 」 並選擇 「 新建虛擬機 New Virtual Machine 」。你也可以點擊下圖所示的圖標:

New-Virtual-Machine-Icon-Virt-Manager

在彈出的虛擬機安裝嚮導將看到如下四個選項:

  • 本地安裝介質(ISO 鏡像或 CDROM)
  • 網路安裝(HTTP、HTTPS 和 FTP)
  • 導入現有磁碟鏡像
  • 手動安裝

本文使用已下載的 ISO 鏡像,你可以選擇自己的 ISO 鏡像,選擇第一個選項,並點擊 「 向前 Forward 」。

Local-Install-Media-ISO-Virt-Manager

下一步中,點擊 「 瀏覽 Browse 」 選擇 ISO 鏡像位置。

Browse-ISO-File-Virt-Manager-Ubuntu-Linux

在下一個窗口中點擊 「 瀏覽本地 Browse local 」 選取本機中 ISO 鏡像。

Browse-Local-ISO-Virt-Manager

如下所示,我們選擇了 Debian 11 ISO 鏡像,隨後點擊 「 打開 Open 」。

Choose-ISO-File-Virt-Manager

當 ISO 鏡像選擇後,點擊 「 向前 Forward 」 進入下一步。

Forward-after-browsing-iso-file-virt-manager

接著定義虛擬機所用內存大小以及 CPU 核心數,並點擊 「 向前 Forward 」 。

Virtual-Machine-RAM-CPU-Virt-Manager

下一步中,輸入虛擬機磁碟空間,並點擊 「 向前 Forward 」 繼續。

Storage-for-Virtual-Machine-KVM-Virt-Manager

如你需要將虛擬機網卡連接至網橋,點擊 「 選擇網路 Network selection 」 並選擇 br0 網橋。

Network-Selection-KVM-Virtual-Machine-Virt-Manager

最後,點擊 「 完成 Finish 」 按鈕結束設置虛擬機。

Choose-Finish-to-OS-Installation-KVM-VM

稍等片刻,虛擬機的創建過程將開始。

Creating-Domain-Virtual-Machine-Virt-Manager

當創建結束時,虛擬機將開機並進入系統安裝界面。如下是 Debian 11 的安裝選項。在這裡你可以根據需要進行系統安裝。

Virtual-Machine-Console-Virt-Manager

小結

至此,本文向你演示了如何在 Ubuntu 22.04 上 安裝 KVM 虛擬化引擎。你的反饋對我們至關重要。

via: https://www.linuxtechi.com/how-to-install-kvm-on-ubuntu-22-04/

作者:James Kiarie 選題:lkxed 譯者:turbokernel 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國