Mengonfigurasi failover untuk Load Balancer Jaringan passthrough eksternal

Panduan ini menggunakan contoh untuk mengajari Anda cara mengonfigurasi failover untuk Load Balancer Jaringan passthrough eksternal dengan layanan backend. Sebelum mengikuti panduan ini, pahami hal-hal berikut:

Izin

Untuk mengikuti panduan ini, Anda perlu membuat instance dan mengubah jaringan dalam sebuah project. Anda harus menjadi pemilik atau editor project, atau Anda harus memiliki semua peran IAM Compute Engine berikut:

Tugas Peran yang Diperlukan
Membuat komponen load balancer Admin Jaringan
Menambahkan dan menghapus aturan firewall Security Admin
Membuat instance Compute Instance Admin

Untuk informasi selengkapnya, lihat panduan berikut:

Penyiapan

Panduan ini menunjukkan cara mengonfigurasi dan menguji Load Balancer Jaringan passthrough eksternal yang menggunakan failover. Langkah-langkah di bagian ini menjelaskan cara mengonfigurasi hal berikut:

  1. VM backend:
    • Satu backend utama dalam grup instance yang tidak dikelola di zona us-west1-a
    • Satu backend failover dalam grup instance yang tidak dikelola di zona us-west1-c
  2. Aturan firewall yang mengizinkan koneksi masuk ke VM backend
  3. Satu VM klien untuk menguji koneksi dan mengamati perilaku failover
  4. Komponen Load Balancer Jaringan passthrough eksternal berikut:
    • Health check untuk layanan backend
    • Layanan backend di region us-west1 untuk mengelola distribusi koneksi di antara VM backend
    • Aturan penerusan dan alamat IP untuk frontend load balancer

Arsitektur untuk contoh ini terlihat seperti ini:

Failover dengan Load Balancer Jaringan passthrough eksternal.
Failover dengan Load Balancer Jaringan passthrough eksternal (klik untuk memperbesar).

Membuat VM backend dan grup instance

Pada langkah ini, Anda akan membuat VM backend dan grup instance yang tidak dikelola:

  • Grup instance ig-a di us-west1-a adalah backend utama dengan dua VM:
    • vm-a1
    • vm-a2
  • Grup instance ig-c di us-west1-c adalah backend failover dengan dua VM:
    • vm-c1
    • vm-c2

Backend utama dan failover ditempatkan di zona terpisah agar petunjuk lebih jelas dan untuk menangani failover saat satu zona terhenti.

Setiap VM utama dan cadangan dikonfigurasi untuk menjalankan server web Apache pada TCP port 80. Secara {i>default<i}, Apache dikonfigurasi untuk mengikat ke alamat IP apa pun. Load balancer jaringan mengirimkan paket dengan mempertahankan IP tujuan.

Pastikan software server yang berjalan di VM utama dan cadangan Anda memproses alamat IP aturan penerusan load balancer. Alamat IP tujuan dari paket yang dikirim ke VM backend oleh Load Balancer Jaringan passthrough eksternal adalah alamat IP dari aturan penerusan.

Untuk kemudahan instruksional, semua VM utama dan cadangan menjalankan Debian GNU/Linux 9.

Konsol

