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

VM 模板是包含特定虛擬機配置和來賓操作系統的虛擬機副本。當您需要部署同一實例的多個 VM 時,使用模板創建虛擬機很有用。這在節省時間和存儲方面起著很大的作用。

本教程介紹如何從 KVM 上的現有 VM 創建 VM 模板。在本文中,我們將在 Ubuntu 20.04 系統上安裝 KVM 並創建一個 Linux 操作系統模板。在繼續該過程之前,您需要準備一個安裝了 KVM 的系統。

創建 KVM 虛擬機

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

$ sudo systemctl start libvirtd
$ sudo systemctl enable libvirtd

檢查 libvirtd 守護進程的狀態。

$ sudo systemctl status libvirtd

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

$ sudo modprobe vhost_net

要創建模板,您必須首先在您的系統上安裝一個實例。使用如下所示的 qemu-img 命令創建一個 15G 的 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

在 KVM qemu 映像上安裝操作系統。

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

$ sudo virt-manager

打開 KVM,您將看到 VM 正在運行。 開啟虛擬機後,系統會開始啟動過程,你會看到centos初始設置頁面:然後完成設置過程,你就完成了。

Linux 操作系統安裝程序

在 KVM 中創建虛擬機模板

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

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

$ sudo yum update -y

安裝一些你可能需要的基本包。就我而言,我安裝了以下軟件包:

$ sudo yum install curl epel-release unzip telnet wget -y

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

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

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

$ sudo poweroff

通過在常規終端中運行以下 virt-sysprep 命令來清理您的實例: virt-sysprep 是一個命令行實用程序,用於重新配置或重置 VM,以便它可以被克隆。

$ sudo virt-sysprep -d centos8

準備CentOS系統

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

$ sudo apt update
$ sudo apt install libguestfs-tools

最後,通過運行 virsh undefined domain 命令刪除來賓虛擬機的配置:

$ sudo virsh undefine centos8

刪除虛擬機

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

結論是

感謝您閱讀本文。在本文中,您將學習如何創建虛擬機和創建模板來創建多個實例及其部署。