Menggunakan health check

Google Cloud menyediakan mekanisme health check yang menentukan apakah instance backend merespons traffic dengan benar. Dokumen ini menjelaskan cara membuat dan menggunakan health check untuk load balancer dan Cloud Service Mesh.

Halaman ini mengasumsikan bahwa Anda sudah memahami konsep berikut:

Membuat health check

Google Cloud memungkinkan Anda membuat atau memilih health check saat menyelesaikan konfigurasi backend load balancer di konsol Google Cloud.

Anda juga dapat membuat health check secara terpisah dari konfigurasi load balancer di konsol Google Cloud. Hal ini berguna jika Anda perlu membuat health check terlebih dahulu, atau jika Anda perlu menggunakan health check untuk beberapa load balancer. Anda dapat membuat pemeriksaan kesehatan menggunakan konsol Google Cloud, Google Cloud CLI, atau REST API.

Konsol

  1. Buka halaman Health checks di konsol Google Cloud.
    Buka halaman Health checks
  2. Klik Buat health check.
  3. Di halaman Create a health check, berikan informasi berikut:
    • Nama: Berikan nama untuk health check.
    • Deskripsi: Opsional, berikan deskripsi.
    • Cakupan: Pilih cakupan, Global atau Regional, bergantung pada jenis load balancer.
      • Jika Anda memilih Regional, pilih Region dari drop-down.
    • Protocol: Pilih protokol health check.
    • Port: Berikan nomor port. Saat membuat pemeriksaan kesehatan di konsol Google Cloud, Anda harus menentukan port menggunakan nomor port.
    • Protokol proxy: Secara opsional, Anda dapat menambahkan header proxy ke permintaan yang dibuat oleh sistem probe health check.
    • Jalur permintaan dan Respons: Untuk protokol HTTP, HTTPS, dan HTTP2, Anda dapat secara opsional memberikan jalur URL untuk dihubungi sistem probe health check. Untuk mengetahui informasi selengkapnya, lihat Flag tambahan untuk pemeriksaan status HTTP, HTTPS, dan HTTP/2.
    • Permintaan dan Respons: Untuk protokol TCP dan SSL, Anda dapat menentukan string teks ASCII yang akan dikirim dan string respons teks yang diharapkan. Untuk mengetahui informasi selengkapnya, lihat Flag tambahan untuk health check SSL dan TCP.
    • Interval pemeriksaan: Menentukan jumlah waktu dari awal satu pemeriksaan hingga awal pemeriksaan berikutnya.
    • Waktu tunggu: Menentukan jumlah waktu yang diperlukan Google Cloud untuk menunggu respons atas pemeriksaan. Nilainya harus kurang dari atau sama dengan interval pemeriksaan.
    • Batas responsif: Tentukan jumlah pemeriksaan berurutan yang harus berhasil agar instance VM dianggap responsif.
    • Nilai minimum tidak responsif: Tentukan jumlah pemeriksaan berurutan yang harus gagal agar instance VM dianggap tidak responsif.
  4. Klik Create.

gcloud

  • Untuk membuat health check global, gunakan perintah compute health-checks create yang sesuai:

    gcloud compute health-checks create PROTOCOL NAME \
        --global \
        --description=DESCRIPTION \
        --check-interval=CHECK_INTERVAL \
        --timeout=TIMEOUT \
        --healthy-threshold=HEALTHY_THRESHOLD \
        --unhealthy-threshold=UNHEALTHY_THRESHOLD \
        PORT_SPECIFICATION \
        ADDITIONAL_FLAGS
    
  • Untuk membuat health check regional, gunakan perintah compute health-checks create yang sesuai:

    gcloud compute health-checks create PROTOCOL NAME \
        --region=REGION \
        --description=DESCRIPTION \
        --check-interval=CHECK_INTERVAL \
        --timeout=TIMEOUT \
        --healthy-threshold=HEALTHY_THRESHOLD \
        --unhealthy-threshold=UNHEALTHY_THRESHOLD \
        PORT_SPECIFICATION \
        ADDITIONAL_FLAGS
    

Ganti kode berikut:

  • PROTOCOL menentukan protokol yang digunakan untuk health check. Opsi yang valid adalah grpc, http, https, http2, ssl, dan tcp.
  • NAME adalah nama health check. Dalam project tertentu: Setiap health check global harus memiliki nama unik, dan health check regional harus memiliki nama unik dalam region tertentu.
  • REGION: Region pemeriksaan kesehatan. Untuk load balancer regional, region health check harus cocok dengan region layanan backend.
  • DESCRIPTION adalah deskripsi opsional.
  • CHECK_INTERVAL adalah jumlah waktu dari awal koneksi sistem probe health check satu hingga awal koneksi berikutnya. Unit dalam hitungan detik. Jika dihilangkan, Google Cloud akan menggunakan nilai 5s (5 detik).
  • TIMEOUT adalah jumlah waktu yang diperlukan Google Cloud untuk menunggu respons atas pemeriksaan. Nilai TIMEOUT harus kurang dari atau sama dengan CHECK_INTERVAL. Satuannya adalah detik. Jika dihilangkan, Google Cloud akan menggunakan nilai 5s (5 detik).
  • HEALTHY_THRESHOLD dan UNHEALTHY_THRESHOLD menentukan jumlah pemeriksaan berurutan yang harus berhasil atau gagal agar instance VM dianggap responsif atau tidak responsif. Jika salah satunya dihilangkan, Google Cloud akan menggunakan nilai minimum default 2.
  • PORT_SPECIFICATION: Menentukan spesifikasi port menggunakan salah satu Flag spesifikasi port.
  • ADDITIONAL_FLAGS adalah flag lain untuk menentukan port dan opsi khusus untuk PROTOCOL. Lihat Flag tambahan untuk health check HTTP, HTTPS, dan HTTP/2, Flag tambahan untuk health check SSL dan TCP, atau Flag tambahan untuk health check gRPC.

