Mengaktifkan mode load balancing manual

Cluster GKE di VMware dapat dijalankan dengan salah satu dari tiga mode load balancing: terintegrasi, dipaketkan, atau manual.

  • Dengan mode terintegrasi, GKE di VMware menggunakan load balancer BESAR F5.

  • Dengan mode paket, GKE di VMware menyediakan dan mengelola load balancer. Anda tidak perlu mendapatkan lisensi untuk load balancer, dan jumlah penyiapan yang harus Anda lakukan sangat minimal.

  • Dengan mode manual, GKE di VMware menggunakan load balancer pilihan Anda. Mode load balancing manual mengharuskan Anda melakukan lebih banyak konfigurasi daripada mode terintegrasi. Load balancer Citrix adalah contoh load balancer yang dapat Anda gunakan dengan mode load balancing manual.

Load balancing manual didukung untuk jenis cluster berikut:

  • Cluster pengguna yang mengaktifkan Controlplane V2. Dengan Controlplane V2, node bidang kontrol untuk cluster pengguna berada dalam cluster pengguna itu sendiri.

  • Cluster pengguna yang menggunakan kubeception. Istilah kubeception mengacu pada kasus saat bidang kontrol untuk cluster pengguna berjalan pada satu atau beberapa node di cluster admin. Jika Controlplane V2 tidak diaktifkan, cluster pengguna akan menggunakan kubeception.

  • Cluster admin non-HA.

Halaman ini menjelaskan langkah-langkah yang perlu dilakukan jika Anda memilih menggunakan mode load balancing manual.

Dalam topik ini, Anda menyisihkan alamat IP untuk node bidang kontrol dan node pekerja untuk digunakan di lain waktu. Anda juga menyisihkan alamat IP untuk IP virtual (VIP) dan menentukan nilai nodePort. Idenya adalah Anda memilih alamat IP dan nilai nodePort yang ingin digunakan, lalu mencatatnya di spreadsheet atau beberapa alat lainnya. Jika sudah siap membuat cluster, Anda memerlukan alamat IP dan nilai nodePort untuk mengisi file konfigurasi bagi cluster admin serta cluster pengguna dan file blok IP untuk cluster Anda.

Anda juga memerlukan alamat IP dan nilai nodePort saat mengonfigurasi load balancer secara manual. Meskipun Anda tidak perlu mengonfigurasi load balancing untuk cluster admin dengan ketersediaan tinggi (HA) 1.16 dan yang lebih tinggi, agar lebih lengkap, topik ini menjelaskan cara mengonfigurasi alamat IP dan VIP untuk cluster admin dengan ketersediaan tinggi (HA).

Mengesampingkan alamat IP node

Dengan mode load balancing manual, Anda tidak dapat menggunakan DHCP. Anda harus menentukan alamat IP statis untuk node cluster Anda. Anda perlu menyisihkan alamat yang cukup untuk node di cluster admin dan node di semua cluster pengguna yang ingin Anda buat. Untuk mengetahui detail tentang jumlah alamat IP node yang perlu disisihkan, lihat Merencanakan alamat IP (Controlplane V2) dan Merencanakan alamat IP Anda (kubeception).

Mengonfigurasi alamat IP

Konfigurasi alamat IP statis yang telah Anda sisihkan bergantung pada jenis cluster dan apakah Controlplane V2 diaktifkan di cluster pengguna Anda.

Cluster admin dengan ketersediaan tinggi (HA)

Tabel berikut menjelaskan kegunaan alamat IP dan tempat Anda mengonfigurasinya untuk cluster admin dengan ketersediaan tinggi (HA).

IP statis Konfigurasi
Node bidang kontrol File konfigurasi cluster admin di bagian network.controlPlaneIPBlock.ips
Node add-on File blok IP cluster Admin dan tambahkan jalur di kolom network.ipMode.ipBlockFilePath pada file konfigurasi cluster admin

Cluster admin non-HA

Tabel berikut menjelaskan kegunaan alamat IP dan tempat Anda mengonfigurasinya untuk cluster admin non-HA.

IP statis Konfigurasi
Node bidang kontrol File blok IP cluster Admin dan tambahkan jalur di kolom network.ipMode.ipBlockFilePath pada file konfigurasi cluster admin
Node add-on File blok IP cluster admin

