如何在 Ubuntu 20.04 上使用 KVM 創建 Linux 操作系統模板

KVM 是指基於內核的虛擬機,它有助於運行多個 Linux 或基於窗口的獨立客戶機以及它們自己的操作系統和虛擬專用硬件。 要運行 KVM,您的系統必須與硬件虛擬化擴展兼容,例如 AMD-V 或 Intel-VT。

VM 模板是虛擬機的副本,包括特定的虛擬機配置以及來賓操作系統。 如果您需要部署同一實例的多個 VM,那麼使用模板創建虛擬機會派上用場,這在節省時間和存儲方面起著巨大的作用。

本教程將向您展示如何從 KVM 上的現有 VM 創建 VM 模板。 在本文中,KVM 的安裝和 Linux OS 模板的創建都是在 Ubuntu 20.04 系統上完成的。 在繼續該過程之前,系統會預先要求您準備好安裝了 KVM 的系統。

創建 KVM 虛擬機

首先,確保 libvirtd 守護程序正在您的系統上運行。 如果沒有,則使用 systemctl 命令啟動並啟用守護進程。

$ sudo systemctl 啟動 libvirtd $ sudo systemctl 啟用 libvirtd

檢查 libvirtd 守護進程狀態,

$ sudo systemctl 狀態 libvirtd

如果您當前的系統是 Ubuntu/Debian,請使用以下命令啟用 vhost-net 內核模塊。

$ sudo modprobe vhost_net

要創建模板,我們首先需要在系統上有一個安裝實例。 我們將使用下面給出的 qemu-img 命令創建 15 G centos 8 KVM 映像。

$ sudo qemu-img create -o preallocation=metadata -f qcow2 /var/lib/libvirt/images/centos8.qcow2 15G

然後,使用下面提到的 virt-install 命令創建虛擬機。 我將使用 CentOS 8 作為來賓操作系統,但您可以使用任何其他發行版。 只需注意調整包含應安裝的操作系統的 ISO 映像的路徑 (/home/janak/Downloads/CentOS-8.4.2105-x86_64-boot.iso) 以匹配您要安裝的操作系統的路徑在虛擬機中。

$ sudo virt-install –virt-type kvm –name centos8 –ram 2048 –disk /var/lib/libvirt/images/centos8.qcow2,format=qcow2 –network network=default –graphics vnc, listen=0.0.0.0 –noautoconsole –os-type=linux –os-variant=rhel7.0 –cdrom=/home/janak/Downloads/CentOS-8.4.2105-x86_64-boot.iso

在上面的命令中,將 –cdrom 選項的參數替換為您下載的 centos iso 映像。 然後該命令將在您的 KVM 中安裝並運行 VM,因此使用 virt-manager 打開您的 KVM。

$ sudo 虛擬管理器

一旦你打開KVM,你可以看到你的VM處於運行狀態,所以打開VM然後系統將開始啟動過程,你可以看到以下centos的初始設置頁面。 然後,完成設置過程並完成設置。

Linux 操作系統安裝程序

在 KVM 中創建虛擬機模板

完成設置後,登錄到您的系統,更新您的系統,並安裝所有基本和必需的軟件包。

要更新系統存儲庫中的軟件包信息,請使用:

$ sudo 百勝更新 -y

安裝一些您認為必要的基本軟件包。 就我而言,我已經安裝了以下軟件包。

$ sudo 百勝安裝 curl epel-release 解壓 telnet wget -y

然後,禁用 zeroconf 路由。 Zeroconf 是一種在兩台計算機之間進行通信並允許它們共享彼此資源的網絡方法。 它使用 Internet 協議 (IP) 在兩台計算機之間建立通信。

$ echo “NOZEROCONF=yes” | sudo tee -a /etc/sysconfig/network

現在,關閉虛擬機以繼續進一步處理。

$ sudo 關機

在您的普通終端中執行以下 virt-sysprep 命令來清理實例。 virt-sysprep 是用於重新配置或重置 VM 以使其可克隆的命令行實用程序。

$ sudo virt-sysprep -d centos8

CentOS 系統準備

在命令中,centos8 指的是您安裝的虛擬機的名稱,因此如果您有不同的虛擬機名稱,請將其替換為您的虛擬機名稱。 如果您的系統沒有安裝 virt-sysprep,您可以使用下面給出的命令安裝它。

$ sudo 適當更新 $ sudo apt 安裝 libguestfs 工具

最後,執行以下 virsh undefined domain 命令以刪除來賓虛擬機配置。

$ sudo virsh 取消定義 centos8

移除虛擬機

恭喜,您的模板已創建。 現在您可以克隆和部署它的許多多個實例。

結論

感謝您閱讀這篇文章。 在本文中,我們將創建虛擬機並了解如何創建模板以創建它的多個實例並進行部署。