Terraform

Untuk membuat health check global, gunakan resource google_compute_health_check.

resource "google_compute_health_check" "health_check_tcp_with_logging" {
  provider = google-beta

  name = "health-check-tcp"

  timeout_sec        = 1
  check_interval_sec = 1

  tcp_health_check {
    port = "22"
  }

  log_config {
    enable = true
  }
}

Untuk membuat health check regional, gunakan resource google_compute_region_health_check.

resource "google_compute_region_health_check" "default" {
  name               = "tcp-health-check-region-west"
  timeout_sec        = 5
  check_interval_sec = 5
  tcp_health_check {
    port = "80"
  }
  region = "us-west1"
}

Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.

API

Mengubah health check

Anda tidak dapat mengonversi health check ke health check lama (atau sebaliknya) dengan mengubah health check. Anda juga tidak dapat mengubah nama atau cakupan health check (misalnya, global menjadi regional).

Konsol

  1. Buka halaman Health checks di konsol Google Cloud.
    Buka halaman Health checks
  2. Klik pemeriksaan kesehatan untuk melihat detailnya.
  3. Jika Anda perlu mengubah pemeriksaan kesehatan, klik Edit, lalu:
    • Ubah parameter sesuai kebutuhan.
    • Klik Simpan.

gcloud

  1. Identifikasi nama dan cakupan health check. Untuk mengetahui petunjuknya, lihat Mencantumkan pemeriksaan kesehatan.

  2. Kecuali untuk nama, protokol, dan cakupan health check, Anda dapat mengubah flag umum, flag spesifikasi port, dan flag tambahan lainnya. Untuk mengubah health check yang ada, gunakan perintah perintah compute health-checks update yang sesuai. Untuk flag yang Anda hapus, setelan yang telah dikonfigurasi sebelumnya akan dipertahankan.

    • Contoh modifikasi health check global: Perintah berikut akan mengubah health check HTTP global bernama hc-http-port-80 dengan mengubah interval pemeriksaan, waktu tunggu, dan jalur permintaannya:

      gcloud compute health-checks update http hc-http-port-80 \
          --global \
          --check-interval=20s \
          --timeout=15s \
          --request-path="/health"
      
    • Contoh modifikasi health check regional: Perintah berikut akan mengubah health check TCP regional di us-west1 bernama hc-west1-tcp-ldap dengan mengubah spesifikasi port-nya:

      gcloud compute health-checks update tcp hc-west1-tcp-ldap \
          --region=us-west1 \
          --port=631
      

API

  1. Identifikasi nama dan cakupan health check. Lihat Mencantumkan pemeriksaan kesehatan untuk mengetahui petunjuknya.

  2. Kecuali untuk nama, protokol, dan cakupan health check, Anda dapat mengubah flag umum, flag spesifikasi port, dan flag tambahan lainnya dengan panggilan API ini. Gunakan panggilan API patch untuk mempertahankan setelan prekonfigurasi yang tidak ditetapkan secara eksplisit dalam permintaan.

Membuat daftar health check

Konsol

  1. Buka halaman Health checks di konsol Google Cloud.
    Buka halaman Health checks
  2. Klik pemeriksaan kesehatan untuk melihat detailnya.

gcloud

Untuk menampilkan daftar health check, gunakan perintah compute health-checks list:

  • Untuk membuat daftar health check global:

    gcloud compute health-checks list \
        --global
    
  • Untuk mencantumkan pemeriksaan kesehatan regional: Ganti REGION_LIST dengan daftar region Google Cloud yang dipisahkan koma untuk dikueri.

    gcloud compute health-checks list \
        --regions=REGION_LIST
    

Setelah Anda mengetahui nama dan cakupan health check, gunakan perintah compute health-checks describe untuk melihat konfigurasinya saat ini.

  • Untuk mendeskripsikan health check global, ganti NAME dengan namanya.

    gcloud compute health-checks describe NAME \
        --global
    
  • Untuk mendeskripsikan health check regional, ganti NAME dengan namanya dan REGION dengan region-nya.

    gcloud compute health-checks describe NAME \
        --region=REGION
    

API

Untuk mencantumkan pemeriksaan kesehatan, gunakan panggilan API ini:

Untuk mendeskripsikan konfigurasi health check saat ini, gunakan:

Flag tambahan

Bagian ini menjelaskan flag tambahan yang dapat Anda gunakan saat membuat atau mengubah health check. Beberapa flag, seperti spesifikasi port, harus ditetapkan menggunakan gcloud atau API.

Flag spesifikasi port

