Mengonfigurasi afinitas Grup Host-VM

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 membuat grup host ESXi fisik. Kemudian, Anda mengonfigurasi cluster untuk mengaitkan grup VM dengan grup host.

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

Sebelum memulai

Untuk latihan ini, Anda harus memiliki minimal 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 dengan masing-masing 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 memiliki bidang kontrol dengan ketersediaan tinggi, sehingga ada tiga node bidang kontrol. Selain node bidang kontrol, ada enam node pekerja: tiga di satu node pool dan tiga di node pool 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 node pool, tetapkan replicas ke 3, dan berikan nama grup host yang ada.

Contoh file konfigurasi

Berikut adalah contoh file blok IP dan sebagian 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 adalah poin-poin penting yang perlu dipahami dalam contoh sebelumnya:

  • Alamat IP statis untuk node pekerja 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 file konfigurasi cluster pengguna. Tidak perlu alamat IP tambahan di blok ini.

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

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

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

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