Sediakan VM di node tenant tunggal


Halaman ini menjelaskan cara menyediakan VM di sole-tenant node, yang merupakan server fisik yang menjalankan VM hanya dari satu project. Sebelum menyediakan VM di sole-tenant node, baca ringkasan sole-tenant node.

Penyediaan VM di sole-tenant node memerlukan hal berikut:

  1. Membuat template sole-tenant node. Template sole-tenant node menentukan properti seragam untuk semua sole-tenant node dalam grup sole-tenant node.

  2. Membuat grup sole-tenant node menggunakan template sole-tenant node yang dibuat sebelumnya.

  3. Membuat VM dan menyediakannya di grup sole-tenant node.

Sebelum memulai

  • Sebelum menyediakan VM pada sole-tenant node, periksa kuota Anda. Tergantung pada jumlah dan ukuran node yang dipesan, Anda mungkin perlu meminta kuota tambahan.
  • Siapkan autentikasi, jika Anda belum melakukannya. Autentikasi adalah proses verifikasi identitas Anda untuk akses ke layanan dan API Google Cloud. Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke Compute Engine sebagai berikut.

    Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:

    Konsol

    Saat menggunakan Konsol Google Cloud untuk mengakses API dan layanan Google Cloud, Anda tidak perlu menyiapkan autentikasi.

    gcloud

    1. Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:

      gcloud init
    2. Menetapkan region dan zona default.

    REST

    Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.

      Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:

      gcloud init

Membuat template sole-tenant node

Template sole-tenant node adalah resource regional yang menentukan properti untuk grup sole-tenant node. Anda harus membuat template node sebelum membuat grup node. Namun, jika menggunakan Konsol Google Cloud, Anda harus membuat template node selama pembuatan grup node tenant tunggal.

Konsol

Anda harus membuat template sole-tenant node sebelum membuat grup node. Dengan menggunakan konsol Google Cloud, Anda harus membuat template node selama pembuatan grup sole-tenant node. Template node baru dibuat di region yang sama dengan yang Anda tetapkan di properti grup node.

  1. Di konsol Google Cloud, buka halaman Sole-tenant nodes.

    Buka Sole-tenant nodes

  2. Klik Create node group.

  3. Tentukan Name untuk grup node.

  4. Tentukan Region untuk membuat template node. Anda dapat menggunakan template node untuk membuat grup node di zona mana pun di region ini.

  5. Tentukan Zone, lalu klik Continue.

  6. Dalam daftar Node template, klik Create node template untuk mulai membuat template node tenant tunggal.

  7. Tentukan Name untuk template node.

  8. Tentukan Jenis node untuk setiap sole-tenant node dalam grup node yang akan dibuat berdasarkan template node ini.

  9. Opsional: Anda juga dapat menentukan properti berikut untuk template node.

    • Tambahkan SSD lokal dan akselerator GPU.
    • Pilih Enable CPU overcommit guna mengontrol level overcommit CPU untuk setiap VM yang dijadwalkan pada node.

    • Tambahkan Label afinitas node. Dengan label minat, Anda dapat mengelompokkan node dan grup node secara logis. Kemudian, saat menyediakan VM, Anda dapat menentukan label afinitas pada VM untuk menjadwalkan VM pada kumpulan node atau grup node tertentu. Untuk mengetahui informasi selengkapnya, lihat Afinitas dan anti-afinitas node.

  10. Klik Create untuk menyelesaikan pembuatan template node Anda.

  11. Opsional: untuk menambahkan template sole-tenant node baru di region yang berbeda, ulangi langkah-langkah sebelumnya.

Untuk melihat template node, klik Node templates di halaman Sole-tenant nodes.

gcloud

Gunakan perintah gcloud compute sole-tenancy node-templates create untuk membuat template node:

gcloud compute sole-tenancy node-templates create TEMPLATE_NAME \
  --node-type=NODE_TYPE \
  [--region=REGION \]
  [--node-affinity-labels=AFFINITY_LABELS \]
  [--accelerator type=GPU_TYPE,count=GPU_COUNT \]
  [--disk type=local-ssd,count=DISK_COUNT,size=DISK_SIZE \]
  [--cpu-overcommit-type=CPU_OVERCOMMIT_TYPE]

Ganti kode berikut:

  • TEMPLATE_NAME: nama untuk template node baru.

  • NODE_TYPE: jenis node untuk sole-tenant node yang dibuat berdasarkan template ini. Gunakan perintah gcloud compute sole-tenancy node-types list untuk mendapatkan daftar jenis node yang tersedia di setiap zona.

  • REGION: region tempat membuat template node. Anda dapat menggunakan template ini untuk membuat grup node di zona mana pun dari region ini.

  • AFFINITY_LABELS: kunci dan nilai, [KEY=VALUE,...], untuk label afinitas. Dengan label minat, Anda dapat mengelompokkan node dan grup node secara logis. Kemudian, saat menyediakan VM, Anda dapat menentukan label afinitas pada VM untuk menjadwalkan VM di node pool atau grup node tertentu. Untuk mengetahui informasi selengkapnya, baca Afinitas dan anti-afinitas node.

  • GPU_TYPE: jenis GPU untuk setiap sole-tenant node yang dibuat berdasarkan template node ini. Untuk mengetahui informasi tentang ketersediaan GPU menurut zona, gunakan perintah gcloud compute accelerator-types list dan pilih zona tempat jenis sole-tenant node n1 atau g2 tersedia. Bergantung pada ketersediaan zona, tetapkan ke salah satu dari:

    • nvidia-l4
    • nvidia-tesla-p100
    • nvidia-tesla-p4
    • nvidia-tesla-t4
    • nvidia-tesla-v100
  • GPU_COUNT: jumlah GPU yang akan ditentukan, bergantung pada jenis GPU. Tetapkan ke nilai yang ditentukan untuk jenis GPU seperti yang ditunjukkan dalam tabel berikut:

    GPU_TYPE GPU_COUNT
    nvidia-l4 8
    nvidia-tesla-p100 4
    nvidia-tesla-p4 4
    nvidia-tesla-t4 4
    nvidia-tesla-v100 8
  • DISK_COUNT: jumlah disk SSD. Tetapkan ke 16 atau 24.

  • DISK_SIZE: nilai opsional untuk ukuran partisi SSD lokal dalam GB. Satu-satunya ukuran partisi yang didukung adalah 375, dan jika Anda tidak menetapkan nilai ini, ukuran default-nya adalah 375.

  • CPU_OVERCOMMIT_TYPE: jenis overcommit untuk CPU pada VM. Tetapkan ke enabled atau none.