Jika membuat pemeriksaan kesehatan menggunakan Google Cloud CLI atau API, Anda memiliki dua opsi untuk menentukan port pemeriksaan kesehatan. Tabel berikut menunjukkan opsi spesifikasi port untuk kombinasi load balancer dan backend yang valid. Istilah grup instance mengacu pada grup instance tidak terkelola, grup instance terkelola zona, atau grup instance terkelola regional.

Setiap health check hanya dapat menggunakan satu jenis spesifikasi port.

Produk Jenis backend Opsi spesifikasi port
Load Balancer Jaringan passthrough eksternal Grup instance dan NEG yang didukung

--port: Menentukan port TCP berdasarkan nomor, dari 1 ke 65535

Flag --use-serving-port diabaikan untuk health check yang terkait dengan Load Balancer Jaringan passthrough internal karena layanan backend untuk load balancer ini tidak berlangganan port bernama. Hal ini karena load balancer ini adalah load balancer passthrough yang mengirimkan paket langsung ke backend, bukan membuat koneksi baru dari load balancer ke backend.

Kumpulan target Health check lama yang mendukung spesifikasi nomor port (--port).
Load Balancer Jaringan passthrough internal Grup instance dan NEG yang didukung

--port: Menentukan port TCP berdasarkan nomor, dari 1 ke 65535

Flag --use-serving-port diabaikan untuk health check yang terkait dengan Load Balancer Jaringan passthrough internal karena layanan backend untuk load balancer ini tidak berlangganan port bernama. Hal ini karena load balancer ini adalah load balancer passthrough yang mengirimkan paket langsung ke backend, bukan membuat koneksi baru dari load balancer ke backend.

Load Balancer Aplikasi eksternal global

Load Balancer Aplikasi Klasik

Load Balancer Aplikasi eksternal regional

Load Balancer Aplikasi internal lintas region

Load Balancer Aplikasi internal regional

Load Balancer Jaringan proxy eksternal global

Load Balancer Jaringan proxy klasik

Load Balancer Jaringan proxy eksternal regional

Load Balancer Jaringan proxy internal lintas region

Load Balancer Jaringan proxy internal regional

Cloud Service Mesh
NEG yang didukung
  • --port: Menentukan port TCP berdasarkan nomor, dari 1 ke 65535
  • --use-serving-port: Menggunakan port setiap endpoint dalam grup endpoint jaringan.
Grup instance
  • --port: Menentukan port TCP berdasarkan nomor, dari 1 ke 65535
  • --use-serving-port: Gunakan port bernama grup instance yang sama tempat layanan backend berlangganan.

Jika Anda menghapus spesifikasi port saat membuat health check, Google Cloud akan menggunakan default berikut:

  • Jika protokol health check adalah TCP atau HTTP, health check akan menggunakan --port=80.
  • Jika protokol health check adalah SSL, HTTPS, atau HTTP2, protokol tersebut akan menggunakan --port=443.
  • Jika protokol health check adalah GRPC, tidak ada default tersirat; Anda harus menyertakan spesifikasi port.

Flag tambahan untuk health check HTTP, HTTPS, dan HTTP/2

Selain flag umum dan spesifikasi port, Anda dapat menggunakan flag opsional berikut untuk pemeriksaan kesehatan HTTP, HTTPS, dan HTTP/2. Contoh ini membuat health check HTTP bernama hc-http-port-80 menggunakan port 80 dengan kriteria interval, waktu tunggu, dan nilai minimum kesehatan default.

gcloud compute health-checks create HTTP_PROTOCOL hc-http-port-80 \
    COMMON_FLAGS \
    PORT_SPECIFICATION \
    --host=HOST \
    --proxy-header=PROXY_HEADER \
    --request-path=REQUEST_PATH \
    --response=RESPONSE
  • HTTP_PROTOCOL: Dapat berupa http (HTTP/1.1 tanpa TLS), https (HTTP/1.1 dengan TLS), atau http2 (HTTP/2 dengan TLS).
  • COMMON_FLAGS: Menentukan flag umum. Lihat Prosedur pembuatan.
  • PORT_SPECIFICATION: Menentukan spesifikasi port menggunakan salah satu Flag spesifikasi port.
  • HOST memungkinkan Anda memberikan header HTTP Host. Jika dihilangkan, alamat IP aturan penerusan load balancer akan digunakan.
  • PROXY_HEADER harus berupa salah satu dari NONE atau PROXY_V1. Jika dihilangkan, Google Cloud akan menggunakan NONE. Nilai PROXY_V1 menambahkan header PROXY UNKNOWN\r\n.
  • REQUEST_PATH menentukan jalur URL yang digunakan Google Cloud saat mengirim permintaan pemeriksaan kesehatan. Jika dihilangkan, permintaan health check akan dikirim ke /.
  • RESPONSE menentukan respons yang diharapkan secara opsional. String respons harus mengikuti aturan berikut:
    • String respons harus terdiri dari huruf, angka, dan spasi ASCII.
    • Panjang string respons maksimal 1.024 karakter.
    • Pencocokan karakter pengganti tidak didukung.
    • Pemeriksaan berbasis konten tidak mendukung inversi; misalnya, operator seperti ! di HAProxy tidak didukung.

Jika Google Cloud menemukan string respons yang diharapkan di mana saja dalam 1.024 byte pertama isi respons yang diterima, dan jika status HTTP adalah 200 (OK), pemeriksaan dianggap berhasil.

Flag --request-path dan --response mengubah kriteria keberhasilan untuk probe health check.

