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
ke3
, 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 ke3
, 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 diworker-pool-1
akan berjalan di host yang berada dihostgroup-1
. Node diworker-pool-1
memiliki labelfailuredomain: "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 diworker-pool-2
akan berjalan di host yang ada dihostgroup-2
. Node diworker-pool-2
memiliki labelfailuredomain: "failuredomain-2"
Lanjutkan membuat cluster pengguna seperti yang dijelaskan dalam Membuat cluster pengguna (Controlplane V2).