8.2. KVM 게스트 이미지에서 가상 머신 생성

RHEL 이미지 빌더를 사용하면 .qcow2 이미지를 빌드하고 KVM 게스트 이미지를 사용하여 VM을 생성할 수 있습니다. RHEL 이미지 빌더를 사용하여 생성한 KVM 게스트 이미지에는 이미 cloud-init 가 설치되어 활성화되어 있습니다.

사전 요구 사항

  • RHEL 이미지 빌더를 사용하여 .qcow2 이미지를 생성했습니다. 웹 콘솔 인터페이스에서 블루프린트 생성을 참조하십시오.
  • qemu-kvm 패키지가 시스템에 설치되어 있습니다. 시스템에서 /dev/kvm 장치를 사용할 수 있는지 확인하고 BIOS에서 가상화 기능이 활성화되어 있는지 확인할 수 있습니다.
  • 시스템에 libvirtvirt-install 패키지가 설치되어 있어야 합니다.
  • 시스템에 설치된 xorriso 패키지에서 제공하는 genisoimage 유틸리티가 있습니다.

절차

  1. RHEL 이미지 빌더를 사용하여 생성한 .qcow2 이미지를 /var/lib/libvirt/images/ 디렉터리로 이동합니다.
  2. 예를 들어 cloudinitiso 디렉터리를 만들고 새로 생성된 디렉터리로 이동합니다.

    $ mkdir cloudinitiso
    $ cd cloudinitiso
  3. meta-data 라는 파일을 만듭니다. 이 파일에 다음 정보를 추가합니다.

    instance-id: citest
    local-hostname: vmname
  4. user-data 라는 파일을 만듭니다. 파일에 다음 정보를 추가합니다.

    #cloud-config
    user: admin
    password: password
    chpasswd: {expire: False}
    ssh_pwauth: True
    ssh_authorized_keys:
      - ssh-rsa AAA...fhHQ== your.email@example.com

    ssh_authorized_keys 는 SSH 공개 키입니다. SSH 공개 키는 ~/.ssh/ <id_rsa.pub>\ 에서 찾을 수 있습니다.

  5. genisoimage 유틸리티를 사용하여 user-datameta-data 파일이 포함된 ISO 이미지를 생성합니다.

    # genisoimage -output cloud-init.iso -volid cidata -joliet -rock user-data meta-data
    
    I: -input-charset not specified, using utf-8 (detected in locale settings)
    Total translation table size: 0
    Total rockridge attributes bytes: 331
    Total directory bytes: 0
    Path table size(bytes): 10
    Max brk space used 0
    183 extents written (0 MB)
  6. virt-install 명령을 사용하여 KVM 게스트 이미지에서 새 VM을 생성합니다. 4단계에서 생성한 ISO 이미지를 VM 이미지에 대한 첨부 파일로 포함합니다.

    # virt-install \
        --memory 4096 \
        --vcpus 4 \
        --name myvm \
        --disk rhel-9-x86_64-kvm.qcow2,device=disk,bus=virtio,format=qcow2 \
        --disk cloud-init.iso,device=cdrom \
        --os-variant rhel 9 \
        --virt-type kvm \
        --graphics none \
        --import
    • --graphics none - 헤드리스 RHEL 9 VM임을 나타냅니다.
    • --vCPUs 4 - 가상 CPU 4를 사용합니다.
    • --memory 4096 - 4096MB RAM을 사용함을 의미합니다.
  7. VM 설치가 시작됩니다.

    Starting install...
    Connected to domain mytestcivm
    ...
    [  OK  ] Started Execute cloud user/final scripts.
    [  OK  ] Reached target Cloud-init target.
    
    Red Hat Enterprise Linux 9 (Ootpa)
    Kernel 4.18.0-221.el8.x86_64 on an x86_64

검증

부팅이 완료되면 VM에 텍스트 로그인 인터페이스가 표시됩니다. VM의 로컬 콘솔에 로그인하려면 user-data 파일의 세부 정보를 사용합니다.

  1. 사용자 이름으로 admin 을 입력하고 Enter 를 누릅니다.
  2. 암호로 password 를 입력하고 Enter 를 누릅니다.

    로그인 인증이 완료되면 CLI를 사용하여 VM에 액세스할 수 있습니다.