Flag tambahan untuk health check SSL dan TCP

Selain flag umum dan spesifikasi port, Anda dapat menggunakan flag opsional berikut untuk health check SSL dan TCP. Contoh ini membuat health check TCP bernama hc-tcp-3268 menggunakan port 3268 dengan interval default, waktu tunggu, dan kriteria nilai minimum kesehatan.

gcloud compute health-checks create tcp hc-tcp-3268 \
    COMMON_FLAGS \
    PORT_SPECIFICATION \
    --proxy-header=PROXY_HEADER \
    --request=REQUEST_STRING \
    --response=RESPONSE_STRING
  • Protokol dapat berupa tcp (dalam contoh ini) atau ssl.
  • COMMON_FLAGS: Menentukan flag umum. Lihat Prosedur pembuatan.
  • PORT_SPECIFICATION: Menentukan spesifikasi port menggunakan salah satu Flag spesifikasi port.
  • PROXY_HEADER harus berupa salah satu dari NONE atau PROXY_V1. Jika dihilangkan, Google Cloud akan menggunakan NONE. Nilai PROXY_V1 menambahkan header PROXY UNKNOWN\r\n.
  • REQUEST_STRING: Anda dapat memberikan string, hingga 1.024 karakter ASCII, untuk dikirim setelah sesi TCP atau SSL dibuat.
  • RESPONSE_STRING: Anda dapat memberikan string, hingga 1.024 karakter ASCII, untuk respons yang diharapkan.

Flag --request dan --response mengubah kriteria keberhasilan untuk probe health check. Jika Anda menggunakan flag --response, baik sendiri atau bersama dengan flag --request, respons yang ditampilkan harus sama persis dengan string respons yang diharapkan.

Flag tambahan untuk health check gRPC

Server gRPC backend Anda harus menerapkan layanan kesehatan gRPC seperti yang dijelaskan dalam protokol pemeriksaan kesehatan gRPC. Google Cloud mengirimkan pesan HealthCheckRequest ke backend Anda dengan memanggil metode Check layanan kesehatan di backend Anda. Parameter layanan dalam permintaan ditetapkan ke string kosong kecuali jika nama layanan gRPC ditentukan.

Pemeriksaan kesehatan gRPC dapat memeriksa status layanan gRPC. Anda dapat menyertakan string, maksimal 1.024 karakter ASCII, yang merupakan nama layanan gRPC tertentu yang berjalan di VM atau NEG backend. Untuk melakukannya, gunakan flag opsional berikut untuk health check gRPC:

--grpc-service-name=GRPC_SERVICE_NAME

Misalnya, Anda mungkin memiliki layanan dan status berikut yang didaftarkan server backend dengan layanan gRPC Health backend Anda.

  • MyPackage.ServiceA dengan status penayangan SERVING
  • MyPackage.ServiceB dengan status penayangan NOT_SERVING
  • Nama layanan kosong dengan status penayangan NOT_SERVING

Jika Anda membuat health check terhadap MyPackage.ServiceA, seperti berikut, pemeriksaan health check akan menampilkan HEALTHY, karena status layanan adalah SERVING.

gcloud beta compute health-checks create grpc MyGrpcHealthCheckServiceA \
    --grpc-service-name=MyPackage.ServiceA

Jika Anda membuat health check terhadap MyPackage.ServiceB, pemeriksaan health check akan menampilkan UNHEALTHY karena status layanannya adalah NOT_SERVING.

Jika Anda membuat health check terhadap MyPackage.ServiceC, yang tidak terdaftar dengan layanan gRPC Health, pemeriksaan health check akan menampilkan status gRPC NOT_FOUND, yang setara dengan UNHEALTHY.

Jika Anda membuat health check terhadap nama layanan kosong, probe health check akan menampilkan status UNHEALTHY, karena nama layanan kosong terdaftar dengan status NOT_SERVING.

Health check lama

Bagian ini menjelaskan cara membuat, mengubah, dan mencantumkan health check HTTP dan HTTPS lama. Anda tidak dapat mengonversi health check lama menjadi health check, dan Anda tidak dapat mengonversi health check menjadi health check lama.

Untuk mempelajari jenis load balancer yang mendukung health check lama, lihat Panduan load balancer.

Membuat health check lama

Konsol

Meskipun halaman pemeriksaan kesehatan di konsol Google Cloud mencantumkan dan memungkinkan Anda mengedit pemeriksaan kesehatan dan pemeriksaan kesehatan lama, Anda tidak dapat create pemeriksaan kesehatan lama baru dari halaman pemeriksaan kesehatan di konsol Google Cloud.

Anda dapat membuat pemeriksaan kesehatan lama di konsol Google Cloud hanya saat membuat Load Balancer Jaringan passthrough eksternal berbasis kumpulan target. Untuk membuat health check lama itu sendiri, gunakan petunjuk gcloud atau API di bagian ini.

gcloud

Untuk membuat health check lama, gunakan perintah compute http-health-checks create:

gcloud compute LEGACY_CHECK_TYPE create NAME \
    --description=DESCRIPTION \
    --check-interval=CHECK_INTERVAL \
    --timeout=TIMEOUT \
    --healthy-threshold=HEALTHY_THRESHOLD \
    --unhealthy-threshold=UNHEALTHY_THRESHOLD \
    --host=HOST \
    --port=PORT \
    --request-path=REQUEST_PATH