Membuat VM backend

  1. Di konsol Google Cloud, buka halaman Instance VM. Buka instance VM
  2. Ulangi langkah-langkah berikut untuk membuat empat VM, menggunakan kombinasi nama dan zona berikut.
    • Nama: vm-a1, zona: us-west1-a
    • Nama: vm-a2, zona: us-west1-a
    • Nama: vm-c1, zona: us-west1-c
    • Nama: vm-c2, zona: us-west1-c
  3. Klik Create instance.
  4. Tetapkan Name seperti yang ditunjukkan pada langkah 2.
  5. Untuk Region, pilih us-west1, lalu pilih Zone seperti yang ditunjukkan pada langkah 2.
  6. Di bagian Boot disk, pastikan image yang dipilih adalah Debian GNU/Linux 10 (buster). Klik Choose untuk mengubah gambar jika diperlukan.
  7. Klik Advanced options.
  8. Klik Networking dan konfigurasikan kolom berikut:
    1. Untuk Tag jaringan, masukkan network-lb.
  9. Klik Management. Masukkan skrip berikut ke kolom Skrip startup. Konten skrip identik untuk keempat VM:

    #! /bin/bash
    apt-get update
    apt-get install apache2 -y
    a2ensite default-ssl
    a2enmod ssl
    vm_hostname="$(curl -H "Metadata-Flavor:Google" \
    http://metadata.google.internal/computeMetadata/v1/instance/name)"
    echo "Page served from: $vm_hostname" | \
    tee /var/www/html/index.html
    systemctl restart apache2
    
  10. Klik Create.

Membuat grup instance

  1. Di Konsol Google Cloud, buka halaman Instance groups.

    Buka Instance groups

  2. Ulangi langkah-langkah berikut untuk membuat dua grup instance tidak terkelola, masing-masing dengan dua VM di dalamnya, menggunakan kombinasi ini.

    • Grup instance: ig-a, zona: us-west1-a, VM: vm-a1 dan vm-a2
    • Grup instance: ig-c, zona: us-west1-c, VM: vm-c1 dan vm-c2
  3. Klik Create grup instance.

  4. Klik New unmanaged instance group.

  5. Tetapkan Name seperti yang ditunjukkan pada langkah 2.

  6. Di bagian Location, pilih us-west1 untuk Region, lalu pilih Zone seperti yang ditunjukkan pada langkah 2.

  7. Untuk Network, masukkan default.

  8. Di bagian VM instances, tambahkan VM seperti yang ditunjukkan pada langkah 2.

  9. Klik Create.

gcloud

  1. Buat empat VM dengan menjalankan perintah berikut empat kali, menggunakan keempat kombinasi ini untuk VM-NAME dan ZONE. Konten skrip identik untuk keempat VM.

    • VM-NAME dari vm-a1 dan ZONE dari us-west1-a
    • VM-NAME dari vm-a2 dan ZONE dari us-west1-a
    • VM-NAME dari vm-c1 dan ZONE dari us-west1-c
    • VM-NAME dari vm-c2 dan ZONE dari us-west1-c
    gcloud compute instances create VM-NAME \
        --zone=ZONE \
        --image-family=debian-10 \
        --image-project=debian-cloud \
        --tags=network-lb \
        --metadata=startup-script='#! /bin/bash
          apt-get update
          apt-get install apache2 -y
          a2ensite default-ssl
          a2enmod ssl
          vm_hostname="$(curl -H "Metadata-Flavor:Google" \
          http://metadata.google.internal/computeMetadata/v1/instance/name)"
          echo "Page served from: $vm_hostname" | \
          tee /var/www/html/index.html
          systemctl restart apache2'
    
  2. Buat dua grup instance yang tidak dikelola di setiap zona:

    gcloud compute instance-groups unmanaged create ig-a \
        --zone us-west1-a
    gcloud compute instance-groups unmanaged create ig-c \
        --zone us-west1-c
    
  3. Tambahkan VM ke grup instance yang sesuai:

    gcloud compute instance-groups unmanaged add-instances ig-a \
        --zone us-west1-a \
        --instances vm-a1,vm-a2
    gcloud compute instance-groups unmanaged add-instances ig-c \
        --zone us-west1-c \
        --instances vm-c1,vm-c2
    

Mengonfigurasi aturan firewall

Buat aturan firewall yang memungkinkan traffic eksternal menjangkau instance backend.