Cluster pengguna CP V2

Tabel berikut menjelaskan kegunaan alamat IP dan tempat Anda mengonfigurasinya untuk cluster pengguna dengan Controlplane V2 diaktifkan.

IP statis Konfigurasi
node bidang kontrol File konfigurasi cluster pengguna di bagian network.controlPlaneIPBlock.ips
Node pekerja File blok IP cluster pengguna dan tambahkan jalur di kolom network.ipMode.ipBlockFilePath pada file konfigurasi cluster pengguna

Cluster pengguna Kubeception

Tabel berikut menjelaskan kegunaan alamat IP dan tempat Anda mengonfigurasinya untuk cluster pengguna yang menggunakan kubeception.

IP statis Konfigurasi
node bidang kontrol File blok IP cluster Admin dan tambahkan jalur di kolom network.ipMode.ipBlockFilePath pada file konfigurasi cluster admin
Node pekerja File blok IP cluster pengguna dan tambahkan jalur di kolom network.ipMode.ipBlockFilePath pada file konfigurasi cluster pengguna

Menyisihkan alamat IP untuk VIP

Terlepas dari apakah Anda menggunakan mode load balancing terintegrasi, dipaketkan, atau manual, Anda harus menyisihkan beberapa alamat IP yang ingin digunakan untuk IP virtual (VIP) untuk load balancing. VIP ini memungkinkan klien eksternal menjangkau server Kubernetes API dan layanan ingress Anda di cluster pengguna.

Mengonfigurasi VIP

Tempat Anda mengonfigurasi VIP bergantung pada jenis cluster.

Cluster admin dengan ketersediaan tinggi (HA)

Tabel berikut menjelaskan fungsi VIP dan tempat Anda mengonfigurasinya untuk cluster admin dengan ketersediaan tinggi (HA).

VIP Konfigurasi
VIP untuk server Kubernetes API dari cluster admin File konfigurasi cluster admin di kolom loadBalancer.vips.controlPlaneVIP

Cluster admin non-HA

Tabel berikut menjelaskan fungsi VIP dan tempat Anda mengonfigurasinya untuk cluster admin non-HA.

VIP Konfigurasi
VIP untuk server Kubernetes API dari cluster admin File konfigurasi cluster admin di kolom loadBalancer.vips.controlPlaneVIP

Cluster pengguna CP V2

Tabel berikut menjelaskan fungsi VIP dan tempat Anda mengonfigurasinya untuk cluster pengguna yang mengaktifkan Controlplane V2.

VIP Konfigurasi
VIP untuk server Kubernetes API pada cluster pengguna File konfigurasi cluster pengguna di kolom loadBalancer.vips.controlPlaneVIP
VIP untuk layanan masuk di cluster pengguna File konfigurasi cluster pengguna di kolom loadBalancer.vips.ingressVIP

Cluster pengguna Kubeception

Tabel berikut menjelaskan fungsi VIP dan tempat Anda mengonfigurasinya untuk cluster pengguna yang menggunakan kubeception.

VIP Konfigurasi
VIP untuk server Kubernetes API pada cluster pengguna File konfigurasi cluster pengguna di kolom loadBalancer.vips.controlPlaneVIP
VIP untuk layanan masuk di cluster pengguna File konfigurasi cluster pengguna di kolom loadBalancer.vips.ingressVIP

Mengesampingkan nilai nodePort

Di GKE di VMware, server Kubernetes API dan ingress service diekspos oleh Layanan Kubernetes. Dengan mode load balancing manual, Anda harus memilih nilai nodePort sendiri untuk Layanan ini. Pilih nilai dalam rentang 30000 - 32767.

Konfigurasi nilai nodePort

Tempat Anda mengonfigurasi nilai nodePort bergantung pada apakah cluster pengguna telah mengaktifkan ControlPlane V2.

Cluster admin dengan ketersediaan tinggi (HA)

Anda tidak perlu mengonfigurasi nodePorts untuk cluster admin dengan ketersediaan tinggi (HA).

Cluster admin non-HA

Tabel berikut menjelaskan kegunaan nodePort dan tempat Anda mengonfigurasinya untuk cluster admin non-HA.

nodePort Konfigurasi
nodePort untuk server Kubernetes API cluster admin File konfigurasi cluster admin di kolom loadBalancer.vips.controlPlaneNodePort