REST

Gunakan metode nodeTemplates.insert untuk membuat template node:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/nodeTemplates

{
  "name": "TEMPLATE_NAME",
  "nodeType": "NODE_TYPE",
  "nodeAffinityLabels": {
    "KEY": "VALUE",
    ...
  },
  "accelerators": [
    {
      "acceleratorType": "GPU_TYPE",
      "acceleratorCount": GPU_COUNT
    }
  ],
  "disks": [
    {
      "diskType": "local-ssd",
      "diskSizeGb": DISK_SIZE,
      "diskCount": DISK_COUNT
    }
  ],
  "cpuOvercommitType": CPU_OVERCOMMIT_TYPE
}

Ganti kode berikut:

  • PROJECT_ID: ID project.

  • REGION: region tempat membuat template node. Anda dapat menggunakan template ini untuk membuat grup node di zona mana pun dari region ini.

  • TEMPLATE_NAME: nama untuk template node baru.

  • NODE_TYPE: jenis node untuk sole-tenant node yang dibuat berdasarkan template ini. Gunakan metode nodeTypes.list untuk mendapatkan daftar jenis node yang tersedia di setiap zona.

  • KEY: nilai nodeAffinityLabels yang menentukan bagian kunci dari label afinitas node yang dinyatakan sebagai pasangan nilai kunci. Label minat memungkinkan Anda mengelompokkan node dan grup node secara logis, dan nantinya, saat menyediakan VM, Anda dapat menentukan label afinitas pada VM untuk menjadwalkan VM pada kumpulan node atau grup node tertentu. Untuk informasi selengkapnya, lihat Afinitas dan anti-afinitas node.

  • VALUE: nilai nodeAffinityLabels yang menentukan bagian nilai pasangan nilai kunci label afinitas node.

  • GPU_TYPE: jenis GPU untuk setiap sole-tenant node yang dibuat berdasarkan template node ini. Untuk mengetahui informasi tentang ketersediaan GPU menurut zona, gunakan perintah gcloud compute accelerator-types list dan pilih zona tempat jenis sole-tenant node n1 atau g2 tersedia. Bergantung pada ketersediaan zona, tetapkan ke salah satu dari:

    • nvidia-l4
    • nvidia-tesla-p100
    • nvidia-tesla-p4
    • nvidia-tesla-t4
    • nvidia-tesla-v100
  • GPU_COUNT: jumlah GPU untuk setiap sole-tenant node yang dibuat berdasarkan template node ini. Tetapkan ke nilai yang ditentukan untuk jenis GPU seperti yang ditunjukkan dalam tabel berikut:

    GPU_TYPE GPU_COUNT
    nvidia-l4 8
    nvidia-tesla-p100 4
    nvidia-tesla-p4 4
    nvidia-tesla-t4 4
    nvidia-tesla-v100 8
  • DISK_SIZE: nilai opsional untuk ukuran partisi SSD lokal dalam GB. Satu-satunya ukuran partisi yang didukung adalah 375, dan jika Anda tidak menetapkan nilai ini, ukuran default-nya adalah 375.

  • DISK_COUNT: jumlah disk SSD. Tetapkan ke 16 atau 24.

  • CPU_OVERCOMMIT_TYPE: jenis overcommit CPU. Tetapkan ke enabled, none, atau CPU_OVERCOMMIT_TYPE_UNSPECIFIED.

Membuat grup sole-tenant node

Dengan template sole-tenant node yang dibuat sebelumnya, buat grup sole-tenant node. Grup sole-tenant node mewarisi properti yang ditentukan oleh template sole-tenant node dan memiliki nilai tambahan yang harus Anda tentukan.