Konsol

  1. Di Konsol Google Cloud, buka halaman Firewall policies.

    Buka Kebijakan firewall

  2. Klik Create firewall rule untuk membuat aturan guna mengizinkan traffic dari sumber mana pun. Gunakan nilai berikut:

    1. Name: allow-network-lb.
    2. Jaringan:default
    3. Prioritas: 1000
    4. Direction of traffic: Masuk
    5. Tindakan jika kecocokan: Diizinkan.
    6. Targets: Tag target yang ditentukan
    7. Tag target: network-lb
    8. Filter sumber: Rentang IPv4
    9. Rentang IPv4 sumber: 0.0.0.0/0, yang memungkinkan traffic dari sumber mana pun. Hal ini memungkinkan pemeriksaan traffic eksternal dan health check menjangkau instance backend.
    10. Protocols and ports: Pilih Specified protocols and ports. Centang kotak TCP dan masukkan 80.
  3. Klik Create.

  4. Klik Create firewall rule lagi untuk membuat aturan guna mengizinkan koneksi SSH masuk ke instance. Gunakan nilai berikut:

    1. Name: allow-ssh
    2. Jaringan: default
    3. Prioritas: 1000
    4. Direction of traffic: Masuk
    5. Action on match: Izinkan
    6. Targets: Tag target yang ditentukan
    7. Tag target: network-lb
    8. Filter sumber: Rentang IPv4
    9. Rentang IPv4 sumber: 0.0.0.0/0
    10. Protocols and ports: Pilih Specified protocols and ports. Centang kotak TCP dan masukkan 22.
  5. Klik Create.

gcloud

gcloud compute firewall-rules create allow-network-lb \
    --target-tags network-lb \
    --allow tcp:80
gcloud compute firewall-rules create allow-ssh \
    --target-tags network-lb \
    --allow tcp:22

Mengonfigurasi komponen load balancer

Langkah-langkah ini mengonfigurasi komponen Load Balancer Jaringan passthrough eksternal berikut:

  • Health check: Contoh ini menggunakan health check HTTP yang hanya memeriksa respons 200 HTTP (OK).

  • Layanan backend: Karena contoh ini meneruskan traffic HTTP melalui load balancer, konfigurasi akan menentukan TCP, bukan UDP. Untuk menggambarkan failover, layanan backend ini memiliki rasio failover sebesar 0.75.

  • Aturan penerusan: Contoh ini membuat satu aturan penerusan.

Konsol

Memulai konfigurasi Anda

  1. Di Konsol Google Cloud, buka halaman Load balancing.

    Buka Load balancing

  2. Klik Create load balancer.
  3. Untuk Type of load balancer, pilih Network Load Balancer (TCP/UDP/SSL), lalu klik Next.
  4. Untuk Proxy or passthrough, pilih Passthrough load balancer lalu klik Next.
  5. Untuk Public facing or internal, pilih Public facing (eksternal), lalu klik Next.
  6. Klik Konfigurasikan.

Konfigurasi backend

  1. Di halaman Create external passthrough Network Load Balancer, masukkan Nama tcp-network-lb untuk load balancer baru.
  2. Klik Backend configuration. Nama load balancer yang Anda masukkan sebelumnya akan muncul, tetapi tidak dapat diubah.
  3. Klik Backend configuration dan buat perubahan berikut:
    1. Untuk Region, pilih us-west1.
    2. Di bagian Backend, gunakan menu drop-down Instance group untuk memilih ig-a. Klik Done.
    3. Klik Add backend dan ulangi langkah ini untuk menambahkan ig-c. Pilih kotak centang Use this instance group as a failover group for backup.
    4. Di bagian Health check, pilih Create another health check atau Create another health check, masukkan informasi berikut:
      • Name: hc-http-80
      • Protokol: TCP
      • Port: 80
    5. Klik Simpan dan lanjutkan.
    6. Klik Advanced configurations.
    7. Untuk Failover Ratio, masukkan 0.75.
    8. Pastikan ada tanda centang biru di samping Konfigurasi Backend sebelum melanjutkan.

