Membuat boot disk yang disesuaikan

Sebelum memulai

Untuk menggunakan perintah antarmuka command line (CLI) gdcloud, pastikan Anda telah mendownload, menginstal, dan mengonfigurasi CLI gdcloud. Semua perintah untuk Distributed Cloud menggunakan CLI gdcloud atau kubectl, dan memerlukan lingkungan sistem operasi (OS).

Mendapatkan jalur file kubeconfig

Untuk menjalankan perintah terhadap server Management API, pastikan Anda memiliki resource berikut:

  1. Login dan buat file kubeconfig untuk server Management API jika Anda belum memilikinya.

  2. Gunakan jalur ke file kubeconfig server Management API untuk menggantikan MANAGEMENT_API_SERVER dalam petunjuk ini.

Meminta izin dan akses

Untuk melakukan tugas yang tercantum di halaman ini, Anda harus memiliki peran Project VirtualMachine Admin. Ikuti langkah-langkah untuk memverifikasi bahwa Anda memiliki peran Project VirtualMachine Admin (project-vm-admin) di namespace project tempat VM berada.

Untuk operasi VM menggunakan konsol GDC atau gdcloud CLI, minta Admin IAM Project Anda untuk memberi Anda peran Project VirtualMachine Admin dan peran Project Viewer (project-viewer).

Membuat boot disk

Saat membuat instance virtual machine (VM), Anda juga harus membuat boot disk untuk VM. Anda dapat menggunakan image publik atau image kustom.

GDC secara otomatis membuat persistent disk booting saat Anda membuat instance VM. Jika Anda memerlukan disk penyimpanan data tambahan untuk instance, tambahkan persistent disk ke VM.

Gunakan prosedur yang dijelaskan di halaman ini untuk membuat boot disk yang dapat Anda gunakan nanti untuk membuat VM.

Membuat disk booting dari image

Anda dapat membuat persistent disk booting mandiri di luar pembuatan instance dan menambahkannya ke instance setelahnya. Bagian ini menunjukkan cara membuat disk boot dari image OS yang disediakan GDC atau image OS kustom.

Membuat boot disk dari image yang disediakan GDC

Sebelum Anda membuat boot disk menggunakan image yang disediakan GDC, tinjau daftar image yang tersedia. Kemudian, buat boot disk dengan image yang disediakan.

gdcloud

  1. Mencantumkan semua image yang tersedia dan ukuran disk minimumnya:

    gdcloud compute images list
    

    Perintah ini mencakup image yang disediakan Distributed Cloud dan image kustom. Pilih salah satu di namespace vm-system.

  2. Pilih image yang disediakan Distributed Cloud untuk membuat disk VM:

    gdcloud compute disks create BOOT_DISK_NAME \
        --project=PROJECT \
        --size=DISK_SIZE \
        --image=IMAGE_NAME \
        --image-project=vm-system
    

    Ganti variabel menggunakan definisi berikut:

    VariabelDefinisi
    BOOT_DISK_NAME Nama disk boot.
    PROJECT Project GDC tempat boot disk akan dibuat.
    DISK_SIZE Ukuran disk booting harus minimal minimumDiskSize dari image.
    IMAGE_NAME Nama gambar.

kubectl

  1. Mencantumkan semua image yang disediakan GDC yang tersedia:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
        get virtualmachineimages.virtualmachine.gdc.goog --namespace vm-system
    
  2. Mendapatkan minimumDiskSize gambar tertentu yang disediakan GDC. Ukuran boot disk yang disesuaikan yang dibuat harus minimal minimumDiskSize:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      get virtualmachineimages.virtualmachine.gdc.goog --namespace vm-system \
      IMAGE_NAME -ojsonpath='{.spec.minimumDiskSize}'
    
  3. Buat objek VirtualMachineDisk:

    kubectl --kubeconfig MANAGEMENT_API_SERVER apply -n PROJECT -f - <<EOF
    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachineDisk
    metadata:
      name: BOOT_DISK_NAME
    spec:
      source:
        image:
          name: IMAGE_NAME
          namespace: vm-system
      size: DISK_SIZE
    EOF
    

    Ganti variabel menggunakan definisi berikut,

    VariabelDefinisi
    MANAGEMENT_API_SERVER File kubeconfig server Management API.
    IMAGE_NAME Nama gambar.
    PROJECT Project GDC tempat boot disk akan dibuat.
    BOOT_DISK_NAME Nama disk boot.
    DISK_SIZE Ukuran disk booting harus minimal minimumDiskSize dari image.

Membuat disk booting dari image kustom

Image kustom hanya berada di dalam project Anda. Untuk membuat VM dengan image kustom, Anda harus membuat image kustom terlebih dahulu dalam project yang sama jika belum membuatnya.

Siapkan peran IAM yang diperlukan untuk mengakses image kustom di project Anda jika Anda belum melakukannya. Kemudian, lanjutkan dengan petunjuk ini.

gdcloud

  1. Mencantumkan semua image kustom dan ukuran disk minimumnya:

    gdcloud compute images list \
        --project=PROJECT \
    
  2. Pilih image kustom untuk membuat disk VM:

    gdcloud compute disks create BOOT_DISK_NAME \
        --project=PROJECT \
        --size=DISK_SIZE \
        --image=IMAGE_NAME \
        --image-project=PROJECT
    

    Ganti variabel menggunakan definisi berikut:

    VariabelDefinisi
    BOOT_DISK_NAME Nama disk boot.
    PROJECT Project GDC tempat boot disk akan dibuat.
    DISK_SIZE Ukuran disk booting harus minimal minimumDiskSize dari image.
    IMAGE_NAME Nama gambar.

API

  1. Mencantumkan semua gambar kustom:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
        get virtualmachineimages.virtualmachine.gdc.goog --namespace PROJECT
    
  2. Mendapatkan minimumDiskSize dari image kustom tertentu. Ukuran boot disk kustom yang dibuat harus minimal minimumDiskSize:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
      get virtualmachineimages.virtualmachine.gdc.goog --namespace vm-system \
      IMAGE_NAME -ojsonpath='{.spec.minimumDiskSize}'
    
  3. Buat objek VirtualMachineDisk:

    kubectl --kubeconfig MANAGEMENT_API_SERVER \
        apply --namespace PROJECT -f - <<EOF
    apiVersion: virtualmachine.gdc.goog/v1
    kind: VirtualMachineDisk
    metadata:
      name: BOOT_DISK_NAME
    spec:
      source:
        image:
          name: IMAGE_NAME
          namespace: PROJECT
      size: DISK_SIZE
    EOF
    

    Ganti variabel, menggunakan definisi berikut:

    VariabelDefinisi
    MANAGEMENT_API_SERVER File kubeconfig server Management API.
    IMAGE_NAME Nama gambar yang dipilih dari perintah list all custom images.
    PROJECT Project GDC tempat boot disk akan dibuat.
    BOOT_DISK_NAME Nama disk boot.
    DISK_SIZE Ukuran disk booting harus minimal minimumDiskSize dari image.

Untuk mengganti boot disk, lihat halaman Mengganti boot disk.