Ganti kode berikut:

  • LEGACY_CHECK_TYPE adalah http-health-checks untuk health check HTTP lama atau https-health-checks untuk health check HTTPS lama. Jika membuat health check lama untuk Load Balancer Jaringan passthrough eksternal berbasis kumpulan target, Anda harus menggunakan http-health-checks.
  • NAME adalah nama health check lama. Dalam project tertentu, setiap health check lama harus memiliki nama yang unik.
  • DESCRIPTION adalah deskripsi opsional.
  • CHECK_INTERVAL adalah jumlah waktu dari awal satu pemeriksaan hingga awal pemeriksaan berikutnya. Unit dalam hitungan detik. Jika dihilangkan, Google Cloud akan menggunakan nilai 5s (5 detik).
  • TIMEOUT adalah jumlah waktu yang diperlukan Google Cloud untuk menunggu respons atas pemeriksaan. Nilai TIMEOUT harus kurang dari atau sama dengan CHECK_INTERVAL. Unit dalam hitungan detik. Jika dihilangkan, Google Cloud akan menggunakan nilai 5s (5 detik).
  • HEALTHY_THRESHOLD dan UNHEALTHY_THRESHOLD menentukan jumlah pemeriksaan berurutan yang harus berhasil atau gagal agar instance VM dianggap responsif atau tidak responsif. Jika salah satunya dihilangkan, Google Cloud akan menggunakan nilai minimum default 2.
  • HOST memungkinkan Anda memberikan header HTTP host. Jika dihilangkan, alamat IP aturan penerusan load balancer akan digunakan.
  • PORT memungkinkan Anda memberikan nomor port. Jika dihilangkan, Google Cloud akan menggunakan 80.
  • REQUEST_PATH menentukan jalur URL yang digunakan Google Cloud saat mengirim permintaan health check. Jika dihilangkan, permintaan health check akan dikirim ke /.

API

Terraform

Mengubah health check lama

Konsol

  1. Buka halaman Health checks di konsol Google Cloud.
    Buka halaman Health checks
  2. Klik pemeriksaan kesehatan untuk melihat detailnya.
  3. Klik Edit , buat perubahan, lalu klik Simpan.

gcloud

  • Untuk mengubah health check HTTP lama, gunakan perintah compute http-health-checks update, dengan mengganti NAME dengan namanya. Saat mengubah pemeriksaan kesehatan lama dengan gcloud, setelan yang telah dikonfigurasi sebelumnya untuk flag yang Anda hapus akan dipertahankan. OTHER_OPTIONS adalah opsi yang dijelaskan dalam membuat health check lama.

    gcloud compute http-health-checks update NAME \
      OTHER_OPTIONS
    
  • Untuk mengubah health check HTTPS lama, gunakan perintah compute https-health-checks update, dengan mengganti NAME dengan namanya. Saat mengubah pemeriksaan kesehatan lama dengan gcloud, setelan yang telah dikonfigurasi sebelumnya untuk flag yang Anda hapus akan dipertahankan. OTHER_OPTIONS adalah opsi yang dijelaskan dalam membuat health check lama.

    gcloud compute https-health-checks update NAME \
      OTHER_OPTIONS
    

API

Kecuali untuk nama dan jenis health check lama, Anda dapat mengubah flag yang digunakan untuk pembuatannya. Panggilan API patch mempertahankan setelan yang telah dikonfigurasi sebelumnya yang tidak ditetapkan secara eksplisit dalam permintaan patch.

Membuat daftar health check lama

Konsol

  1. Buka halaman Health checks di konsol Google Cloud.
    Buka halaman Health checks
  2. Klik pemeriksaan kesehatan lama untuk melihat detailnya.

gcloud

  1. Untuk mencantumkan health check HTTP lama, gunakan perintah compute http-health-checks list:

    gcloud compute http-health-checks list
    

    Untuk mencantumkan health check HTTPS lama, gunakan perintah compute https-health-checks list:

    gcloud compute https-health-checks list
    
  2. Untuk mendeskripsikan health check HTTP lama, gunakan perintah compute http-health-checks describe, dan ganti NAME dengan namanya.

    gcloud compute http-health-checks describe NAME
    

    Untuk mendeskripsikan health check HTTPS lama, gunakan perintah compute https-health-checks describe, dengan mengganti NAME dengan namanya.

    gcloud compute https-health-checks describe NAME
    

API

  1. Untuk membuat daftar health check lama:

  2. Untuk mendeskripsikan health check lama:

Membuat aturan firewall yang diperlukan

Anda perlu membuat aturan firewall masuk yang berlaku untuk semua VM yang di-load balance untuk mengizinkan traffic dari rentang IP prober health check. Contoh berikut membuat aturan firewall yang berlaku untuk instance VM yang diidentifikasi oleh tag target tertentu.

Contoh ini mengizinkan semua traffic TCP dari sistem health check Google Cloud ke instance VM Anda. (Traffic TCP mencakup traffic SSL, HTTP, HTTPS, dan HTTP/2.) Jika mau, Anda dapat menentukan port beserta protokol TCP; tetapi, jika Anda menentukan port, aturan firewall Anda mungkin menjadi spesifik untuk health check tertentu. Jika Anda menggunakan tcp:80 untuk protokol dan port, tindakan ini akan mengizinkan traffic TCP di port 80, sehingga Google Cloud dapat menghubungi VM Anda menggunakan HTTP di port 80, tetapi tidak dapat menghubungi VM menggunakan HTTPS di port 443.