Konfigurasi frontend

  1. Klik Frontend configuration.
  2. Masukkan Nama network-lb-forwarding-rule.
  3. Di bagian IP, klik menu drop-down lalu pilih Buat alamat IP.
    1. Di layar Reserve a new static IP address, tetapkan Name dari network-lb-ip.
    2. Klik Reserve.
  4. Pilih Single, lalu masukkan 80 untuk Port number.
  5. Klik tombol Selesai.

    Lingkaran biru dengan tanda centang di sebelah kiri Frontend configuration menunjukkan bahwa penyiapan berhasil.

Meninjau konfigurasi

  1. Klik tombol Review and finalize untuk memeriksa semua setelan konfigurasi Anda untuk load balancer.
  2. Jika setelan sudah benar, klik Create. Butuh beberapa menit untuk membuat load balancer.

    Di layar load balancing, di bagian kolom Backend untuk load balancer baru, Anda akan melihat tanda centang hijau yang menunjukkan bahwa load balancer baru sudah responsif.

gcloud

  1. Buat alamat IP eksternal statis untuk load balancer.

    gcloud compute addresses create network-lb-ip \
        --region us-west1
    
  2. Buat health check HTTP baru untuk menguji konektivitas TCP ke VM di 80.

    gcloud compute health-checks create http hc-http-80 \
        --region us-west1 \
        --port 80
    
  3. Buat layanan backend untuk traffic HTTP:

    gcloud compute backend-services create network-lb-backend-service \
        --protocol tcp \
        --region us-west1 \
        --health-checks hc-http-80 \
        --health-checks-region us-west1 \
        --failover-ratio 0.75
    
  4. Tambahkan backend utama ke layanan backend:

    gcloud compute backend-services add-backend network-lb-backend-service \
        --region us-west1 \
        --instance-group ig-a \
        --instance-group-zone us-west1-a
    
  5. Tambahkan backend failover ke layanan backend:

    gcloud compute backend-services add-backend network-lb-backend-service \
        --region us-west1 \
        --instance-group ig-c \
        --instance-group-zone us-west1-c \
        --failover
    
  6. Membuat aturan penerusan untuk layanan backend. Gunakan alamat IP yang dicadangkan di langkah 1 sebagai alamat IP eksternal statis load balancer.

    gcloud compute forwarding-rules create network-lb-forwarding-rule \
        --region us-west1 \
        --load-balancing-scheme external \
        --address network-lb-ip\
        --ports 80 \
        --backend-service network-lb-backend-service
    

Pengujian

Pengujian ini menunjukkan cara memvalidasi konfigurasi load balancer dan mempelajari perilaku yang diharapkan.

Mengirim traffic ke load balancer

Prosedur ini mengirim traffic eksternal ke load balancer. Anda akan menggunakan prosedur ini untuk menyelesaikan tes lainnya.

  1. Menghubungkan ke instance VM klien.

    gcloud compute forwarding-rules describe network-lb-forwarding-rule \
        --region us-west1
    
  2. Buat permintaan web ke load balancer menggunakan curl untuk menghubungi alamat IP-nya.

    curl http://IP_ADDRESS
    
  3. Perhatikan teks yang ditampilkan oleh perintah curl. Nama VM backend yang menghasilkan respons ditampilkan dalam teks tersebut; misalnya: Page served from: vm-a1

Menguji status awal

Setelah Anda mengonfigurasi load balancer contoh, keempat VM backend tersebut harus siap:

  • dua VM utama, vm-a1 dan vm-a2
  • dua VM cadangan, vm-c1 dan vm-c2

Ikuti prosedur pengujian untuk mengirim traffic ke load balancer. Ulangi langkah kedua beberapa kali. Perilaku yang diharapkan adalah traffic akan disalurkan oleh dua VM utama, vm-a1 dan vm-a2, karena keduanya responsif. Anda akan melihat setiap VM utama memberikan respons sekitar setengah dari waktu tersebut karena tidak ada afinitas sesi yang telah dikonfigurasi untuk load balancer ini.

Menguji failover

