Mengonfigurasi afinitas Grup VM-Host

Dokumen ini memberikan contoh cara mengonfigurasi cluster Google Distributed Cloud untuk menggunakan afinitas VM-Host.

Afinitas Grup Host VM adalah salah satu mekanisme yang disediakan Google Distributed Cloud untuk memastikan ketersediaan tinggi. Dengan afinitas Grup Host VM, Anda dapat membuat grup host ESXi fisik. Kemudian, Anda akan mengonfigurasi cluster untuk mengaitkan grup VM dengan grup host.

Misalnya, Anda dapat mengonfigurasi semua VM dalam satu kumpulan node untuk dijalankan di grup host tertentu. Anda juga dapat mengonfigurasi semua VM di kumpulan node kedua untuk dijalankan di grup host yang berbeda. Selanjutnya, Anda dapat memperlakukan setiap kumpulan node sebagai domain gagal. Untuk membedakan domain kegagalan, Anda dapat menambahkan label ke VM di berbagai node pool.

Sebelum memulai

Untuk latihan ini, Anda harus memiliki setidaknya enam host ESXi di lingkungan vSphere.

Membuat grup host

Buat dua grup DRS host atau lebih di lingkungan vSphere Anda. Untuk latihan ini, dua grup host yang masing-masing memiliki tiga host akan sesuai. Untuk mengetahui petunjuknya, lihat Membuat Grup DRS Host.

Membuat cluster pengguna

Bagian ini memberikan contoh cara membuat cluster pengguna yang menggunakan afinitas Grup VM-Host. Cluster dalam contoh ini menggunakan Controlplane V2. Cluster tersebut memiliki bidang kontrol ketersediaan tinggi, sehingga terdapat tiga node bidang kontrol. Selain node bidang kontrol, terdapat enam node pekerja: tiga di satu kumpulan node dan tiga di kumpulan node kedua. Semua node menggunakan alamat IP statis.

Mulailah dengan mengikuti petunjuk di Membuat cluster pengguna (Controlplane V2).

Saat Anda mengisi file konfigurasi cluster pengguna:

  • Tentukan dua kumpulan node untuk node pekerja. Untuk setiap kumpulan node, tetapkan replicas ke 3, dan berikan nama grup host yang ada.

Contoh file konfigurasi

Berikut adalah contoh file blok IP dan bagian dari file konfigurasi cluster pengguna.

user-ipblock.yaml

blocks:
  - netmask: 255.255.255.0
    gateway: 172.16.21.1
    ips:
    - ip: 172.16.21.2
    - ip: 172.16.21.3
    - ip: 172.16.21.4
    - ip: 172.16.21.5
    - ip: 172.16.21.6
    - ip: 172.16.21.7
    - ip: 172.16.21.8

user-cluster-yaml

apiVersion: v1
kind: UserCluster
...
network:
  hostConfig:
    dnsServers:
    - "203.0.113.2"
    - "198.51.100.2"
    ntpServers:
    - "216.239.35.4"
  ipMode:
    type: "static"
    ipBlockFilePath: "user-ipblock.yaml"
  controlPlaneIPBlock:
    netmask: "255.255.255.0"
    gateway: "172.16.21.1"
    ips:
    - ip: "172.16.21.9"
      hostname: "cp-vm-1"
    - ip: "172.16.21.10"
      hostname: "cp-vm-2"
    - ip: "172.16.21.11"
      hostname: "cp-vm-3"
loadBalancer:
  vips:
    controlPlaneVIP: "172.16.21.40"
    ingressVIP: "172.16.21.30"
  kind: MetalLB
  metalLB:
    addressPools:
    - name: "address-pool-1"
      addresses:
    - "172.16.21.30-172.16.21.39"
...
enableControlplaneV2: true
masterNode:
  cpus: 4
  memoryMB: 8192
  replicas: 3
nodePools:
- name: "worker-pool-1"
  enableLoadBalancer: true
  replicas: 3
  vsphere:
    hostgroups:
    - "hostgroup-1"
  labels:
    failuredomain: "failuredomain-1"
- name: "worker-pool-2"
  replicas: 3
  vsphere:
    hostgroups:
    - "hostgroup-2"
  labels:
    failuredomain: "failuredomain-2"
...

Berikut ini adalah poin-poin penting yang harus dipahami dalam contoh sebelumnya:

  • Alamat IP statis untuk worker node ditentukan dalam file blok IP. File blok IP memiliki tujuh alamat meskipun hanya ada enam node pekerja. Alamat IP tambahan diperlukan selama upgrade, update, dan perbaikan otomatis cluster.

  • Alamat IP statis untuk tiga node bidang kontrol ditentukan di bagian network.controlPlaneIPBlock pada file konfigurasi cluster pengguna. Tidak diperlukan alamat IP tambahan di blok ini.

  • Kolom masterNode.replicas disetel ke 3, sehingga akan ada tiga node bidang kontrol.

  • Pengontrol cluster akan membuat grup DRS VM yang memiliki tiga node dalam kumpulan node worker-pool-1. Pengontrol juga akan membuat aturan afinitas VM-Host yang memastikan node di worker-pool-1 akan berjalan pada host yang berada di hostgroup-1. Node dalam worker-pool-1 memiliki label failuredomain: "failuredomain-1"

  • Pengontrol cluster akan membuat grup DRS VM yang memiliki tiga node dalam kumpulan node worker-pool-2. Pengontrol juga akan membuat aturan afinitas VM-Host yang memastikan node di worker-pool-2 akan berjalan pada host yang berada di hostgroup-2. Node dalam worker-pool-2 memiliki label failuredomain: "failuredomain-2"

Lanjutkan membuat cluster pengguna seperti yang dijelaskan dalam Membuat cluster pengguna (Controlplane V2).