Konsol

  1. Pada konsol Google Cloud, buka halaman Kebijakan Firewall.
    Buka Kebijakan firewall
  2. Klik Create firewall rule.
  3. Di halaman Buat aturan firewall, berikan informasi berikut:
    • Nama: Berikan nama untuk aturan. Untuk contoh ini, gunakan fw-allow-health-checks.
    • Network: Pilih jaringan VPC.
    • Prioritas: Masukkan angka untuk prioritas. Angka yang lebih rendah memiliki prioritas yang lebih tinggi. Pastikan aturan firewall memiliki prioritas yang lebih tinggi daripada aturan lain yang mungkin menolak traffic masuk.
    • Direction of traffic: Pilih ingress.
    • Action on match: Pilih allow.
    • Target: Pilih Tag target yang ditentukan, lalu masukkan tag di kolom Tag target. Untuk contoh ini, gunakan allow-health-checks.
    • Source filter: Pilih IP ranges.
    • Rentang IP sumber: Masukkan rentang IP sumber, bergantung pada jenis load balancer, jenis traffic, dan jenis health check Anda. Lihat Memeriksa aturan firewall dan rentang IP.
    • Protokol dan port yang diizinkan: Gunakan tcp dan port yang dikonfigurasi di health check Anda. TCP adalah protokol dasar untuk semua protokol health check.
    • Klik Create.
  4. Pada setiap instance yang di-load balance, tambahkan tag jaringan sehingga aturan firewall masuk baru ini berlaku untuk instance tersebut. Contoh ini menggunakan allow-health-checks untuk tag jaringan.

gcloud

  1. Gunakan perintah gcloud berikut untuk membuat aturan firewall bernama fw-allow-health-checks yang mengizinkan koneksi TCP masuk, dari sistem health check Google Cloud, ke instance di jaringan VPC Anda dengan tag allow-health-checks. Berdasarkan jenis load balancer, kumpulan rentang IP probe dan aturan firewall yang berbeda didukung untuk traffic IPv6 ke backend.

    Ganti NETWORK_NAME dengan nama jaringan VPC Anda dan ganti PORT dengan port yang digunakan oleh load balancer Anda.

    gcloud compute firewall-rules create fw-allow-health-checks \
        --network=NETWORK_NAME \
        --action=ALLOW \
        --direction=INGRESS \
        --source-ranges=SOURCE_IP_RANGE \
        --target-tags=allow-health-checks \
        --rules=tcp:PORT

    Nilai untuk SOURCE_IP_RANGE bergantung pada jenis load balancer, jenis traffic, dan jenis health check Anda. Lihat Memeriksa aturan firewall dan rentang IP.

  2. Pada setiap instance yang di-load balance, tambahkan tag jaringan sehingga aturan firewall masuk baru ini berlaku untuk instance tersebut. Contoh ini menggunakan allow-health-checks untuk tag jaringan.

Lihat dokumentasi aturan firewall gcloud dan dokumentasi API untuk mengetahui detail selengkapnya.

Dokumentasi terkait:

  • Untuk mengetahui informasi selengkapnya tentang cara menentukan target untuk aturan firewall, lihat penjelasan target di Ringkasan Aturan Firewall dan Mengonfigurasi tag jaringan.
  • Untuk mengetahui informasi selengkapnya tentang semua aturan firewall yang diperlukan oleh load balancer, lihat Aturan firewall.

Mengaitkan health check dengan load balancer

Jika Anda belum melakukannya, tinjau Ringkasan health check: Memilih health check.

Untuk mengaitkan health check dengan load balancer baru, lihat panduan penyiapan untuk load balancer masing-masing. Bagian ini menjelaskan cara mengaitkan health check dengan layanan backend load balancer yang ada.

Bagian ini mengasumsikan bahwa Anda telah:

Konsol

Untuk mengaitkan health check dengan load balancer yang ada:

  1. Buka halaman Load balancing di Konsol Google Cloud.
    Buka halaman Load balancing
  2. Klik load balancer untuk melihat detailnya.
  3. Klik Edit , lalu klik Backend configuration.
  4. Pilih health check dari menu Health check.
  5. Klik Perbarui.

gcloud