Pengujian ini menyimulasikan kegagalan vm-a1 sehingga Anda dapat mengamati perilaku failover.

  1. Menghubungkan ke VM vm-a1.

    gcloud compute ssh vm-a1 --zone us-west1-a
    
  2. Hentikan server web Apache. Setelah sepuluh detik, Google Cloud akan menganggap VM ini tidak responsif. (Health check hc-http-80 yang Anda buat di penyiapan menggunakan interval pemeriksaan default lima detik dan batas tidak responsif dari dua pemeriksaan yang gagal berturut-turut.)

    sudo apachectl stop
    
  3. Ikuti prosedur pengujian untuk mengirim traffic ke load balancer. Ulangi langkah kedua beberapa kali. Perilaku yang diharapkan adalah traffic kini disalurkan oleh dua VM cadangan, vm-c1 dan vm-c2. Karena hanya satu VM utama, vm-a2, yang sehat, rasio VM utama yang responsif terhadap total VM utama adalah 0.5. Jumlah ini kurang dari nilai minimum failover sebesar 0.75, sehingga Google Cloud mengonfigurasi ulang kumpulan aktif load balancer untuk menggunakan VM cadangan. Anda akan melihat bahwa setiap VM cadangan memberikan respons kira-kira setengah dari waktu yang dibutuhkan selama tidak ada afinitas sesi yang dikonfigurasi untuk load balancer ini.

Menguji failover

Pengujian ini menyimulasikan failback dengan memulai ulang server Apache di vm-a1.

  1. Menghubungkan ke VM vm-a1.

    gcloud compute ssh vm-a1 --zone us-west1-a
    
  2. Mulai server web Apache dan tunggu selama 10 detik.

    sudo apachectl start
    
  3. Ikuti prosedur pengujian klien. Ulangi langkah kedua beberapa kali. Perilaku yang diharapkan adalah traffic akan disalurkan oleh dua VM utama, vm-a1 dan vm-a2. Dengan kedua VM utama tersebut responsif, rasio VM primer yang responsif terhadap total VM utama adalah 1.0, lebih besar dari nilai minimum failover 0.75, sehingga Google Cloud mengonfigurasi kumpulan aktif untuk menggunakan VM utama lagi.

Menambahkan lebih banyak VM backend

Bagian ini memperluas contoh konfigurasi dengan menambahkan lebih banyak VM utama dan cadangan ke load balancer. Hal ini dilakukan dengan membuat dua grup instance backend lagi untuk menunjukkan bahwa Anda dapat mendistribusikan VM utama dan cadangan di antara beberapa zona di region yang sama:

  • Grup instance ketiga, ig-d di us-west1-c, berfungsi sebagai backend utama dengan dua VM:
    • vm-d1
    • vm-d2
  • Grup instance keempat, ig-b di us-west1-a, berfungsi sebagai backend failover dengan dua VM:
    • vm-b1
    • vm-b2

Arsitektur yang dimodifikasi untuk contoh ini terlihat seperti ini:

Failover Load Balancer Jaringan passthrough eksternal multi-zona.
Failover Load Balancer Jaringan passthrough eksternal multi-zona (klik untuk memperbesar).

Membuat VM dan grup instance tambahan

Ikuti langkah-langkah berikut untuk membuat VM utama dan cadangan tambahan serta grup instance tidak terkelola yang sesuai.

Konsol