Konsol

  1. Di konsol Google Cloud, buka halaman Sole-tenant nodes.

    Buka Sole-tenant nodes

  2. Klik Create node group untuk mulai membuat grup node.

  3. Tentukan Name untuk grup node.

  4. Tentukan Region untuk grup node guna menampilkan template node yang tersedia di region tersebut.

  5. Tentukan Zona di dalam region untuk membuat grup node.

  6. Tentukan Node template untuk membuat grup node atau klik Create node template untuk membuat template sole-tenant node baru. Template node yang dipilih diterapkan ke grup node.

  7. Pilih salah satu opsi berikut untuk Mode penskalaan otomatis untuk autoscaler grup node:

    • Off: Mengelola ukuran grup node secara manual.

    • Aktif: Membuat node otomatis ditambahkan ke atau dihapus dari grup node.

    • Hanya penyebaran skala: Menambahkan node ke grup node jika kapasitas ekstra diperlukan.

  8. Tentukan Jumlah node untuk grup. Jika Anda mengaktifkan autoscaler grup node, tentukan rentang untuk ukuran grup node. Anda dapat mengubah nilainya secara manual nanti.

  9. Tetapkan Pemeliharaan kebijakan grup node tenant tunggal di bagian Mengonfigurasi Setelan Pemeliharaan ke salah satu nilai berikut. Dengan kebijakan pemeliharaan, Anda dapat mengonfigurasi perilaku VM pada grup node selama peristiwa pemeliharaan host. Untuk mengetahui informasi selengkapnya, lihat Kebijakan pemeliharaan.

    • Default
    • Mulai ulang di tempat yang sama
    • Migrasi dalam grup node
  10. Anda dapat memilih antara periode pemeliharaan reguler dan kontrol pemeliharaan lanjutan untuk menangani pemeliharaan untuk grup node tenant tunggal Anda, sebagai berikut:

    • Periode Pemeliharaan: Pilih jangka waktu saat Anda ingin peristiwa pemeliharaan terencana terjadi untuk node dalam grup node tenant tunggal.

    • Memilih ikut serta dalam kontrol pemeliharaan lanjutan untuk tenant tunggal (Pratinjau): Kontrol pemeliharaan lanjutan untuk tenant tunggal memungkinkan Anda mengontrol peristiwa pemeliharaan terencana untuk grup node tenant tunggal dan meminimalkan gangguan terkait pemeliharaan. Untuk memilih ikut serta dalam kontrol pemeliharaan lanjutan, klik tombol Opt-in for advanced pemeliharaan control for sole-tenancy ke posisi aktif. Jika Anda memilih menggunakan opsi ini untuk pemeliharaan node, kolom Pemeliharaan node akan dinonaktifkan, dan pemeliharaan terjadi seperti yang dikonfigurasi dalam kontrol pemeliharaan lanjutan.

    Perlu diperhatikan bahwa selama fase Pratinjau, kontrol pemeliharaan lanjutan hanya mendukung kebijakan pemeliharaan Default.

  11. Konfigurasikan setelan berbagi dengan menentukan salah satu opsi berikut di Mengonfigurasi setelan berbagi:

    • Untuk membagikan grup node dengan semua project di organisasi Anda, pilih Bagikan grup node ini dengan semua project dalam organisasi.
    • Untuk berbagi grup node dengan project tertentu dalam organisasi, pilih Bagikan grup node ini dengan project yang dipilih dalam organisasi.

    Jika Anda tidak ingin membagikan grup node, pilih Jangan bagikan grup node ini dengan project lain. Untuk mengetahui informasi selengkapnya tentang berbagi grup node, lihat Membagikan grup sole-tenant node.

  12. Klik Create untuk menyelesaikan pembuatan grup node.

gcloud

Jalankan perintah perintah gcloud compute sole-tenancy node-groups create untuk membuat grup node berdasarkan template node yang dibuat sebelumnya:

gcloud compute sole-tenancy node-groups create GROUP_NAME \
  --node-template=TEMPLATE_NAME \
  --target-size=TARGET_SIZE \
  [--zone=ZONE \]
  [--maintenance-policy=MAINTENANCE_POLICY \]
  [--maintenance-window-start-time=START_TIME \]
  [--autoscaler-mode=AUTOSCALER_MODE: \
  --min-nodes=MIN_NODES \
  --max-nodes=MAX_NODES]

Ganti kode berikut:

  • GROUP_NAME: nama untuk grup node baru.

  • TEMPLATE_NAME: nama template node yang akan digunakan untuk membuat grup ini.

  • TARGET_SIZE: jumlah node yang akan dibuat dalam grup.

  • ZONE: zona tempat membuat grup node. Area ini harus merupakan region yang sama dengan template node tempat Anda mendasarkan grup node.

  • MAINTENANCE_POLICY: kebijakan pemeliharaan untuk grup node. Untuk mengetahui informasi selengkapnya, lihat Kebijakan pemeliharaan. Jenis harus berupa salah satu nilai berikut:

    • default
    • restart-in-place
    • migrate-within-node-group

    Atau, Anda dapat memilih ikut serta dalam kontrol pemeliharaan lanjutan (Pratinjau) untuk grup node tenant tunggal, menggunakan flag --maintenance-interval. Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan kontrol pemeliharaan lanjutan pada node tenant tunggal.

  • START_TIME: waktu mulai dalam GMT untuk periode pemeliharaan untuk VM di grup node ini. Tetapkan ke salah satu dari: 00:00, 04:00, 08:00, 12:00, 16:00, atau 20:00. Jika tidak disetel, grup node tidak memiliki masa pemeliharaan yang telah ditetapkan.

  • AUTOSCALER_MODE: kebijakan autoscaler untuk grup node. Nilai ini harus salah satu dari:

    • off: mengelola ukuran grup node secara manual.

    • on: membuat node otomatis ditambahkan ke atau dihapus dari grup node.

    • only-scale-out: menambahkan node ke grup node saat kapasitas tambahan diperlukan.

  • MIN_NODES: ukuran minimum grup node. Nilai defaultnya adalah 0 dan harus berupa nilai bilangan bulat yang kurang dari atau sama dengan MAX_NODES.

  • MAX_NODES: ukuran maksimum grup node. Nilai ini harus kurang dari atau sama dengan 100 dan lebih besar dari atau sama dengan MIN_NODES. Wajib jika AUTOSCALER_MODE tidak ditetapkan ke off.