Cluster pengguna CP V2

Tabel berikut menjelaskan kegunaan nodePorts dan tempat Anda mengonfigurasinya untuk cluster pengguna dengan Controlplane V2 diaktifkan.

nodePorts Konfigurasi
nodePort HTTP untuk layanan ingress di cluster pengguna File konfigurasi cluster pengguna di loadBalancer.manualLB.ingressHTTPNodePort
nodePort HTTPS untuk layanan ingress di cluster pengguna File konfigurasi cluster pengguna di loadBalancer.manualLB.ingressHTTPSNodePort

Anda tidak perlu mengonfigurasi nodePort untuk bidang kontrol VIP karena GKE di VMware menangani load balancing ke node bidang kontrol untuk cluster pengguna yang mengaktifkan Controlplane V2.

Cluster pengguna Kubeception

Tabel berikut menjelaskan kegunaan nilai nodePort dan tempat Anda mengonfigurasinya untuk cluster pengguna yang menggunakan kubeception.

nodePort Konfigurasi
nodePort untuk server Kubernetes API cluster pengguna File konfigurasi cluster pengguna di kolom loadBalancer.manualLB.controlPlaneNodePort
nodePort untuk server Konnektivitas cluster pengguna (server Konnektivitas menggunakan bidang kontrol VIP) File konfigurasi cluster pengguna di kolom loadBalancer.manualLB.konnectivityServerNodePort
nodePort HTTP untuk layanan ingress di cluster pengguna File konfigurasi cluster pengguna di loadBalancer.manualLB.ingressHTTPNodePort
nodePort HTTPS untuk layanan ingress di cluster pengguna File konfigurasi cluster pengguna di loadBalancer.manualLB.ingressHTTPSNodePort

Contoh file konfigurasi cluster

Contoh berikut menunjukkan sebagian dari file konfigurasi cluster pengguna dan admin:

Cluster admin dengan ketersediaan tinggi (HA)

network:
  controlPlaneIPBlock:
    netmask: "255.255.248.0"
    gateway: "21.0.143.254"
    ips:
    - ip: "21.0.140.226"
      hostname: "admin-cp-vm-1"
    - ip: "21.0.141.48"
      hostname: "admin-cp-vm-2"
    - ip: "21.0.141.65"
      hostname: "admin-cp-vm-3"
loadBalancer:
  vips:
    controlPlaneVIP: "172.16.21.40"
  kind: ManualLB

Cluster admin non-HA

network:
  ipMode:
    type: static
    ipBlockFilePath: "ipblock-admin.yaml"
loadBalancer:
  vips:
    controlPlaneVIP: "172.16.21.40"
  kind: ManualLB
  manualLB:
    controlPlaneNodePort: 30562

Cluster pengguna CP V2

network:
  ipMode:
    type: static
    ipBlockFilePath: "ipblock1.yaml"
  controlPlaneIPBlock:
    netmask: "255.255.255.0"
    gateway: "172.16.21.1"
    ips:
    - ip: "172.16.21.6"
      hostname: "cp-vm-1"
    - ip: "172.16.21.7"
      hostname: "cp-vm-2"
    - ip: "172.16.21.8"
      hostname: "cp-vm-3"
loadBalancer:
  vips:
    controlPlaneVIP: "172.16.21.40"
    ingressVIP: "172.16.21.30"
  kind: ManualLB
  manualLB:
    ingressHTTPNodePort: 30243
    ingressHTTPSNodePort: 30879

Cluster pengguna Kubeception

network:
  ipMode:
    type: static
    ipBlockFilePath: "ipblock1.yaml"
loadBalancer:
  vips:
    controlPlaneVIP: "172.16.21.40"
    ingressVIP: "172.16.21.30"
  kind: ManualLB
  manualLB:
    ingressHTTPNodePort: 30243
    ingressHTTPSNodePort: 30879
    konnectivityServerNodePort: 30563
    controlPlaneNodePort: 30562

Mengonfigurasi load balancer

Gunakan alat atau konsol pengelolaan load balancer untuk mengonfigurasi pemetaan berikut di load balancer. Cara melakukannya bergantung pada load balancer Anda.

Cluster admin dengan ketersediaan tinggi (HA)

