Membuat VM Windows dari image ISO di GDCV untuk Bare Metal

Dokumen ini menunjukkan cara membuat virtual machine (VM) Windows yang melakukan booting dari ISO menggunakan Runtime VM di GDC. Saat VM {i>booting<i}, Anda menyelesaikan rutinitas pengaturan Windows secara manual.

Anda juga dapat membuat VM Windows dari disk image yang sudah disiapkan menggunakan sumber HTTP atau dari Cloud Storage.

Sebelum memulai

Untuk menyelesaikan dokumen ini, Anda memerlukan akses ke referensi berikut:

Buat disk virtual untuk image ISO

Agar berhasil membuat VM Windows, ikuti langkah-langkah dan bagian dalam dokumen ini secara berurutan.

Untuk melakukan booting dari image ISO Windows, buat VirtualMachineDisk dengan diskType dari cdrom terlebih dahulu. Gunakan ISO Windows Anda sebagai sumber untuk disk ini.

  1. Buat manifes VirtualMachineDisk, seperti windows-iso.yaml, di editor pilihan Anda:

    nano windows-iso.yaml
    
  2. Salin dan tempel manifes YAML berikut:

    apiVersion: vm.cluster.gke.io/v1
    kind: VirtualMachineDisk
    metadata:
      name: windows-iso
    spec:
      source:
        http:
          url: IMG_URL
      size: 10Gi
      diskType: cdrom
    

    Ganti IMG_URL dengan jalur HTTP ke ISO Windows Anda. Anda juga dapat membuat dan menggunakan kredensial untuk mengimpor ISO dari Cloud Storage.

  3. Simpan dan tutup manifes di editor Anda.

  4. Buat VirtualMachineDisk menggunakan kubectl:

    kubectl apply -f windows-iso.yaml
    

Membuat disk driver VM

Agar berhasil melakukan booting dari ISO Windows dan menyelesaikan proses penginstalan, VM memerlukan akses ke driver virtio. Untuk menyediakan driver virtio ke VM, selesaikan langkah-langkah berikut:

  1. Buat manifes VirtualMachineDisk, seperti virtio-driver.yaml, di editor pilihan Anda:

    nano virtio-driver.yaml
    
  2. Salin dan tempel manifes YAML berikut:

    apiVersion: vm.cluster.gke.io/v1
    kind: VirtualMachineDisk
    metadata:
      name: virtio-driver
    spec:
      size: 1Gi
      source:
        registry:
          url: docker://quay.io/kubevirt/virtio-container-disk:latest
      diskType: cdrom
    

    Manifes ini mengambil driver virtio terbaru dari repo Docker publik dan menetapkan diskType sebagai cdrom. VM Anda menggunakan disk ini selama proses penginstalan.

  3. Simpan dan tutup manifes di editor Anda.

  4. Buat VirtualMachineDisk menggunakan kubectl:

    kubectl apply -f virtio-driver.yaml
    

Membuat VM Windows

Buat VM yang melakukan booting dari VirtualMachineDisk ISO Windows, dan memasang disk driver virtio:

  1. Buat manifes yang menentukan VirtualMachineDisk untuk volume booting dan VirtualMachine, seperti windows-vm.yaml, di editor pilihan Anda:

    nano windows-vm.yaml
    
  2. Salin dan tempel manifes YAML berikut:

    apiVersion: vm.cluster.gke.io/v1
    kind: VirtualMachineDisk
    metadata:
      name: VM_NAME-boot-dv
    spec:
      size: 100Gi
    ---
    apiVersion: vm.cluster.gke.io/v1
    kind: VirtualMachine
    metadata:
      name: VM_NAME
    spec:
      osType: Windows
      disks:
        - virtualMachineDiskName: VM_NAME-boot-dv
          boot: true
        - virtualMachineDiskName: windows-iso
        - virtualMachineDiskName: virtio-driver
      compute:
        cpu:
          vcpus: 2
        memory:
          capacity: 4Gi
      interfaces:
        - name: eth0
          networkName: pod-network
    

    Ganti VM_NAME dengan nama yang Anda inginkan untuk VM Anda.

    Manifes ini membuat volume booting 100 Gibibyte (GiB). Karena volume booting ini kosong saat VM pertama kali dimulai, VM akan melakukan booting dari ISO sebagai perangkat CD-ROM untuk memulai rutinitas penyiapan. Driver virtio juga terpasang untuk menyelesaikan proses penginstalan.

  3. Simpan dan tutup manifes di editor Anda.

  4. Buat VirtualMachineDisk dan VirtualMachine menggunakan kubectl:

    kubectl apply -f windows-vm.yaml
    

Menghubungkan ke VM Windows dan menyelesaikan penginstalan OS

VM dimulai dan di-booting dari ISO Windows di bagian sebelumnya. Hubungkan ke VM Anda, lalu selesaikan proses penginstalan Windows dan konfigurasi VM Anda:

  1. Hubungkan ke VM Windows Anda:

    kubectl virt vnc VM_NAME
    

    Ganti VM_NAME dengan nama VM Windows Anda.

    Jika diminta, masukkan kredensial pengguna OS tamu Windows untuk VM Anda.

    Untuk mengetahui informasi selengkapnya tentang cara menggunakan kubectl virt vnc untuk terhubung ke VM, lihat Menghubungkan langsung menggunakan VNC.

  2. Di penyiapan Windows, pilih untuk melakukan Penginstalan kustom.

  3. Pilih Load driver, jelajahi direktori viostor pada disk virtio, lalu pilih direktori yang cocok dengan versi Windows yang ingin Anda instal.

    Untuk informasi selengkapnya, lihat driver virtio KubeVirt Windows.

  4. Setelah driver jaringan dan penyimpanan dari virtio tersedia, selesaikan proses penginstalan Windows selanjutnya.

    Sebaiknya aktifkan Remote Desktop Protocol agar Anda dapat terhubung langsung ke VM setelah penginstalan.

Lepaskan image ISO dan disk driver

Setelah penginstalan Windows selesai, hapus disk driver virtio dan image ISO Windows dari VM:

  1. Hentikan VM Windows Anda:

    kubectl virt stop VM_NAME
    

    Ganti VM_NAME dengan nama VM Windows Anda.

  2. Gunakan kubectl untuk mengedit VM:

    kubectl edit gvm VM_NAME
    

    Ganti VM_NAME dengan nama VM Windows Anda.

  3. Di editor Anda, update bagian spec.disks untuk menghapus disk Windows ISO dan virtio, seperti ditunjukkan dalam contoh berikut. Satu-satunya disk yang tersisa dan terpasang ke VM harus berupa VM_NAME-boot-dv:

    apiVersion: vm.cluster.gke.io/v1
    kind: VirtualMachine
    metadata:
      name: windows-vm
    spec:
      osType: Windows
      disks:
        - virtualMachineDiskName: windows-vm-boot-dv
          boot: true
      interfaces:
    ...
    
  4. Simpan dan tutup manifes VM.

  5. Mulai VM Windows Anda:

    kubectl virt start VM_NAME
    

    Ganti VM_NAME dengan nama VM Windows Anda.

  6. Periksa STATUS pada VM Anda:

    kubectl get gvm VM_NAME
    

    Ganti VM_NAME dengan nama VM Windows Anda.

    Pastikan VM Anda dalam status Running. Jika VM tidak dalam status Running, periksa manifes resource VirtualMachine untuk memastikan Anda hanya menghapus ISO Windows dan disk virtio. Pastikan host memiliki resource komputasi yang cukup untuk memulai VM.

Langkah selanjutnya