Halaman ini memberikan informasi tentang cara mengonfigurasi Load Balancer Jaringan passthrough internal atau Load Balancer Aplikasi internal (Pratinjau) sehingga terdaftar secara otomatis di Service Directory.
Saat membuat load balancer, Anda dapat mendaftarkannya sebagai endpoint di layanan dan namespace Direktori Layanan yang ada sesuai pilihan Anda. Aplikasi klien kemudian dapat menggunakan Service Directory (menggunakan HTTP atau gRPC) dan/atau DNS (jika Anda telah membuat zona DNS Service Directory) untuk menyelesaikan alamat layanan load balancer internal dan terhubung ke layanan tersebut secara langsung.
Batasan
Integrasi Service Directory dengan load balancing internal memiliki batasan berikut:
- Pendaftaran otomatis hanya berlaku untuk load balancer internal dan jaringan. Anda dapat mendaftarkan layanan load balancing Google Kubernetes Engine menggunakan integrasi GKE. Anda dapat mendaftarkan load balancer global, dan ingress serta gateway Google Kubernetes Engine dengan memanggil Service Directory API.
- Anda hanya dapat menggunakan pendaftaran otomatis pada saat pembuatan aturan penerusan. Pendaftaran otomatis menggunakan update Google Cloud CLI untuk aturan penerusan yang sudah ada tidak tersedia.
- Anda dapat mendaftarkan load balancer internal ke Service Directory di project host atau layanan penyiapan jaringan VPC bersama. Namun, semua komponen dan backend load balancing harus ada dalam project yang sama. Untuk mengetahui detail selengkapnya, lihat batasan load balancing internal.
- Service Directory tidak menyediakan konektivitas, yang berarti meskipun Service Directory menyimpan alamat IP virtual load balancer internal, mencari load balancer internal di Service Directory tidak menjamin bahwa Anda dapat terhubung ke alamat IP virtual.
Sebelum memulai
Petunjuk ini memerlukan hal berikut:
Anda harus sudah memiliki namespace dan layanan Service Directory. Jika Anda belum melakukannya, buat namespace dan layanan menggunakan prosedur di Mengonfigurasi Service Directory.
Namespace dan layanan Service Directory harus berada di project dan region yang sama dengan aturan penerusan load balancer internal yang Anda buat.
Anda harus telah menyiapkan resource yang diperlukan untuk membuat aturan penerusan load balancer internal.
- Untuk mengetahui informasi tentang cara membuat Load Balancer Jaringan passthrough internal, lihat Menyiapkan Load Balancer Jaringan passthrough internal.
- Untuk mengetahui informasi tentang cara membuat Load Balancer Aplikasi internal, lihat Menyiapkan Load Balancer Aplikasi internal.
Menyiapkan aturan penerusan untuk mendaftarkan load balancer internal di Service Directory
Anda harus menyiapkan aturan penerusan untuk mendaftarkan load balancer internal di Service Directory. Untuk mendaftarkan Load Balancer Jaringan passthrough internal atau Load Balancer Aplikasi internal, lihat bagian berikut.
Mendaftarkan Load Balancer Jaringan passthrough internal
Untuk mendaftarkan Load Balancer Jaringan passthrough internal, jalankan perintah gcloud compute forwarding-rules
create
dan
tetapkan tanda service-directory-registration
:
gcloud compute forwarding-rules create FORWARDING_RULE_NAME \ --region=REGION \ --load-balancing-scheme=INTERNAL \ --network=NETWORK_NAME \ --subnet=SUBNET_NAME \ --address=RESERVED_IP_ADDRESS \ --ip-protocol=PROTOCOL_TYPE \ --ports=PORT_NUMBER \ --backend-service=BACKEND_SERVICE_NAME \ --backend-service-region=REGION \ --service-directory-registration=SD_SERVICE_NAME
Ganti kode berikut:
FORWARDING_RULE_NAME
: nama untuk aturan penerusan yang ingin Anda buatREGION
: region tempat membuat aturan penerusanNETWORK_NAME
: jaringan tempat aturan penerusan ini diterapkanSUBNET_NAME
: subnetwork tempat aturan penerusan ini diterapkanRESERVED_IP_ADDRESS
: alamat IP yang ditayangkan oleh aturan penerusanPROTOCOL_TYPE
: protokol IP yang akan ditangani oleh aturanPORT_NUMBER
: daftar port yang dipisahkan komaBACKEND_SERVICE_NAME
: layanan backend target yang menerima trafficSD_SERVICE_NAME
: nama layanan Direktori Layanan yang sepenuhnya memenuhi syarat tempat Anda ingin mendaftarkan endpoint. Alamat IP harus berada di project dan region yang sama dengan aturan penerusan yang dibuat. Misalnya: projects/PROJECT
/locations/REGION
/namespaces/NAMESPACE_NAME
/services/SERVICE_NAME
.
Mendaftarkan Load Balancer Aplikasi internal
Untuk mendaftarkan Load Balancer Aplikasi internal regional, jalankan perintah gcloud compute forwarding-rules
create
dan
tetapkan tanda service-directory-registration
:
gcloud beta compute forwarding-rules create FORWARDING_RULE_NAME \ --region=REGION \ --load-balancing-scheme=INTERNAL_MANAGED \ --network=NETWORK_NAME \ --address=RESERVED_IP_ADDRESS \ --target-https-proxy=PROXY_NAME \ --target-https-proxy-region=PROXY_REGION \ --ports=PORT_NUMBER \ --service-directory-registration=SD_SERVICE_NAME
Ganti kode berikut:
FORWARDING_RULE_NAME
: nama untuk aturan penerusan yang ingin Anda buatREGION
: region tempat membuat aturan penerusanNETWORK_NAME
: jaringan tempat aturan penerusan ini diterapkanRESERVED_IP_ADDRESS
: alamat IP yang ditayangkan oleh aturan penerusanPROXY_NAME
: proxy target yang menerima trafficPROXY_REGION
: region proxy yang akan dioperasikanPORT_NUMBER
: daftar port yang dipisahkan komaSD_SERVICE_NAME
: nama layanan Direktori Layanan yang sepenuhnya memenuhi syarat tempat Anda ingin mendaftarkan endpoint. Layanan ini harus berada di project dan region yang sama dengan aturan penerusan yang sedang dibuat. Misalnya: projects/PROJECT
/locations/REGION
/namespaces/NAMESPACE_NAME
/services/SERVICE_NAME
.
Memverifikasi endpoint
Satu atau beberapa endpoint Direktori Layanan yang dibuat saat Anda mendaftarkan load balancer internal memiliki karakteristik berikut:
- Endpoint memiliki nama yang sama dengan nama aturan penerusan dengan
nomor port yang ditentukan (
<forwarding rule name>-<port>
). Misalnya, jika Anda membuat aturan penerusanRULE
dengan--port=8080
, Anda akan mendapatkan endpoint yang disebutRULE-8080
. Untuk aturan yang sama, jika Anda menentukan dua port--port=8080, 8081
, Anda akan mendapatkan dua endpoint,RULE-8080
danRULE-8081
. Jika Anda menentukan--port=ALL
, endpoint Service Directory akan didaftarkan dengan port0
. Jika Anda adalah pemilik load balancer internal, Anda harus memastikan bahwa pemanggil API mengetahui port yang akan digunakan untuk terhubung. - Anda tidak dapat mengubah atau menghapus endpoint menggunakan API Service Directory publik. Endpoint hanya akan dihapus secara otomatis jika Anda menghapus aturan penerusan. Artinya, Anda tidak dapat menghapus layanan dan namespace tempat endpoint berada selama aturan penerusan ada.
- Endpoint itu sendiri tidak ditagih, meskipun detail harga normal berlaku untuk panggilan API apa pun ke endpoint.
Untuk mengonfirmasi bahwa endpoint telah dibuat, selesaikan layanan di Service Directory. Anda akan melihat endpoint dengan nama yang sama dengan nama aturan penerusan dengan nomor port yang ditentukan.
Untuk menyelesaikan layanan di Service Directory, lakukan hal berikut:
gcloud
Jalankan perintah gcloud service-directory services
resolve
:
gcloud service-directory services resolve SD_SERVICE_NAME \ --namespace=SD_NAMESPACE_NAME \ --location=REGION
Ganti kode berikut:
SD_SERVICE_NAME
: nama layanan Service Directory yang akan diselesaikan. Harus ada di nama namespace Direktori Layanan.SD_NAMESPACE_NAME
: nama yang Anda berikan untuk namespace yang berisi layanan Anda.REGION
: region Trusted Cloud yang berisi namespace. Ini harus sama dengan region tempat Anda membuat aturan penerusan.
Opsional: Buat zona Direktori Layanan menggunakan Cloud DNS
Anda dapat menyelesaikan endpoint Service Directory yang terdaftar melalui integrasi ini menggunakan DNS seperti endpoint Service Directory lainnya. Untuk membuat zona Direktori Layanan menggunakan Cloud DNS, lihat Mengonfigurasi zona Direktori Layanan.
Untuk memeriksa apakah zona Anda disiapkan dengan benar, Anda dapat menjalankan kueri DNS zona Direktori Layanan Anda. Untuk mengetahui petunjuk tentang cara membuat kueri menggunakan DNS, lihat Membuat kueri menggunakan DNS. Jika zona Anda dikonfigurasi dengan benar, Anda akan melihat alamat IP load balancer internal di output perintah.
Pembersihan
Untuk menghapus resource yang Anda buat, lakukan langkah-langkah berikut:
gcloud
Untuk menghapus aturan penerusan, jalankan perintah
gcloud compute forwarding-rules delete
:gcloud compute forwarding-rules delete FORWARDING_RULE_NAME \ --region=REGION \
Ganti kode berikut:
FORWARDING_RULE_NAME
: nama aturan penerusan yang Anda buatREGION
: region untuk aturan penerusan
Untuk mengetahui detail selengkapnya, lihat Menghapus aturan penerusan.
Untuk mengonfirmasi bahwa penghapusan aturan penerusan telah otomatis menghapus endpoint dari Direktori Layanan, jalankan perintah
gcloud service-directory services resolve
yang dijelaskan di bagian Memverifikasi endpoint di layanan Direktori Layanan Anda.Untuk menghapus zona, jika Anda membuatnya, ikuti petunjuk di Menghapus zona terkelola.
Untuk menghapus namespace dan layanan Service Directory, lihat Menghapus resource.
Langkah berikutnya
- Untuk mendapatkan ringkasan Direktori Layanan, lihat Ringkasan Direktori Layanan.
- Untuk menemukan solusi atas masalah umum yang mungkin Anda alami saat menggunakan Service Directory, lihat Pemecahan masalah.