Untuk mengaitkan pemeriksaan kesehatan dengan layanan backend yang ada, ikuti langkah-langkah berikut.

  1. Identifikasi nama dan cakupan layanan backend. Load Balancer Jaringan passthrough dan Load Balancer Jaringan proxy hanya memiliki satu layanan backend per load balancer. Load Balancer Aplikasi memiliki satu atau beberapa layanan backend yang terkait dengan satu peta URL.

    • Untuk mencantumkan layanan backend untuk Load Balancer Jaringan passthrough internal, jalankan perintah berikut.

      gcloud compute backend-services list \
          --region=REGION \
          --filter="loadBalancingScheme=INTERNAL"
      
    • Untuk mencantumkan layanan backend untuk Load Balancer Jaringan passthrough eksternal, jalankan perintah berikut.

      gcloud compute backend-services list \
          --region=REGION \
          --filter="loadBalancingScheme=EXTERNAL"
      
    • Untuk mencantumkan layanan backend untuk Load Balancer Jaringan proxy eksternal global, jalankan perintah berikut.

      gcloud compute backend-services list \
          --global \
          --filter="loadBalancingScheme=EXTERNAL_MANAGED" \
          --filter="protocol=(SSL,TCP)"
      
    • Untuk menampilkan layanan backend untuk Load Balancer Jaringan proxy klasik, jalankan perintah berikut.

      gcloud compute backend-services list \
          --global \
          --filter="loadBalancingScheme=EXTERNAL" \
          --filter="protocol=(SSL,TCP)"
      
    • Untuk mencantumkan layanan backend untuk Load Balancer Jaringan proxy internal lintas region, jalankan perintah berikut.

      gcloud compute backend-services list \
          --global \
          --filter="loadBalancingScheme=INTERNAL_MANAGED" \
          --filter="protocol=(SSL,TCP)"
      
    • Untuk mencantumkan layanan backend untuk Load Balancer Jaringan proxy eksternal regional, jalankan perintah berikut.

      gcloud compute backend-services list \
          --region=REGION \
          --filter="loadBalancingScheme=EXTERNAL_MANAGED" \
          --filter="protocol=(SSL,TCP)"
      
    • Untuk mencantumkan layanan backend untuk Load Balancer Jaringan proxy internal regional, jalankan perintah berikut.

      gcloud compute backend-services list \
          --region=REGION \
          --filter="loadBalancingScheme=INTERNAL_MANAGED" \
          --filter="protocol=(SSL,TCP)"
      
    • Untuk mengidentifikasi layanan backend untuk Load Balancer Aplikasi eksternal global, Load Balancer Aplikasi klasik, dan Load Balancer Aplikasi internal lintas-region, identifikasi peta URL terlebih dahulu, lalu deskripsikan peta tersebut. Peta URL dan layanan backend untuk load balancer ini selalu bersifat global, terlepas dari Tingkat Layanan Jaringan. Ganti URL_MAP_NAME dengan nama peta URL. Layanan backend yang digunakan oleh load balancer tercantum dalam respons.

      gcloud compute url-maps list \
          --global
      
      gcloud compute url-maps describe URL_MAP_NAME \
          --global
      
    • Untuk mengidentifikasi layanan backend bagi Load Balancer Aplikasi eksternal regional atau Load Balancer Aplikasi internal regional, identifikasi peta URL terlebih dahulu, lalu deskripsikan peta tersebut. Peta URL dan layanan backend untuk load balancer ini bersifat regional. Ganti REGION_LIST dengan daftar region Google Cloud yang dipisahkan koma untuk dikueri. Ganti URL_MAP_NAME dengan nama peta URL dan REGION dengan region-nya. Layanan backend yang digunakan oleh load balancer tercantum dalam respons.

      gcloud compute url-maps list \
          --regions=REGION_LIST
      
      gcloud compute url-maps describe URL_MAP_NAME \
          --region=REGION
      
  2. Identifikasi health check. Lihat Mencantumkan health check.

  3. Kaitkan health check dengan layanan backend menggunakan perintah compute backend-services update. Setiap layanan backend harus mereferensikan satu health check. Dalam perintah berikut, ganti BACKEND_SERVICE_NAME dengan nama layanan backend, HEALTH_CHECK_NAME dengan nama health check, dan, jika perlu, REGION dengan region Google Cloud untuk layanan backend, health check, atau keduanya.

    • Untuk mengubah health check untuk Load Balancer Jaringan passthrough internal: Layanan backend Load Balancer Jaringan passthrough internal bersifat regional. Health check ini dapat mereferensikan health check global atau regional. Contoh berikut menunjukkan referensi health check regional. Jika Anda menggunakan health check global dengan Load Balancer Jaringan passthrough internal, gunakan --global-health-checks, bukan --health-checks-region.

      gcloud compute backend-services update BACKEND_SERVICE_NAME \
          --region=REGION \
          --health-checks=HEALTH_CHECK_NAME \
          --health-checks-region=REGION
      
    • Untuk mengubah health check untuk Load Balancer Jaringan passthrough eksternal berbasis layanan backend: Layanan backend Load Balancer Jaringan passthrough eksternal bersifat regional. Health check ini dapat mereferensikan health check regional.

      gcloud compute backend-services update BACKEND_SERVICE_NAME \
          --region=REGION \
          --health-checks=HEALTH_CHECK_NAME \
          --health-checks-region=REGION
      
    • Untuk mengubah health check untuk Load Balancer Jaringan proxy eksternal global, Load Balancer Jaringan proxy klasik, Load Balancer Aplikasi eksternal global, Load Balancer Aplikasi klasik, atau Load Balancer Aplikasi internal lintas-region: Layanan backend dan health check bersifat global untuk load balancer ini. Load Balancer Aplikasi dapat mereferensikan lebih dari satu health check jika mereferensikan lebih dari satu layanan backend.

      gcloud compute backend-services update BACKEND_SERVICE_NAME \
          --global \
          --health-checks HEALTH_CHECK_NAME \
          --global-health-checks
      
    • Untuk mengubah health check untuk Load Balancer Aplikasi eksternal regional, Load Balancer Jaringan proxy eksternal regional, Load Balancer Aplikasi internal regional, atau Load Balancer Jaringan proxy internal regional: Layanan backend dan health check bersifat regional. Beberapa load balancer mungkin mereferensikan lebih dari satu health check jika dapat mereferensikan lebih dari satu layanan backend.

      gcloud compute backend-services update BACKEND_SERVICE_NAME \
          --region=REGION \
          --health-checks=HEALTH_CHECK_NAME \
          --health-checks-region=REGION
      