REST

Gunakan metode nodeGroups.insert untuk membuat grup node berdasarkan template node yang dibuat sebelumnya:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/nodeGroups?initialNodeCount=TARGET_SIZE
{ "nodeTemplate": "regions/REGION/nodeTemplates/TEMPLATE_NAME", "name": "GROUP_NAME", "maintenancePolicy": MAINTENANCE_POLICY, "maintenanceWindow": { "startTime": "START_TIME" } "autoscalingPolicy": { "mode": AUTOSCALER_MODE, "minNodes": MIN_NODES, "maxNodes": MAX_NODES }, }

Ganti kode berikut:

  • PROJECT_ID: ID project.

  • ZONE: zona tempat membuat grup node. ID ini harus berada di region yang sama dengan template node tempat Anda mendasarkan grup node.

  • TARGET_SIZE: jumlah node yang akan dibuat dalam grup.

  • REGION: region tempat membuat grup node. Anda harus memiliki template node di region yang dipilih.

  • TEMPLATE_NAME: nama template node yang akan digunakan untuk membuat grup ini.

  • GROUP_NAME: nama untuk grup node baru.

  • MAINTENANCE_POLICY: kebijakan pemeliharaan untuk grup node. Jenis harus berupa salah satu nilai berikut:

    • DEFAULT
    • RESTART_IN_PLACE
    • MIGRATE_WITHIN_NODE_GROUP

    Atau, Anda dapat memilih ikut serta dalam kontrol pemeliharaan lanjutan (Pratinjau) untuk grup node tenant tunggal, menggunakan kolom maintenanceInterval. Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan kontrol pemeliharaan lanjutan pada node tenant tunggal.

  • START_TIME: waktu mulai dalam GMT untuk periode pemeliharaan untuk VM di grup node ini. Tetapkan ke salah satu dari: 00:00, 04:00, 08:00, 12:00, 16:00, atau 20:00. Jika tidak disetel, grup node tidak memiliki masa pemeliharaan yang telah ditetapkan.

  • AUTOSCALER_MODE: kebijakan autoscaler untuk grup node. Jenis harus berupa salah satu nilai berikut:

    • OFF: mengelola ukuran grup node secara manual.

    • ON: membuat node otomatis ditambahkan ke atau dihapus dari grup node.

    • ONLY_SCALE_OUT: menambahkan node ke grup node saat kapasitas tambahan diperlukan.

  • MIN_NODES: ukuran minimum grup node. Nilai defaultnya adalah 0 dan harus berupa nilai bilangan bulat yang kurang dari atau sama dengan MAX_NODES.

  • MAX_NODES: ukuran maksimum grup node. Nilai ini harus kurang dari atau sama dengan 100 dan lebih besar dari atau sama dengan MIN_NODES. Wajib jika AUTOSCALER_MODE tidak ditetapkan ke OFF.

Menyediakan sole-tenant VM

Setelah membuat grup node berdasarkan template node yang dibuat sebelumnya, Anda dapat menyediakan setiap VM pada grup sole-tenant node.

Untuk menyediakan VM pada node atau grup node tertentu yang memiliki label afinitas yang cocok dengan yang sebelumnya Anda tetapkan ke template node, ikuti prosedur standar untuk membuat instance VM, dan tetapkan label afinitas ke VM.

Atau, Anda dapat menggunakan prosedur berikut untuk menyediakan VM pada sole-tenant node dari halaman detail grup node. Berdasarkan grup node tempat Anda menyediakan VM, Compute Engine menetapkan label afinitas.

Konsol

  1. Di konsol Google Cloud, buka halaman Sole-tenant nodes.

    Buka Sole-tenant nodes

  2. Klik Node groups.

  3. Klik Name grup node untuk menyediakan instance VM, lalu secara opsional, untuk menyediakan VM pada sole-tenant node tertentu, klik nama satu-satunya -tenant untuk menyediakan VM.

  4. Klik Membuat instance untuk menyediakan instance VM di grup node ini, perhatikan nilai yang otomatis diterapkan untuk Name, Region, dan Zone, lalu ubah nilai tersebut sesuai kebutuhan.

  5. Pilih Machine configuration dengan menentukan Machine family, Series, dan Machine type. Pilih Seri yang sesuai dengan jenis sole-tenant node.

  6. Ubah Boot disk, Firewall, dan setelan lainnya jika diperlukan.

  7. Klik Sole Tenancy, catat label afinitas node yang ditetapkan secara otomatis, lalu gunakan Browse untuk menyesuaikan sesuai kebutuhan.

  8. Klik Management, dan untuk On host maintenance, pilih salah satu opsi berikut:

    • Migrate VM instance (direkomendasikan): VM yang dimigrasikan ke node lain dalam grup node selama pemeliharaan.

    • Terminate: VM dihentikan selama pemeliharaan.

  9. Pilih salah satu opsi berikut untuk Mulai ulang otomatis:

    • On (direkomendasikan): Memulai ulang VM secara otomatis jika dihentikan untuk pemeliharaan.

    • Off: Tidak otomatis memulai ulang VM setelah pemeliharaan.

  10. Klik Create untuk menyelesaikan pembuatan sole-tenant VM Anda.

