Google Cloud menyediakan mekanisme health check yang menentukan apakah backend merespons traffic dengan benar. Dokumen ini menjelaskan cara membuat dan menggunakan health check untuk load balancers dan Traffic Director.
Halaman ini mengasumsikan bahwa Anda telah memahami konsep berikut:
Membuat health check
Dengan Google Cloud, Anda dapat membuat atau memilih health check setelah 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 health check menggunakan Konsol Google Cloud, Google Cloud CLI, atau REST API.
Konsol
- Buka halaman Health check di Konsol Google Cloud.
Buka halaman Health check - Klik Buat health check.
- Di halaman Membuat health check, berikan informasi berikut:
- Nama: Beri nama untuk health check.
- Deskripsi: Jika perlu, berikan deskripsi.
- Cakupan: Pilih cakupan, Global atau Regional, bergantung pada jenis load balancer.
- Jika Anda memilih Regional, pilih Region dari drop-down.
- Protocol: Pilih sebuah protokol health check.
- Port: Berikan nomor port. Saat membuat health check 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 pemeriksaan health check.
- Jalur permintaan dan Respons: Untuk protokol HTTP, HTTPS, dan HTTP2, Anda dapat secara opsional memberikan jalur URL untuk dihubungi sistem pemeriksaan health. Untuk informasi selengkapnya, lihat Flag tambahan untuk health check HTTP, HTTPS, dan HTTP/2.
- Request dan Response: Untuk protcol 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: Tentukan jumlah waktu dari awal satu pemeriksaan hingga awal pemeriksaan berikutnya.
- Waktu tunggu: Menentukan jumlah waktu yang diperlukan Google Cloud untuk menunggu respons terhadap pemeriksaan. Nilainya harus kurang dari atau sama dengan interval pemeriksaan.
- Batas respons yang responsif: Menentukan jumlah pemeriksaan berurutan yang harus berhasil agar instance VM dianggap responsif.
- Batas tidak responsif: Tentukan jumlah pemeriksaan berurutan yang harus gagal agar instance VM dianggap tidak responsif.
- 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 adalahgrpc
,http
,https
,http2
,ssl
, dantcp
.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
: Semua load balancer, kecuali untuk Load Balancer Aplikasi eksternal regional dan Load Balancer Aplikasi internal regional, menggunakan health check global (--global
). Load Balancer Aplikasi internal regional menggunakan health check regional yang regionnya harus cocok dengan region layanan backend.DESCRIPTION
adalah deskripsi opsional.CHECK_INTERVAL
adalah jumlah waktu sejak awal satu koneksi sistem pemeriksaan kesehatan hingga awal yang berikutnya. Unit adalah detik. Jika dihilangkan, Google Cloud akan menggunakan nilai5s
(5 detik).TIMEOUT
adalah jumlah waktu yang dibutuhkan Google Cloud untuk menunggu respons terhadap pemeriksaan. NilaiTIMEOUT
harus kurang dari atau sama denganCHECK_INTERVAL
. Unit dalam hitungan detik. Jika dihilangkan, Google Cloud akan menggunakan nilai5s
(5 detik).HEALTHY_THRESHOLD
danUNHEALTHY_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 default2
.PORT_SPECIFICATION
: Menentukan spesifikasi port menggunakan salah satu Flag spesifikasi port.ADDITIONAL_FLAGS
adalah flag lain untuk menentukan port dan opsi khusus untukPROTOCOL
. 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
.
Untuk membuat health check regional, gunakan resource google_compute_region_health_check.
Untuk mempelajari cara menerapkan atau menghapus konfigurasi Terraform, lihat Perintah dasar Terraform.
API
Untuk membuat health check global, gunakan healthChecks.insert
Untuk membuat health check regional, gunakan regionHealthChecks.insert
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
- Buka halaman Health check di Konsol Google Cloud.
Buka halaman Health check - Klik health check untuk melihat detailnya.
- Jika Anda perlu mengubah health check, klik Edit, lalu:
- Buat perubahan pada parameter yang diperlukan.
- Klik Save.
gcloud
Mengidentifikasi nama dan cakupan health check. Untuk mengetahui petunjuknya, lihat Mencantumkan health check.
Kecuali untuk nama, protokol, dan cakupan health check, Anda dapat mengubah salah satu flag umum, tanda spesifikasi port, dan flag tambahan lainnya. Untuk mengubah health check yang ada, gunakan perintah perintah
compute health-checks update
yang sesuai. Untuk tanda yang Anda hapus, setelan yang telah dikonfigurasi sebelumnya akan dipertahankan.Contoh modifikasi health check global: Perintah berikut 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 mengubah health check TCP regional di
us-west1
bernamahc-west1-tcp-ldap
dengan mengubah spesifikasi port-nya:gcloud compute health-checks update tcp hc-west1-tcp-ldap \ --region=us-west1 \ --port=631
API
Mengidentifikasi nama dan cakupan health check. Lihat Mencantumkan health check untuk mengetahui petunjuknya.
Kecuali untuk nama, protokol, dan cakupan health check, Anda dapat mengubah salah satu flag umum, tanda spesifikasi port, dan flag tambahan lainnya dengan panggilan API ini. Gunakan panggilan API
patch
untuk mempertahankan setelan apa pun yang telah dikonfigurasi sebelumnya yang tidak secara eksplisit ditetapkan dalam permintaan.Untuk mengubah health check global, gunakan healthChecks.update atau healthChecks.patch.
Untuk mengubah health check regional, gunakan regionHealthChecks.update atau regionHealthChecks.patch.
Membuat daftar health check
Konsol
- Buka halaman Health check di Konsol Google Cloud.
Buka halaman Health check - Klik health check untuk melihat detailnya.
gcloud
Untuk menampilkan daftar health check, gunakan perintah compute health-checks
list
:
Untuk mencantumkan health check global:
gcloud compute health-checks list \ --global
Untuk mencantumkan health check regional: Ganti
REGION_LIST
dengan daftar region Google Cloud yang dipisahkan koma untuk membuat kueri.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 danREGION
dengan region-nya.gcloud compute health-checks describe NAME \ --region=REGION
API
Untuk mencantumkan health check, gunakan panggilan API ini:
Untuk mencantumkan health check global: healthChecks.list
Untuk mencantumkan health check regional: regionHealthChecks.list
Untuk menjelaskan konfigurasi health check saat ini, gunakan panggilan API berikut:
Untuk menjelaskan health check global: healthChecks.get
Untuk mendeskripsikan health check regional: regionHealthChecks.get
Tanda 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 health check menggunakan Google Cloud CLI atau API, Anda memiliki dua opsi untuk menentukan port health check. Tabel berikut menunjukkan opsi spesifikasi port untuk kombinasi backend dan load balancer yang valid. Istilah grup instance mengacu pada grup instance yang tidak dikelola, grup instance terkelola zona, atau grup instance terkelola regional.
Setiap health check hanya dapat menggunakan satu jenis spesifikasi port.
Produk | Backend type | Opsi spesifikasi port |
---|---|---|
Load Balancer Jaringan passthrough eksternal | Grup instance | • --port : Menentukan port TCP berdasarkan nomor, dari 1 hingga 65535 Flag --use-serving-port akan diabaikan untuk health check yang terkait dengan Load Balancer Jaringan passthrough eksternal karena layanan backend untuk Load Balancer Jaringan passthrough eksternal tidak memiliki spesifikasi port.
|
Load Balancer Jaringan passthrough internal | Grup instance | • --port : Menentukan port TCP berdasarkan nomor, dari 1 hingga 65535 Flag --use-serving-port akan diabaikan untuk health check yang terkait dengan Load Balancer Jaringan passthrough internal karena layanan backend untuk Load Balancer Jaringan passthrough internal tidak memiliki spesifikasi port.
|
Load Balancer Aplikasi eksternal global 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 eksternal regional Load Balancer Jaringan Proxy internal regional Load Balancer Internal Proxy Jaringan region 0 Load Balancer internal lintas region |
NEGARA ZONA | • --port : Menentukan port TCP berdasarkan nomor, dari 1
hingga 65535 • --use-serving-port : Gunakan port setiap endpoint di
grup endpoint jaringan. |
Grup instance | • --port : Menentukan port TCP berdasarkan nomor, dari 1
hingga 65535 • --use-serving-port : Gunakan port bernama grup instance yang sama
yang berlangganan layanan backend.
|
Jika Anda menghapus spesifikasi port, Google Cloud akan menggunakan default berikut:
- Jika protokol health check adalah
TCP
atauHTTP
, protokol tersebut akan menggunakan--port=80
. - Jika protokol health check adalah
SSL
,HTTPS
, atauHTTP2
, protokol tersebut akan menggunakan--port=443
. - Jika protokol health check adalah
GRPC
, tidak ada default tersirat; Anda harus menyertakan spesifikasi port.
Tanda tambahan untuk health check HTTP, HTTPS, dan HTTP/2
Selain tanda umum dan spesifikasi port, Anda dapat menggunakan
tanda opsional berikut untuk health check 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 batas kondisi 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 berupahttp
(HTTP/1.1 tanpa TLS),https
(HTTP/1.1 dengan TLS), atauhttp2
(HTTP/2 dengan TLS).COMMON_FLAGS
: Mendefinisikan flag umum. Lihat Prosedur pembuatan.PORT_SPECIFICATION
: Menentukan spesifikasi port menggunakan salah satu Flag spesifikasi port.HOST
memungkinkan Anda menyediakan header HTTPHost
. Jika dihilangkan, alamat IP dari aturan penerusan load balancer akan digunakan.PROXY_HEADER
harus salah satu dariNONE
atauPROXY_V1
. Jika dihilangkan, Google Cloud akan menggunakanNONE
. NilaiPROXY_V1
menambahkan headerPROXY UNKNOWN\r\n
.REQUEST_PATH
menentukan jalur URL yang digunakan Google Cloud saat mengirim permintaan health check. Jika dihilangkan, permintaan health check akan dikirim ke/
.RESPONSE
menentukan respons yang diharapkan opsional. String respons harus mengikuti aturan berikut:- String respons harus terdiri dari huruf ASCII, angka, dan spasi.
- Panjang string respons dapat mencapai 1.024 karakter.
- Pencocokan karakter pengganti tidak didukung.
- Pemeriksaan berbasis konten tidak mendukung inversi; misalnya, operator
seperti
!
dalam HAProxy tidak didukung.
Jika Google Cloud menemukan string respons yang diharapkan di mana saja dalam 1.024 byte pertama dari isi respons yang diterima, dan jika status HTTP-nya adalah 200 (OK), pemeriksaan dianggap berhasil.
Flag --request-path
dan --response
akan mengubah kriteria keberhasilan untuk pemeriksaan health check.
Tanda tambahan untuk health check SSL dan TCP
Selain tanda umum dan spesifikasi port, Anda dapat menggunakan
tanda opsional berikut untuk health check SSL dan TCP. Contoh ini membuat health check TCP bernama hc-tcp-3268
menggunakan port 3268 dengan kriteria batas kondisi, waktu tunggu, dan interval default.
gcloud compute health-checks create tcp hc-tcp-3268 \ COMMON_FLAGS \ PORT_SPECIFICATION \ --proxy-header=PROXY_HEADER \ --request=REQUEST_STRING \ --response=RESPONSE_STRING
- Protokolnya dapat berupa
tcp
(dalam contoh ini) ataussl
. COMMON_FLAGS
: Mendefinisikan flag umum. Lihat Prosedur pembuatan.PORT_SPECIFICATION
: Menentukan spesifikasi port menggunakan salah satu Flag spesifikasi port.PROXY_HEADER
harus salah satu dariNONE
atauPROXY_V1
. Jika dihilangkan, Google Cloud akan menggunakanNONE
. NilaiPROXY_V1
menambahkan headerPROXY UNKNOWN\r\n
.REQUEST_STRING
: Anda dapat menyediakan string dengan panjang hingga 1.024 karakter ASCII, untuk dikirim setelah sesi TCP atau SSL dibuat.RESPONSE_STRING
: Anda dapat memberikan string dengan panjang hingga 1.024 karakter ASCII, untuk respons yang diharapkan.
Flag --request
dan --response
akan mengubah kriteria keberhasilan untuk pemeriksaan health check. Jika Anda menggunakan flag --response
, baik dengan tanda itu sendiri maupun bersama dengan tanda --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 kondisi gRPC seperti yang dijelaskan dalam
protokol health check gRPC.
Google Cloud mengirimkan pesan HealthCheckRequest
ke backend Anda dengan
memanggil metode Check
dari layanan kesehatan di backend Anda. Parameter
layanan dalam permintaan ditetapkan ke string kosong kecuali jika nama layanan gRPC
ditentukan.
Health check gRPC dapat memeriksa status layanan gRPC. Anda dapat menyertakan string, dengan panjang hingga 1.024 karakter ASCII, yang merupakan nama layanan gRPC tertentu yang berjalan pada VM backend atau NEG. 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 penayanganSERVING
MyPackage.ServiceB
dengan status penayanganNOT_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 layanan 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, pemeriksaan health check akan menampilkan status UNHEALTHY
, karena nama layanan kosong didaftarkan 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 health check konsol Google Cloud mencantumkan dan memungkinkan Anda mengedit health check dan health check lama, Anda tidak dapat membuat health check lama yang baru dari halaman health check Konsol Google Cloud.
Anda dapat membuat health check lama di Konsol Google Cloud hanya saat membuat Load Balancer Jaringan passthrough eksternal berbasis kumpulan target.
Untuk membuat health check lama dengan sendirinya, 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
adalahhttp-health-checks
untuk health check HTTP lama atauhttps-health-checks
untuk health check HTTPS lama. Jika Anda membuat health check lama untuk Load Balancer Jaringan passthrough eksternal berbasis kumpulan target, Anda harus menggunakanhttp-health-checks
.NAME
adalah nama health check lama. Dalam project tertentu, setiap health check lama harus memiliki nama 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 nilai5s
(5 detik).TIMEOUT
adalah jumlah waktu saat Google Cloud akan menunggu respons terhadap pemeriksaan. NilaiTIMEOUT
harus kurang dari atau sama denganCHECK_INTERVAL
. Unit dalam hitungan detik. Jika dihapus, Google Cloud akan menggunakan nilai5s
(5 detik).HEALTHY_THRESHOLD
danUNHEALTHY_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 default2
.HOST
memungkinkan Anda menyediakan header HTTP host. Jika dihilangkan, alamat IP aturan penerusan load balancer akan digunakan.PORT
memungkinkan Anda memberikan nomor port. Jika dihilangkan, Google Cloud akan menggunakan80
.REQUEST_PATH
menentukan jalur URL yang digunakan Google Cloud saat mengirim permintaan health check. Jika dihilangkan, permintaan health check akan dikirim ke/
.
API
Untuk membuat health check HTTP lama, gunakan panggilan API httpHealthChecks.insert.
Untuk membuat health check HTTPS lama, gunakan httpsHealthChecks.insert
Terraform
Untuk membuat resource health check HTTP lama, gunakan resource
google_compute_http_health_check
.Untuk membuat resource health check HTTPS lama, gunakan resource
google_compute_https_health_check
.
Mengubah health check lama
Konsol
- Buka halaman Health check di Konsol Google Cloud.
Buka halaman Health check - Klik health check untuk melihat detailnya.
- Klik Edit , buat perubahan, lalu klik Save.
gcloud
Untuk mengubah health check HTTP lama, gunakan perintah
compute http-health-checks update
, dengan menggantiNAME
dengan namanya. Saat memodifikasi health check lama dengangcloud
, 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 menggantiNAME
dengan namanya. Saat memodifikasi health check lama dengangcloud
, 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 tanda yang digunakan untuk pembuatannya. Panggilan API patch
mempertahankan setelan apa pun yang telah dikonfigurasi sebelumnya yang tidak secara eksplisit ditetapkan dalam permintaan patch.
Untuk mengubah health check HTTP lama, gunakan httpHealthChecks.update atau httpHealthChecks.patch.
Untuk mengubah health check HTTPS lama, gunakan httpsHealthChecks.update atau httpsHealthChecks.patch.
Mencantumkan health check lama
Konsol
- Buka halaman Health check di Konsol Google Cloud.
Buka halaman Health check - Klik health check lama untuk melihat detailnya.
gcloud
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
Untuk mendeskripsikan health check HTTP lama, gunakan perintah
compute http-health-checks describe
, dan gantiNAME
dengan namanya.gcloud compute http-health-checks describe NAME
Untuk mendeskripsikan health check HTTPS lama, gunakan perintah
compute https-health-checks describe
, dengan menggantiNAME
dengan namanya.gcloud compute https-health-checks describe NAME
API
Untuk mencantumkan health check lama:
Gunakan httpHealthChecks.list untuk mencantumkan health check HTTP lama.
Gunakan httpsHealthChecks.list untuk mencantumkan health check HTTPS lama.
Untuk menjelaskan health check lama:
Gunakan httpHealthChecks.get untuk mendeskripsikan health check HTTP lama.
Gunakan httpsHealthChecks.get untuk mendeskripsikan health check HTTPS lama.
Membuat aturan firewall yang diperlukan
Anda perlu membuat aturan firewall masuk yang berlaku untuk semua VM yang di-load balanced untuk mengizinkan traffic dari rentang IP pemeriksaan 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 ingin, Anda dapat menentukan port beserta protokol TCP; tetapi, jika Anda menentukan port, aturan firewall Anda dapat menjadi khusus untuk health check tertentu. Jika Anda menggunakan tcp:80
untuk protokol dan port, hal ini memungkinkan traffic TCP di port 80, sehingga Google Cloud dapat menghubungi VM Anda menggunakan HTTP di port 80, tetapi tidak dapat menghubungi VM tersebut menggunakan HTTPS di port 443.
Konsol
- Pada konsol Google Cloud, buka halaman Kebijakan Firewall.
Buka kebijakan Firewall - Klik Create firewall rule.
- Di halaman Create a firewall rule, berikan informasi berikut:
- Nama: Berikan nama untuk aturan. Untuk contoh ini, gunakan
fw-allow-health-checks
. - Network: Pilih jaringan VPC.
- Priority: Masukkan angka untuk prioritas. Angka yang lebih rendah memiliki prioritas yang lebih tinggi. Pastikan aturan firewall memiliki prioritas lebih tinggi daripada aturan lain yang mungkin menolak traffic masuk.
- Arah traffic: Pilih ingress.
- Tindakan pada kecocokan: Pilih izinkan.
- Targets: Pilih Specified target tags, lalu masukkan tag di kolom Target tags. Untuk contoh ini, gunakan
allow-health-checks
. - Source filter: Pilih IP ranges.
- Source IP ranges: Masukkan rentang IP sumber, bergantung pada jenis load balancer, jenis traffic, dan jenis health check Anda. Lihat Rentang IP dan aturan firewall.
- 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.
- Nama: Berikan nama untuk aturan. Untuk contoh ini, gunakan
- Di setiap instance yang mengalami load balancing, tambahkan tag
jaringan
sehingga aturan firewall masuk yang baru ini berlaku untuk instance tersebut. Contoh ini menggunakan
allow-health-checks
untuk tag jaringan.
gcloud
Gunakan perintah
gcloud
berikut untuk membuat aturan firewall bernamafw-allow-health-checks
yang memungkinkan koneksi TCP masuk, dari sistem health check Google Cloud, ke instance di jaringan VPC Anda dengan tagallow-health-checks
. GantiNETWORK_NAME
dengan nama jaringan VPC Anda dan gantiPORT
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 Rentang IP dan aturan firewall.
Di setiap instance yang mengalami load balancing, tambahkan tag jaringan sehingga aturan firewall masuk yang 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 lebih lanjut 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: Pilih health check.
Untuk mengaitkan health check dengan load balancer baru, lihat panduan penyiapan untuk masing-masing load balancer. Bagian ini menjelaskan cara mengaitkan health check dengan layanan backend load balancer yang sudah ada.
Bagian ini mengasumsikan bahwa Anda telah:
- Load balancer telah dibuat.
- Berhasil membuat health check.
aturan firewall yang diperlukan berhasil dibuat.
Konsol
Untuk mengaitkan health check dengan load balancer yang sudah ada:
- Buka halaman Load balancing di Konsol Google Cloud.
Buka halaman Load balancing - Klik load balancer untuk melihat detailnya.
- Klik Edit , lalu klik Backend configuration.
- Pilih health check dari menu Health check.
- Klik Perbarui.
gcloud
Untuk mengaitkan health check dengan layanan backend yang ada, ikuti langkah-langkah berikut.
Identifikasi nama dan cakupan layanan backend. Load Balancer Jaringan passthrough eksternal, Load Balancer Jaringan passthrough internal, Load Balancer Jaringan proxy internal regional, dan Load Balancer Jaringan proxy eksternal hanya memiliki satu layanan backend per load balancer. Load Balancer Aplikasi eksternal dan Load Balancer Aplikasi internal memiliki satu atau beberapa layanan backend yang terkait dengan satu peta URL.
Guna mencantumkan layanan backend untuk Load Balancer Jaringan passthrough internal, jalankan perintah berikut, dengan mengganti
REGION_LIST
dengan daftar region Google Cloud yang dipisahkan koma untuk dikueri.gcloud compute backend-services list \ --filter="region:( REGION1 REGION2 ... ) AND loadBalancingScheme=INTERNAL"
Guna mencantumkan layanan backend untuk Load Balancer Jaringan passthrough eksternal, jalankan perintah berikut, dan ganti setiap REGION dengan region Google Cloud yang akan dikueri.
gcloud compute backend-services list \ --filter="region:( REGION1 REGION2 ... ) AND loadBalancingScheme=EXTERNAL"
Untuk menampilkan daftar layanan backend bagi 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 daftar layanan backend untuk Network Load Balancer klasik proxy, jalankan perintah berikut.
gcloud compute backend-services list \ --global \ --filter="loadBalancingScheme=EXTERNAL" \ --filter="protocol=(SSL,TCP)"
Untuk menampilkan daftar layanan backend bagi Load Balancer Jaringan proxy eksternal regional, jalankan perintah berikut.
gcloud compute backend-services list \ --region=REGION \ --filter="loadBalancingScheme=EXTERNAL_MANAGED" \ --filter="protocol=(SSL,TCP)"
Guna mencantumkan layanan backend untuk Load Balancer Jaringan proxy internal regional, jalankan perintah berikut, dengan mengganti
REGION_LIST
dengan daftar region Google Cloud yang dibatasi koma untuk membuat kueri.gcloud beta compute backend-services list \ --filter="region:( REGION1 REGION2 ... ) AND loadBalancingScheme=INTERNAL_MANAGED"
Guna mencantumkan layanan backend untuk Load Balancer Jaringan proxy eksternal menggunakan SSL, jalankan perintah berikut. Layanan backend untuk load balancer ini selalu global, terlepas dari Tingkat Layanan Jaringan.
gcloud compute backend-services list \ --global \ --filter="loadBalancingScheme=EXTERNAL" \ --filter="protocol=(SSL,TCP)"
Guna mengidentifikasi layanan backend untuk Load Balancer Aplikasi eksternal, identifikasi peta URL terlebih dahulu, lalu deskripsikan petanya. Peta URL dan layanan backend untuk Load Balancer Aplikasi eksternal atau Load Balancer Aplikasi internal lintas region selalu bersifat global, terlepas dari Tingkat Layanan Jaringan. Ganti
URL_MAP_NAME
dengan nama peta URL. Layanan backend yang digunakan oleh load balancer akan tercantum dalam respons.gcloud compute url-maps list \ --global
gcloud compute url-maps describe URL_MAP_NAME \ --global
Guna mengidentifikasi layanan backend untuk Load Balancer Aplikasi eksternal regional atau Load Balancer Aplikasi internal regional, identifikasi peta URL terlebih dahulu, lalu deskripsikan peta. Peta URL dan layanan backend untuk load balancer ini bersifat regional. Ganti
REGION_LIST
dengan daftar region Google Cloud yang dibatasi koma untuk dikueri. GantiURL_MAP_NAME
dengan nama peta URL dan gantiREGION
dengan wilayahnya. Layanan backend yang digunakan oleh load balancer akan tercantum di respons.gcloud compute url-maps list \ --regions=REGION_LIST
gcloud compute url-maps describe URL_MAP_NAME \ --region=REGION
Mengidentifikasi health check. Lihat Listingan health check.
Kaitkan health check dengan layanan backend menggunakan perintah
compute backend-services update
. Setiap layanan backend harus merujuk pada satu health check. Dalam perintah berikut, gantiBACKEND_SERVICE_NAME
dengan nama layanan backend,HEALTH_CHECK_NAME
dengan nama health check, dan, jika perlu,REGION
dengan region Google Cloud dari 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 dapat merujuk ke 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 berbasis layanan backend: Layanan backend Load Balancer Jaringan passthrough eksternal bersifat regional. Health check dapat merujuk pada 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
Anda dapat menampilkan daftar layanan backend dengan panggilan API backendServices.list.
Untuk mengaitkan health check 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:
- Membuat Load Balancer Jaringan passthrough eksternal berbasis kumpulan target.
- Membuat health check lama.
aturan firewall yang diperlukan berhasil dibuat.
Konsol
Untuk mengaitkan health check dengan passthrough eksternal Network Load Balancer berbasis kumpulan target yang ada:
- Buka halaman Load balancing di Konsol Google Cloud.
Buka halaman Load balancing - Klik load balancer untuk melihat detailnya.
- Klik Edit , lalu klik Backend configuration.
- Pilih health check lama dari menu Health check. (Hanya health check lama yang memenuhi syarat yang ditampilkan.)
- Klik Perbarui.
gcloud
Untuk mengaitkan health check dengan passthrough eksternal Network Load Balancer berbasis kumpulan target yang ada:
Identifikasi kumpulan target. Load Balancer Jaringan passthrough eksternal memiliki setidaknya satu kumpulan target, dan mungkin memiliki kumpulan cadangan sekunder.
gcloud compute target-pools list
Identifikasi health check lama menggunakan protokol
HTTP
. Lihat health check lama jika perlu.Mengaitkan health check lama dengan kumpulan target. Pada perintah berikut, ganti
TARGET_POOL_NAME
dengan nama kumpulan target,REGION
dengan region-nya, danLEGACY_CHECK_NAME
dengan nama health check 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
Anda dapat menampilkan daftar kumpulan target dengan panggilan API targetPools.list.
Melihat health check lama dan mengidentifikasi health check HTTP lama.
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 bisa mendapatkan status health check instan untuk backend load balancer.
Konsol
- Buka halaman ringkasan load balancing.
Buka halaman Load balancing - Klik nama load balancer.
- Di bagian Backend, periksa kolom Healthy. Status respons 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
, yang menggantiNAME
dengan nama layanan backend, danREGION
dengan regionnya, jika diperlukan.Untuk mendapatkan status kesehatan instan dari layanan backend global:
gcloud compute backend-services get-health GLOBAL_BACKEND_SERVICE_NAME \ --global
Untuk mendapatkan status respons instan dari 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 dari kumpulan target load balancer, lalu gunakan perintah
compute target-pools get-health
, yang menggantiNAME
dengan nama kumpulan target, danREGION
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 mendapatkan status kesehatan instan dari layanan backend global, gunakan backendServices.getHealth
Untuk mendapatkan status kesehatan instan dari layanan backend regional, gunakan regionBackendServices.getHealth
Untuk Load Balancer Jaringan passthrough eksternal berbasis kumpulan target, gunakan targetPools.getHealth