Membuat VM backend

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka instance VM

  2. Ulangi langkah-langkah berikut untuk membuat empat VM, menggunakan kombinasi nama dan zona berikut.

    • Nama: vm-b1, zona: us-west1-a
    • Nama: vm-b2, zona: us-west1-a
    • Nama: vm-d1, zona: us-west1-c
    • Nama: vm-d2, zona: us-west1-c
  3. Klik Create instance.

  4. Tetapkan Name seperti yang ditunjukkan pada langkah 2.

  5. Untuk Region, pilih us-west1, lalu pilih Zone seperti yang ditunjukkan pada langkah 2.

  6. Di bagian Boot disk, pastikan image yang dipilih adalah Debian GNU/Linux 9 Stretch. Klik Choose untuk mengubah gambar jika diperlukan.

  7. Klik Advanced options.

  8. Klik Networking dan konfigurasikan kolom berikut:

    1. Untuk Tag jaringan, masukkan network-lb.
  9. Klik Management. Masukkan skrip berikut ke kolom Skrip startup. Konten skrip identik untuk keempat VM:

    #! /bin/bash
    apt-get update
    apt-get install apache2 -y
    a2ensite default-ssl
    a2enmod ssl
    vm_hostname="$(curl -H "Metadata-Flavor:Google" \
    http://metadata.google.internal/computeMetadata/v1/instance/name)"
    echo "Page served from: $vm_hostname" | \
    tee /var/www/html/index.html
    systemctl restart apache2
    
  10. Klik Create.

Membuat grup instance

  1. Di Konsol Google Cloud, buka halaman Instance groups.

    Buka Instance groups

  2. Ulangi langkah-langkah berikut untuk membuat dua grup instance tidak terkelola, masing-masing dengan dua VM yang berada di satu grup, menggunakan kombinasi ini.

    • Grup instance: ig-b, zona: us-west1-a, VM: vm-b1 dan vm-b2
    • Grup instance: ig-d, zona: us-west1-c, VM: vm-d1 dan vm-d2
  3. Klik Create grup instance.

  4. Klik New unmanaged instance group.

  5. Tetapkan Name seperti yang ditunjukkan pada langkah 2.

  6. Di bagian Location, pilih us-west1 untuk Region, lalu pilih Zone seperti yang ditunjukkan pada langkah 2.

  7. Untuk Network, masukkan default.

  8. Di bagian VM instances, tambahkan VM seperti yang ditunjukkan pada langkah 2.

  9. Klik Create.

gcloud

  1. Buat empat VM dengan menjalankan perintah berikut empat kali, menggunakan keempat kombinasi ini untuk VM-NAME dan ZONE. Konten skrip identik untuk keempat VM.

    • VM-NAME dari vm-b1 dan ZONE dari us-west1-a
    • VM-NAME dari vm-b2 dan ZONE dari us-west1-a
    • VM-NAME dari vm-d1 dan ZONE dari us-west1-c
    • VM-NAME dari vm-d2 dan ZONE dari us-west1-c
    gcloud compute instances create VM-NAME \
        --zone=ZONE \
        --image-family=debian-10 \
        --image-project=debian-cloud \
        --tags=network-lb \
        --metadata=startup-script='#! /bin/bash
          apt-get update
          apt-get install apache2 -y
          a2ensite default-ssl
          a2enmod ssl
          vm_hostname="$(curl -H "Metadata-Flavor:Google" \
          http://metadata.google.internal/computeMetadata/v1/instance/name)"
          echo "Page served from: $vm_hostname" | \
          tee /var/www/html/index.html
          systemctl restart apache2'
    
  2. Buat dua grup instance yang tidak dikelola di setiap zona:

    gcloud compute instance-groups unmanaged create ig-b \
        --zone us-west1-a
    gcloud compute instance-groups unmanaged create ig-d \
        --zone us-west1-c
    
  3. Tambahkan VM ke grup instance yang sesuai:

    gcloud compute instance-groups unmanaged add-instances ig-b \
        --zone us-west1-a \
        --instances vm-b1,vm-b2
    gcloud compute instance-groups unmanaged add-instances ig-d \
        --zone us-west1-c \
        --instances vm-d1,vm-d2
    

Menambahkan backend utama

Anda dapat menggunakan prosedur ini sebagai template cara menambahkan grup instance yang tidak dikelola ke layanan backend Load Balancer Jaringan passthrough eksternal yang ada sebagai backend utama. Untuk contoh konfigurasi, prosedur ini menunjukkan cara menambahkan grup instance ig-d sebagai backend utama ke load balancer network-lb.

Konsol

