웹사이트 검색

KVM 가상 머신 템플릿을 생성하는 방법


가상 머신 템플릿은 기본적으로 가상 머신의 여러 인스턴스를 배포하려고 할 때 유용한 설치된 가상 머신의 복사본입니다. 템플릿 생성은 가상 머신 생성, 설치하려는 모든 필수 패키지 설치, 마지막으로 템플릿 정리를 포함하는 3단계 프로세스입니다.

계속해서 이 작업을 어떻게 수행할 수 있는지 살펴보겠습니다.

1단계: Linux에 KVM 설치

첫 번째 단계는 시스템에 KVM을 설치하는 것입니다. 우리는 다음에 대한 포괄적인 튜토리얼을 보유하고 있습니다:

  • Ubuntu 20.04에 KVM을 설치하는 방법
  • CentOS 8에 KVM을 설치하는 방법

또한 libvirtd 데몬이 실행 중이고 부팅 시 자동으로 시작되도록 활성화되어 있는지 확인하세요.

sudo systemctl enable libvirtd
sudo systemctl start libvirtd

libvirtd 데몬이 실행 중인지 확인하세요.

sudo systemctl status libvirtd

Ubuntu/Debian 시스템을 실행 중인 경우 vhost-net 이미지가 로드되었는지 확인하세요.

sudo modprobe vhost_net

2단계: KVM 가상 이미지 생성

템플릿을 만들기 전에 먼저 설치 인스턴스가 있어야 합니다. 명령줄에서 표시된 대로 qemu-img 명령을 사용하여 20G CentOS 8 KVM 이미지를 생성하겠습니다.

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

다음으로, virt-install 명령을 사용하여 표시된 대로 CentOS 8 가상 머신을 생성합니다.

sudo virt-install --virt-type kvm --name centos8 --ram 2096 \
--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 \
--location=/home/tecmint/Downloads/CentOS-8-x86_64-1905-dvd1.iso

그러면 가상 머신 인스턴스가 시작됩니다. virt-manager로 이동하여 표시된 대로 콘솔 창을 열어 이를 확인할 수 있습니다. 볼 수 있는 것은 설치 프로그램의 기본 환영 페이지입니다. 반드시 끝까지 설치를 완료하시기 바랍니다.

3단계: KVM 가상 머신 템플릿 이미지 생성

설치가 완료되면 VM에 로그인하여 모든 시스템 패키지를 업데이트합니다.

sudo dnf update

시작하는 데 필수적이라고 생각되는 필수 구성 요소 패키지를 설치합니다. 이 경우 EPEL 릴리스, wget, 컬, net-tools 및 vim을 설치하겠습니다. 귀하의 경우에는 다를 수 있습니다.

sudo dnf install epel-release wget curl net-tools vim

클라우드 플랫폼에 템플릿을 배포하려면 표시된 대로 cloud-init 패키지를 설치하세요.

sudo dnf install cloud-init cloud-utils-growpart acpid

다음으로 zeroconf 경로를 비활성화합니다.

echo "NOZEROCONF=yes" >> /etc/sysconfig/network

완료되면 가상 머신의 전원을 끄고 표시된 대로 VM 템플릿 이미지를 정리하십시오.

sudo virt-sysprep -d centos8

virt-sysprep은 가상 머신에서 복제를 만들기 위해 가상 머신을 재설정하는 명령줄 유틸리티입니다. SSH 호스트 키, 로그 파일, 사용자 계정 및 일부 영구 네트워크 구성과 같은 항목을 제거합니다. 명령을 사용하려면 먼저 항상 VM의 전원이 꺼져 있는지 확인해야 합니다.

sudo virt-sysprep -d centos8

마지막으로 표시된 명령을 호출하여 VM 도메인 정의를 해제합니다.

sudo virsh undefine centos8

이제 템플릿 이미지를 복제하고 배포할 준비가 되었습니다.