gcloud

Gunakan perintah perintah gcloud compute instances create untuk menyediakan VM pada grup sole-tenant node:

gcloud compute instances create VM_NAME \
  [--zone=ZONE \]
  --image-family=IMAGE_FAMILY \
  --image-project=IMAGE_PROJECT \
  --node-group=GROUP_NAME \
  --machine-type=MACHINE_TYPE \
  [--maintenance-policy=MAINTENANCE_POLICY \]
  [--accelerator type=GPU_TYPE,count=GPU_COUNT \]
  [--local-ssd interface=SSD_INTERFACE \]
  [--restart-on-failure]

Tanda --restart-on-failure menunjukkan apakah sole-tenant VM dimulai ulang setelah berhenti. Flag ini diaktifkan secara default. Gunakan --no-restart-on-failure untuk menonaktifkan.

Ganti kode berikut:

  • VM_NAME: nama sole-tenant VM baru.

  • ZONE: zona untuk menyediakan sole-tenant VM.

  • IMAGE_FAMILY: kelompok image dari image yang akan digunakan untuk membuat VM.

  • IMAGE_PROJECT: project image dari kelompok image.

  • GROUP_NAME: nama grup node tempat VM akan disediakan.

  • MACHINE_TYPE: jenis mesin dari sole-tenant VM. Gunakan perintah gcloud compute machine-types list untuk mendapatkan daftar jenis mesin yang tersedia untuk project.

  • MAINTENANCE_POLICY: menentukan perilaku mulai ulang sole-tenant VM selama pemeliharaan. Tetapkan ke salah satu opsi berikut:

    • MIGRATE: VM yang dimigrasikan ke node lain dalam grup node selama pemeliharaan.

    • TERMINATE: VM dihentikan selama pemeliharaan.

  • GPU_TYPE: jenis GPU. Tetapkan ke salah satu jenis akselerator yang ditentukan saat template node dibuat.

  • GPU_COUNT: jumlah GPU dari total yang ditentukan oleh template node yang akan dilampirkan ke VM ini. Nilai defaultnya adalah 1.

  • SSD_INTERFACE: jenis antarmuka SSD lokal. Anda hanya dapat menetapkannya untuk instance yang dibuat dari template node dengan dukungan SSD lokal. Jika Anda menentukan ini saat membuat instance, dan template node tidak mendukung SSD lokal, pembuatan instance akan gagal. Tetapkan ke nvme jika driver image booting dioptimalkan untuk NVMe, jika tidak, tetapkan ke scsi. Tentukan flag ini dan nilai yang sesuai satu kali untuk setiap partisi SSD lokal.

REST