Edit konfigurasi load balancer untuk menambahkan backend utama.

  1. Di Konsol Google Cloud, buka halaman Load balancing.

    Buka Load balancing

  2. Klik load balancer yang ingin diubah.

  3. Klik Edit.

  4. Klik Backend configuration dan buat perubahan berikut:

    1. Pada Backends, klik Add Backend.
    2. Dari menu drop-down, pilih grup instance yang akan ditambahkan sebagai backend utama. Dalam kasus ini, ig-d.
    3. Klik Done.
    4. Pastikan ada tanda centang biru di samping Konfigurasi Backend sebelum melanjutkan.

Meninjau konfigurasi

  1. Klik tombol Review and finalize, lalu pastikan bahwa backend utama yang baru terlihat di bagian Backend.
  2. Jika setelan sudah benar, klik Create. Butuh beberapa menit untuk membuat load balancer.

    Di layar load balancing, di bagian kolom Backend untuk load balancer baru, Anda akan melihat tanda centang hijau yang menunjukkan bahwa load balancer baru sudah responsif.

gcloud

Gunakan perintah gcloud berikut untuk menambahkan backend utama ke layanan backend Load Balancer Jaringan passthrough eksternal yang ada.

gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \
   --instance-group INSTANCE_GROUP_NAME \
   --instance-group-zone INSTANCE_GROUP_ZONE \
   --region REGION

dengan:

  • BACKEND_SERVICE_NAME adalah nama layanan backend load balancer. Misalnya, gunakan network-lb-backend-service.
  • INSTANCE_GROUP_NAME adalah nama grup instance untuk ditambahkan sebagai backend utama. Misalnya, gunakan ig-d.
  • INSTANCE_GROUP_ZONE adalah zona tempat grup instance ditentukan. Misalnya, gunakan us-west1-c.
  • REGION adalah region dari load balancer. Misalnya, gunakan us-west1.

Menambahkan backend failover

Anda dapat menggunakan prosedur ini sebagai template cara menambahkan grup instance yang tidak dikelola ke layanan backend Load Balancer Jaringan passthrough eksternal yang ada sebagai backend failover. Untuk contoh konfigurasi, prosedur ini menunjukkan cara menambahkan grup instance ig-b sebagai backend failover ke load balancer network-lb.

Konsol

Edit konfigurasi load balancer untuk menambahkan backend utama.

  1. Di Konsol Google Cloud, buka halaman Load balancing.

    Buka Load balancing

  2. Klik load balancer yang ingin diubah.

  3. Klik Edit.

  4. Klik Backend configuration dan buat perubahan berikut:

    1. Pada Backends, klik Add Backend.
    2. Dari menu dropdown, pilih grup instance yang akan ditambahkan sebagai backend failover. Dalam kasus ini, ig-b.
    3. Centang kotak Use this instance group as a failover group for backup.
    4. Klik Done.
    5. Pastikan ada tanda centang biru di samping Konfigurasi Backend sebelum melanjutkan.

Meninjau konfigurasi

  1. Klik tombol Review and finalize, lalu pastikan bahwa backend utama yang baru terlihat di bagian Backend.
  2. Jika setelan sudah benar, klik Create. Butuh beberapa menit untuk membuat load balancer.

    Di layar load balancing, di bagian kolom Backend untuk load balancer baru, Anda akan melihat tanda centang hijau yang menunjukkan bahwa load balancer baru sudah responsif.

gcloud

Gunakan perintah gcloud berikut untuk menambahkan backend failover ke layanan backend Load Balancer Jaringan passthrough eksternal yang ada.

gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \
   --instance-group INSTANCE_GROUP_NAME \
   --instance-group-zone INSTANCE_GROUP_ZONE \
   --region REGION \
   --failover