GKE di VMware otomatis menangani load balancing untuk traffic bidang kontrol cluster admin dengan ketersediaan tinggi (HA). Meskipun tidak perlu mengonfigurasi pemetaan di load balancer, Anda harus menentukan alamat IP di kolom loadBalancer.vips.controlPlaneVIP.

Cluster admin non-HA

Berikut ini adalah pemetaan ke alamat IP dan nilai nodePort untuk traffic bidang kontrol:

  • (controlPlaneVIP:443) -> (ditemukan_IP_ADDRESSES:controlPlaneNodePort)

Tambahkan pemetaan ini untuk semua node di cluster admin, baik node bidang kontrol maupun node add-on.

Cluster pengguna CP V2

Lalu lintas pesawat kontrol

GKE di VMware otomatis menangani load balancing traffic bidang kontrol untuk cluster pengguna dengan Controlplane V2 diaktifkan. Meskipun tidak perlu mengonfigurasi pemetaan di load balancer, Anda harus menentukan alamat IP di kolom loadBalancer.vips.controlPlaneVIP.

Traffic bidang data

Gambar berikut menunjukkan pemetaan ke alamat IP dan nilai nodePort untuk traffic bidang data:

  • (ingressVIP:80) -> (ditemukan_IP_ADDRESSESingressHTTPNodePort)
  • (ingressVIP:443) -> (ditemukan_IP_ADDRESSESingressHTTPSNodePort)

Tambahkan pemetaan ini untuk semua node dalam cluster pengguna, baik node bidang kontrol dan node pekerja. Karena Anda telah mengonfigurasi NodePort pada cluster, Kubernetes akan membuka NodePorts pada semua node cluster. Hal ini memungkinkan setiap node di cluster menangani traffic bidang data.

Setelah Anda mengonfigurasi pemetaan, load balancer akan memproses traffic di alamat IP yang dikonfigurasi untuk VIP ingress cluster pengguna di port HTTP dan HTTPS standar. Load balancer merutekan permintaan ke setiap node di cluster. Setelah permintaan dirutekan ke salah satu node cluster, jaringan Kubernetes internal akan mengambil alih dan mengarahkan permintaan tersebut ke Pod tujuan.

Cluster pengguna Kubeception

Lalu lintas pesawat kontrol

Berikut ini adalah pemetaan ke alamat IP dan nilai nodePort untuk traffic bidang kontrol:

  • (controlPlaneVIP:443) -> (ditemukan_IP_ADDRESSEScontrolPlaneNodePort)
  • (controlPlaneVIP:8132) -> (ditemukan_IP_ADDRESSESkonnectivityServerNodePort)

Tambahkan pemetaan ini untuk semua node dalam cluster admin, baik cluster admin maupun node bidang kontrol cluster pengguna dan node add-on.

Traffic bidang data

Gambar berikut menunjukkan pemetaan ke alamat IP dan nilai nodePort untuk traffic bidang data:

  • (ingressVIP:80) -> (ditemukan_IP_ADDRESSESingressHTTPNodePort)
  • (ingressVIP:443) -> (ditemukan_IP_ADDRESSESingressHTTPSNodePort)

Tambahkan pemetaan ini untuk semua node di cluster pengguna. Dengan cluster pengguna yang menggunakan kubeception, semua node dalam cluster adalah worker node.

Selain persyaratan sebelumnya, sebaiknya Anda mengonfigurasi load balancer untuk mereset koneksi klien saat mendeteksi kegagalan node backend. Tanpa konfigurasi ini, klien server Kubernetes API dapat berhenti merespons selama beberapa menit saat instance server tidak aktif, yang dapat menyebabkan ketidakstabilan pada bidang kontrol Kubernetes.

  • Dengan F5 BIG-IP, setelan ini disebut Action On Service Down di halaman konfigurasi kumpulan backend.
  • Dengan HAProxy, setelan ini disebut sesi penonaktifan yang ditandai di konfigurasi server backend.
  • Jika menggunakan load balancer lain, Anda harus membaca dokumentasi untuk menemukan setelan yang setara.

Mendapatkan dukungan untuk load balancing manual

Google tidak menyediakan dukungan untuk load balancer yang dikonfigurasi menggunakan mode load balancing manual. Jika Anda mengalami masalah dengan load balancer, hubungi vendor load balancer.

Langkah selanjutnya