Gunakan metode instances.insert untuk menyediakan VM pada grup sole-tenant node:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/VM_ZONE/instances
{ "machineType": "zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "name": "VM_NAME", "scheduling": { "onHostMaintenance": MAINTENANCE_POLICY, "automaticRestart": RESTART_ON_FAILURE, "nodeAffinities": [ { "key": "compute.googleapis.com/node-group-name", "operator": "IN", "values": [ "GROUP_NAME" ] } ] }, "networkInterfaces": [ { "network": "global/networks/NETWORK", "subnetwork": "regions/REGION/subnetworks/SUBNETWORK" } ], "guestAccelerators": [ { "acceleratorType": GPU_TYPE, "acceleratorCount": GPU_COUNT } ], "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY" } }, { "type":"SCRATCH", "initializeParams":{ "diskType":"zones/LOCAL_SSD_ZONE/diskTypes/local-ssd" }, "autoDelete":true, "interface":"SSD_INTERFACE" } ] }

Ganti kode berikut:

  • PROJECT_ID: ID project.

  • VM_ZONE: zona untuk menyediakan sole-tenant VM.

  • MACHINE_TYPE_ZONE: zona jenis mesin.

  • MACHINE_TYPE: jenis mesin dari sole-tenant VM. Gunakan metode machineTypes.list untuk mendapatkan daftar jenis mesin yang tersedia untuk project.

  • VM_NAME: nama sole-tenant VM baru.

  • MAINTENANCE_POLICY: menentukan perilaku mulai ulang sole-tenant VM selama pemeliharaan. Tetapkan ke salah satu opsi berikut:

    • MIGRATE: VM yang dimigrasikan ke node lain dalam grup node selama pemeliharaan.

    • TERMINATE: VM dihentikan selama pemeliharaan.

  • RESTART_ON_FAILURE: menunjukkan apakah sole-tenant VM dimulai ulang setelah berhenti. Defaultnya adalah true.

  • GROUP_NAME: nama grup node tempat VM akan disediakan.

  • NETWORK: URL resource jaringan untuk VM ini.

  • REGION: region yang berisi subnetwork untuk VM ini.

  • SUBNETWORK: URL resource subnetwork untuk VM ini.

  • GPU_TYPE: jenis GPU. Tetapkan ke salah satu jenis akselerator yang ditentukan saat template node dibuat.

  • GPU_COUNT: jumlah GPU dari total yang ditentukan oleh template node yang akan ditambahkan ke VM ini. Nilai defaultnya adalah 1.

  • IMAGE_PROJECT: project image dari kelompok image.

  • IMAGE_FAMILY: kelompok image dari image yang akan digunakan untuk membuat VM.

  • LOCAL_SSD_ZONE: zona SSD lokal.

  • SSD_INTERFACE: jenis antarmuka SSD lokal. Setel ke NVME jika driver image boot disk dioptimalkan untuk NVMe, atau disetel ke SCSI.

Menyediakan grup VM sole-tenant

Grup instance terkelola (MIG) memungkinkan Anda menyediakan grup sole-tenant VM yang identik. Label afinitas memungkinkan Anda menentukan sole-tenant node atau grup node yang akan digunakan untuk menyediakan grup sole-tenant VM.

Untuk MIG regional, Anda harus membuat grup node di setiap zona MIG regional dan Anda harus menentukan afinitas node untuk grup node tersebut di template instance MIG regional.

gcloud

  1. Gunakan perintah gcloud compute instance-templates create untuk membuat template grup instance terkelola bagi grup VM yang akan dibuat di grup sole-tenant node:

    gcloud compute instance-templates create INSTANCE_TEMPLATE \
      --machine-type=MACHINE_TYPE \
      --image-project=IMAGE_PROJECT \
      --image-family=IMAGE_FAMILY \
      --node-group=GROUP_NAME \
      [--accelerator type=GPU_TYPE,count=GPU_COUNT \]
      [--local-ssd interface=SSD_INTERFACE]
    

    Ganti kode berikut:

    • INSTANCE_TEMPLATE: nama untuk template instance baru.

    • MACHINE_TYPE: jenis mesin sole-tenant VM. Gunakan perintah gcloud compute machine-types list untuk mendapatkan daftar jenis mesin yang tersedia untuk project.

    • IMAGE_PROJECT: project image dari kelompok image.

    • IMAGE_FAMILY: kelompok gambar gambar yang akan digunakan untuk membuat VM.

    • GROUP_NAME: nama grup node tempat VM akan disediakan. Atau, jika Anda ingin menggunakan template instance ini untuk membuat MIG regional yang ada di lebih dari satu zona, gunakan flag --node-affinity-file untuk menentukan daftar nilai untuk grup node MIG regional.

    • GPU_TYPE: jenis GPU. Tetapkan ke salah satu jenis akselerator yang ditentukan saat template node dibuat.

    • GPU_COUNT: jumlah GPU dari total yang ditentukan oleh template node yang akan ditambahkan ke VM ini. Nilai defaultnya adalah 1.

    • SSD_INTERFACE: jenis antarmuka SSD lokal. Setel ke nvme jika driver image boot disk dioptimalkan untuk NVMe, atau disetel ke scsi. Tentukan flag ini dan nilai yang sesuai satu kali untuk setiap partisi SSD lokal.

  2. Gunakan perintah perintah gcloud compute instance-groups managed create untuk membuat grup instance terkelola dalam grup sole-tenant node Anda:

    gcloud compute instance-groups managed create INSTANCE_GROUP_NAME \
      --size=SIZE \
      --template=INSTANCE_TEMPLATE \
      --zone=ZONE
    

    Ganti kode berikut:

    • INSTANCE_GROUP_NAME: nama untuk grup instance ini.

    • SIZE: jumlah VM yang akan disertakan dalam grup instance ini. Grup node Anda harus memiliki resource yang cukup untuk mengakomodasi instance dalam grup instance terkelola ini. Gunakan autoscaler grup instance terkelola untuk mengelola ukuran grup instance terkelola secara otomatis.

    • INSTANCE_TEMPLATE: nama template instance yang akan digunakan untuk membuat MIG ini. Template harus memiliki satu atau beberapa label afinitas node yang mengarah ke grup node yang sesuai.

    • ZONE: zona untuk membuat grup instance terkelola. Untuk MIG regional, ganti tanda --zone dengan tanda --region dan tentukan wilayah; tambahkan juga flag --zones untuk menentukan semua zona tempat grup node berada.

REST

  1. Gunakan metode instanceTemplates.insert untuk membuat template grup instance terkelola dalam grup sole-tenant node Anda:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/TEMPLATE_ZONE/instance-templates
    { "name": "INSTANCE_TEMPLATE", "properties": { "machineType": "zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE", "scheduling": { "nodeAffinities": [ { "key": "compute.googleapis.com/node-group-name", "operator": "IN", "values": [ "GROUP_NAME" ] } ] }, "networkInterfaces": [ { "network": "global/networks/NETWORK", "subnetwork": "regions/REGION/subnetworks/SUBNETWORK" } ], "guestAccelerators": [ { "acceleratorType": GPU_TYPE, "acceleratorCount": GPU_COUNT } ], "disks": [ { "boot": true, "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY" } }, { "type":"SCRATCH", "initializeParams":{ "diskType":"zones/LOCAL_SSD_ZONE/diskTypes/local-ssd" }, "autoDelete":true, "interface":"SSD_INTERFACE" } ] } }

    Ganti kode berikut:

    • PROJECT_ID: ID project.

    • TEMPLATE_ZONE: zona untuk membuat template instance.

    • INSTANCE_TEMPLATE: nama template instance baru.

    • MACHINE_TYPE_ZONE: zona jenis mesin.

    • MACHINE_TYPE: jenis mesin dari sole-tenant VM. Gunakan metode machineTypes.list untuk mendapatkan daftar jenis mesin yang tersedia untuk project tersebut.

    • GROUP_NAME: nama grup node tempat VM akan disediakan. Jika Anda ingin menggunakan template instance ini untuk membuat MIG regional yang ada di lebih dari satu zona, tentukan daftar grup node yang ada di zona yang sama dengan zona MIG regional.

    • NETWORK: URL resource jaringan untuk template instance ini.

    • REGION: region yang berisi subnetwork untuk template instance ini.

    • SUBNETWORK: URL resource subnetwork untuk template instance ini.

    • GPU_TYPE: jenis GPU. Tetapkan ke salah satu jenis akselerator yang ditentukan saat template node dibuat.

    • GPU_COUNT: jumlah GPU dari total yang ditentukan oleh template node yang akan ditambahkan ke VM ini. Nilai defaultnya adalah 1.

    • IMAGE_PROJECT: project image dari kelompok image.

    • IMAGE_FAMILY: kelompok image dari image yang akan digunakan untuk membuat VM.

    • LOCAL_SSD_ZONE: zona SSD lokal.

    • SSD_INTERFACE: jenis antarmuka SSD lokal. Setel ke NVME jika driver image boot disk dioptimalkan untuk NVMe, atau disetel ke SCSI.

  2. Gunakan metode instanceGroupManagers.insert untuk membuat MIG dalam grup sole-tenant node berdasarkan template instance yang dibuat sebelumnya. Atau, jika Anda ingin membuat MIG regional, gunakan metode regionInstanceGroupManagers.insert dan tentukan region dan zona semua grup node seperti yang ditentukan dalam template instance.

    Misalnya, untuk membuat MIG zona, gunakan permintaan berikut:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers
    {
      "baseInstanceName": "NAME_PREFIX",
      "name": "INSTANCE_GROUP_NAME",
      "targetSize": SIZE,
      "instanceTemplate": "global/instanceTemplates/INSTANCE_TEMPLATE"
    }
    

    Ganti kode berikut:

    • PROJECT_ID: ID project.

    • ZONE: zona untuk membuat grup instance terkelola.

    • NAME_PREFIX: nama awalan untuk setiap instance dalam grup instance terkelola.

    • INSTANCE_GROUP_NAME: nama untuk grup instance.

    • SIZE: jumlah VM yang akan disertakan dalam grup instance ini. Grup node Anda harus memiliki resource yang cukup untuk mengakomodasi instance dalam grup instance terkelola ini. Gunakan autoscaler grup instance terkelola untuk mengelola ukuran grup instance terkelola secara otomatis.

    • INSTANCE_TEMPLATE: URL template instance yang akan digunakan untuk membuat grup ini. Template harus memiliki label afinitas node yang mengarah ke grup node yang sesuai.