dengan:

  • BACKEND_SERVICE_NAME adalah nama layanan backend load balancer. Misalnya, gunakan network-lb-backend-service.
  • INSTANCE_GROUP_NAME adalah nama grup instance yang akan ditambahkan sebagai backend failover. Misalnya, gunakan ig-b.
  • INSTANCE_GROUP_ZONE adalah zona tempat grup instance ditentukan. Misalnya, gunakan us-west1-a.
  • REGION adalah region dari load balancer. Misalnya, gunakan us-west1.

Mengonversi backend utama atau failover

Anda dapat menggunakan konversi backend utama menjadi backend failover, atau sebaliknya, tanpa harus menghapus grup instance dari layanan backend Load Balancer Jaringan passthrough eksternal.

gcloud

Gunakan perintah gcloud berikut untuk mengonversi backend utama yang ada menjadi backend failover:

gcloud compute backend-services update-backend BACKEND_SERVICE_NAME \
   --instance-group INSTANCE_GROUP_NAME \
   --instance-group-zone INSTANCE_GROUP_ZONE \
   --region REGION \
   --failover

Gunakan perintah gcloud berikut untuk mengonversi backend failover yang ada menjadi backend utama:

gcloud compute backend-services update-backend BACKEND_SERVICE_NAME \
   --instance-group INSTANCE_GROUP_NAME \
   --instance-group-zone INSTANCE_GROUP_ZONE \
   --region REGION \
   --no-failover

dengan:

  • BACKEND_SERVICE_NAME adalah nama layanan backend load balancer.
  • INSTANCE_GROUP_NAME adalah nama grup instance.
  • INSTANCE_GROUP_ZONE adalah zona tempat grup instance ditentukan.
  • REGION adalah region dari load balancer.

Mengonfigurasi kebijakan failover

Bagian ini menjelaskan cara mengelola kebijakan failover untuk layanan backend Load Balancer Jaringan passthrough eksternal. Kebijakan failover terdiri dari:

  • Rasio failover
  • Menurunkan traffic saat semua VM backend tidak responsif
  • Pengosongan koneksi saat failover

Untuk informasi selengkapnya tentang parameter kebijakan failover, lihat:

Menentukan kebijakan failover

Petunjuk berikut menjelaskan cara menentukan kebijakan failover untuk Load Balancer Jaringan passthrough eksternal yang sudah ada.

gcloud

Untuk menentukan kebijakan failover menggunakan gcloud CLI, update layanan backend load balancer:

gcloud compute backend-services update BACKEND_SERVICE_NAME \
   --region REGION \
   --failover-ratio FAILOVER_RATIO \
   --connection-drain-on-failover \
   --connection-draining-timeout=CONNECTION_DRAINING_TIMEOUT \
   --drop-traffic-if-unhealthy

dengan:

  • BACKEND_SERVICE_NAME adalah nama layanan backend load balancer. Misalnya, gunakan network-lb.
  • REGION adalah region dari load balancer. Misalnya, gunakan us-west1.
  • FAILOVER_RATIO adalah rasio failover. Nilai yang memungkinkan adalah antara 0.0 dan 1.0, inklusif. Misalnya, gunakan 0.75.
  • CONNECTION_DRAINING_TIMEOUT memungkinkan koneksi TCP bertahan, bahkan pada VM yang tidak lagi berada dalam kumpulan aktif, hingga durasi waktu tunggu pengosongan koneksi.

Melihat kebijakan failover

Petunjuk berikut menjelaskan cara melihat kebijakan failover yang ada untuk Load Balancer Jaringan passthrough eksternal.

gcloud

Untuk menampilkan setelan kebijakan failover menggunakan gcloud CLI, gunakan perintah berikut. Setelan yang tidak ditentukan dalam kebijakan failover menggunakan nilai kebijakan failover default.

gcloud compute backend-services describe BACKEND_SERVICE_NAME \
   --region REGION \
   --format="get(failoverPolicy)"

dengan:

  • BACKEND_SERVICE_NAME adalah nama layanan backend load balancer. Misalnya, gunakan network-lb-backend-service.
  • REGION adalah region dari load balancer. Misalnya, gunakan us-west1.

Langkah selanjutnya