API

  1. Anda dapat mencantumkan layanan backend dengan panggilan API backendServices.list.

  2. Lihat health check.

  3. Untuk mengaitkan pemeriksaan kesehatan dengan layanan backend, gunakan salah satu panggilan API berikut:

Mengaitkan health check lama dengan Load Balancer Jaringan passthrough eksternal berbasis kumpulan target

Untuk mengaitkan health check lama dengan Load Balancer Jaringan passthrough eksternal baru, lihat Menyiapkan Load Balancer Jaringan passthrough eksternal dengan kumpulan target. Bagian ini menjelaskan cara mengaitkan health check lama dengan Load Balancer Jaringan passthrough eksternal berbasis kumpulan target.

Bagian ini mengasumsikan bahwa Anda telah:

Konsol

Untuk mengaitkan health check dengan Load Balancer Jaringan passthrough eksternal berbasis kumpulan target yang ada:

  1. Buka halaman Load balancing di Konsol Google Cloud.
    Buka halaman Load balancing
  2. Klik load balancer untuk melihat detailnya.
  3. Klik Edit , lalu klik Backend configuration.
  4. Pilih health check lama dari menu Health check. (Hanya health check lama yang memenuhi syarat yang ditampilkan.)
  5. Klik Perbarui.

gcloud

Untuk mengaitkan health check dengan Load Balancer Jaringan passthrough eksternal berbasis kumpulan target yang ada:

  1. Identifikasi kumpulan target. Load Balancer Jaringan passthrough eksternal memiliki minimal satu kumpulan target, dan mungkin memiliki kumpulan cadangan sekunder.

    gcloud compute target-pools list
    
  2. Identifikasi health check lama menggunakan protokol HTTP. Lihat pemeriksaan kesehatan lama jika perlu.

  3. Kaitkan health check lama dengan kumpulan target. Dalam perintah berikut, ganti TARGET_POOL_NAME dengan nama kumpulan target, REGION dengan region-nya, dan LEGACY_CHECK_NAME dengan nama pemeriksaan kesehatan lama. Health check lama harus menggunakan protokol HTTP.

    • Untuk menghapus health check HTTP lama dari kumpulan target:

      gcloud compute target-pools remove-health-checks TARGET_POOL_NAME \
          --region=REGION \
          --http-health-check LEGACY_CHECK_NAME
      
    • Untuk menambahkan health check HTTP lama ke kumpulan target:

      gcloud compute target-pools add-health-checks TARGET_POOL_NAME \
          --region=REGION \
          --http-health-check LEGACY_CHECK_NAME
      

API

  1. Anda dapat mencantumkan kumpulan target dengan panggilan API targetPools.list.

  2. Lihat health check lama dan identifikasi health check HTTP lama.

  3. Untuk mengaitkan health check HTTP lama dengan kumpulan target, gunakan panggilan API targetPools.addHealthCheck.

Memeriksa status health check

Setelah mengaitkan health check dengan layanan backend atau kumpulan target, Anda dapat mendapatkan status health check instan untuk backend load balancer.

Konsol

  1. Buka halaman ringkasan load balancing.
    Buka halaman Load balancing
  2. Klik nama load balancer.
  3. Di bagian Backend, periksa kolom Healthy. Status kondisi dilaporkan untuk setiap grup instance backend atau grup endpoint jaringan.

gcloud

  • Untuk semua load balancer kecuali Load Balancer Jaringan passthrough eksternal berbasis kumpulan target, identifikasi nama dan cakupan (global atau regional) layanan backend. Untuk mengetahui daftar lengkap load balancer dan cakupan, lihat Layanan backend.

    Gunakan perintah compute backend-services get-health, ganti NAME dengan nama layanan backend, dan REGION dengan region-nya, jika diperlukan.

    • Untuk mendapatkan status responsivitas instan layanan backend global:

      gcloud compute backend-services get-health GLOBAL_BACKEND_SERVICE_NAME \
          --global
      
    • Untuk mendapatkan status responsivitas instan layanan backend regional:

      gcloud compute backend-services get-health REGIONAL_BACKEND_SERVICE_NAME \
          --region=REGION
      
  • Untuk Load Balancer Jaringan passthrough eksternal berbasis kumpulan target, identifikasi nama dan region kumpulan target load balancer, lalu gunakan perintah compute target-pools get-health, yang mengganti NAME dengan nama kumpulan target, dan REGION dengan region-nya.

    gcloud compute target-pools get-health TARGET_POOL_NAME \
        --region=REGION
    

API

  • Untuk semua load balancer kecuali Load Balancer Jaringan passthrough eksternal berbasis kumpulan target, identifikasi nama dan cakupan (global atau regional) layanan backend. Untuk mengetahui daftar lengkap load balancer dan cakupan, lihat Layanan backend.

  • Untuk Load Balancer Jaringan passthrough eksternal berbasis kumpulan target, gunakan targetPools.getHealth