Mengonfigurasi label afinitas node

Dengan label afinitas node, Anda dapat mengelompokkan grup node secara logis dan menjadwalkan VM pada sekumpulan grup node tertentu. Anda juga dapat menggunakan label afinitas node untuk menjadwalkan VM pada grup node di berbagai zona, dan tetap mempertahankan grup node dalam grup logis. Prosedur berikut adalah contoh penggunaan label afinitas untuk mengaitkan VM dengan grup node tertentu yang digunakan untuk beban kerja produksi. Contoh ini menunjukkan cara menjadwalkan satu VM, tetapi Anda juga dapat menggunakan grup instance terkelola untuk menjadwalkan grup VM.

gcloud

  1. Gunakan perintah gcloud compute sole-tenancy node-templates create untuk membuat template node dengan serangkaian label afinitas untuk beban kerja produksi:

    gcloud compute sole-tenancy node-templates create prod-template \
      --node-type=n1-node-96-624 \
      --node-affinity-labels workload=frontend,environment=prod
    
  2. Gunakan perintah gcloud compute sole-tenancy node-templates describe untuk melihat label afinitas node yang ditetapkan ke template node.

  3. Gunakan perintah gcloud compute sole-tenancy node-groups create untuk membuat grup node yang menggunakan template produksi:

    gcloud compute sole-tenancy node-groups create prod-group \
      --node-template=prod-template \
      --target-size=1
    
  4. Untuk VM produksi, buat file node-affinity-prod.json untuk menentukan afinitas VM produksi Anda. Misalnya, Anda dapat membuat file yang menentukan bahwa VM hanya berjalan pada node dengan afinitas workload=frontend dan environment=prod. Buat file afinitas node menggunakan Cloud Shell atau buat di lokasi pilihan Anda.

    [
      {
        "key" : "workload",
        "operator" : "IN",
        "values" : ["frontend"]
      },
      {
        "key" : "environment",
        "operator" : "IN",
        "values" : ["prod"]
      }
    ]
    
  5. Gunakan file node-affinity-prod.json dengan perintah gcloud compute instances create untuk menjadwalkan VM di grup node dengan label afinitas yang cocok.

    gcloud compute instances create prod-vm \
      --node-affinity-file node-affinity-prod.json \
      --machine-type=n1-standard-2
    
  6. Gunakan perintah gcloud compute instances describe dan centang kolom scheduling untuk melihat afinitas node yang ditetapkan ke VM.

Mengonfigurasi label anti-afinitas node

Label afinitas node dapat dikonfigurasi sebagai label anti-afinitas untuk mencegah VM berjalan pada node tertentu. Misalnya, Anda dapat menggunakan label anti-afinitas untuk mencegah VM yang Anda gunakan untuk tujuan pengembangan dijadwalkan di node yang sama dengan VM produksi Anda. Contoh berikut menunjukkan cara menggunakan label minat untuk mencegah VM berjalan pada grup node tertentu. Contoh ini menunjukkan cara menjadwalkan satu VM, tetapi Anda juga dapat menggunakan grup instance terkelola untuk menjadwalkan grup VM.

gcloud

  1. Untuk VM pengembangan, tentukan afinitas VM pengembangan Anda dengan membuat node-affinity-dev.json di Cloud Shell, atau dengan membuatnya di lokasi pilihan Anda. Misalnya, buat file yang mengonfigurasi VM untuk berjalan di grup node mana pun dengan afinitas workload=frontend selama VM tersebut bukan environment=prod:

    [
      {
        "key" : "workload",
        "operator" : "IN",
        "values" : ["frontend"]
      },
      {
        "key" : "environment",
        "operator" : "NOT_IN",
        "values" : ["prod"]
      }
    ]
    
  2. Gunakan file node-affinity-dev.json dengan perintah gcloud compute instances create untuk membuat VM pengembangan:

    gcloud compute instances create dev-vm \
      --node-affinity-file=node-affinity-dev.json \
      --machine-type=n1-standard-2
    
  3. Gunakan perintah gcloud compute instances describe dan centang kolom scheduling untuk melihat anti-afinitas node yang ditetapkan ke VM.

Hapus grup node

Jika Anda perlu menghapus grup sole-tenant node, hapus VM apa pun dari grup node terlebih dahulu.

Konsol

  1. Buka halaman Sole-tenant nodes.

    Buka Sole-tenant nodes

  2. Klik Nama grup node yang akan dihapus.

  3. Untuk setiap node dalam grup node, klik nama node dan hapus instance VM satu per satu di halaman detail node, atau ikuti prosedur standar untuk menghapus satu VM. Untuk menghapus VM dalam grup instance terkelola, hapus grup instance terkelola.

  4. Setelah menghapus semua instance VM yang berjalan di semua node grup node, kembali ke halaman Sole-tenant nodes.

    Buka Sole-tenant nodes

  5. Klik Node groups.

  6. Pilih nama grup node yang perlu Anda hapus.

  7. Klik Delete.

gcloud

  1. Cantumkan instance VM yang berjalan di node pada grup node menggunakan perintah gcloud compute sole-tenancy node-groups list-nodes:

    gcloud compute sole-tenancy node-groups list-nodes GROUP_NAME \
      --zone=ZONE
    

    Ganti kode berikut:

    • GROUP_NAME: nama grup node

    • ZONE: zona grup node

  2. Jika ada VM yang berjalan pada grup node, ikuti prosedur untuk menghapus VM individual atau prosedur untuk menghapus grup instance terkelola.

  3. Setelah menghapus semua VM yang berjalan di semua node grup node, hapus grup node menggunakan perintah gcloud compute sole-tenancy node-groups delete:

    gcloud compute sole-tenancy node-groups delete GROUP_NAME \
        --zone=ZONE
    

    Ganti kode berikut:

    • GROUP_NAME: nama grup node

    • ZONE: zona grup node

REST

  1. Cantumkan instance VM yang berjalan di node pada grup node menggunakan metode nodeGroups.listNodes:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/nodeGroups/GROUP_NAME/listNodes
    

    Ganti kode berikut:

    • PROJECT_ID: project ID

    • ZONE: zona grup node

    • GROUP_NAME: grup tempat VM akan dicantumkan

  2. Jika ada VM yang berjalan pada grup node, ikuti prosedur untuk menghapus VM individual atau prosedur untuk menghapus grup instance terkelola.

  3. Setelah menghapus semua VM yang berjalan di semua node grup node, hapus grup node menggunakan metode nodeGroups.delete:

    DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/nodeGroups/GROUP_NAME
    

    Ganti kode berikut:

    • PROJECT_ID: project ID

    • ZONE: zona grup node

    • GROUP_NAME: nama grup node yang akan dihapus

Hapus template node

Anda dapat menghapus template node setelah menghapus semua grup node yang menggunakan template tersebut.

Konsol

  1. Di konsol Google Cloud, buka halaman Sole-tenant nodes.

    Buka Sole-tenant nodes

  2. Klik Node templates.

  3. Pilih nama template node yang tidak digunakan.

  4. Klik Delete.

gcloud

Gunakan perintah gcloud compute sole-tenancy node-templates delete untuk menghapus template node yang tidak digunakan:

gcloud compute sole-tenancy node-templates delete TEMPLATE_NAME \
  --region=REGION

Ganti kode berikut:

  • TEMPLATE_NAME: nama template node yang akan dihapus

  • REGION: region template node

REST

Gunakan metode compute.nodeTemplates.delete untuk menghapus template node yang tidak digunakan:

 DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/nodeTemplates/TEMPLATE_NAME
 

Ganti kode berikut:

  • PROJECT_ID: project ID Anda

  • REGION: region Google Cloud yang berisi template node

  • TEMPLATE_NAME: nama template node yang akan dihapus

Langkah selanjutnya

  • Untuk mendapatkan informasi tentang cara mengaktifkan penskalaan otomatis pada grup sole-tenant node, lihat Autoscaler grup node.

  • Untuk informasi selengkapnya tentang cara membawa lisensi yang sudah ada ke Google Cloud, lihat Membawa lisensi yang sudah ada.

  • Untuk mengetahui informasi selengkapnya tentang sole-tenant node, lihat sole-tenant node.