Proxy target untuk Cloud Service Mesh

Dokumen ini hanya berlaku untuk Cloud Service Mesh dengan API load balancing. Kami sangat menyarankan Anda menggunakan API pemilihan rute layanan untuk men-deploy Cloud Service Mesh.

Saat mengonfigurasi Cloud Service Mesh, salah satu resource yang Anda konfigurasikan adalah proxy target. Dalam konteks Cloud Service Mesh, proxy target memiliki dua tujuan utama:

  • Menentukan protokol yang digunakan klien Mesh Layanan Cloud saat mereka membuka koneksi ke backend atau endpoint yang terkait dengan layanan.

  • Bekerja dengan aturan penerusan dan peta URL untuk membuat peta aturan pemilihan rute. Peta aturan perutean memberikan kemampuan tambahan, seperti aturan perutean, bergantung pada jenis proxy target. Pilihan yang tidak valid akan disembunyikan di antarmuka pengguna atau ditolak oleh API.

Menargetkan jenis proxy dan protokol permintaan

Cloud Service Mesh menghasilkan konfigurasi yang berbeda untuk kliennya berdasarkan jenis proxy target yang Anda konfigurasikan. Saat Anda mengonfigurasi jenis proxy target, klien Mesh Layanan Cloud menggunakan protokol permintaan tertentu.

Proxy target Protokol permintaan
HTTPS Klien memulai koneksi HTTPS
HTTP Klien memulai koneksi HTTP
gRPC Klien memulai koneksi gRPC
TCP Klien memulai koneksi TCP

Anda tidak dibatasi untuk memilih satu jenis saja. Misalnya, aplikasi Anda mungkin ingin menggunakan HTTP saat menangani beberapa layanan, tetapi menggunakan TCP saat menangani layanan lain. Untuk kasus penggunaan semacam itu, Anda perlu membuat proxy HTTP target dan proxy TCP target.

Kombinasi resource yang valid dalam peta aturan perutean

Untuk menghindari kesalahan konfigurasi, Cloud Service Mesh hanya mengizinkan Anda membuat peta aturan perutean yang terlihat seperti berikut:

  • Aturan penerusan > proxy HTTPS target global > Peta URL > satu atau beberapa layanan backend
  • Aturan penerusan > proxy HTTP target global > Peta URL > satu atau beberapa layanan backend
  • Aturan penerusan > proxy gRPC target global > Peta URL > satu atau beberapa layanan backend
  • Aturan penerusan > proxy TCP target global > satu layanan backend

Jika Anda menggunakan konsol Google Cloud untuk menyiapkan proxy HTTP target, proxy target akan disiapkan secara implisit sebagai bagian dari konfigurasi peta aturan perutean Anda. Penyiapan proxy TCP belum didukung di Konsol Google Cloud.

Jika menggunakan Google Cloud CLI atau API, Anda harus mengonfigurasi proxy target secara eksplisit.

Penanganan traffic

Bagian berikut menjelaskan cara untuk menangani traffic, bergantung pada jenis proxy target yang Anda gunakan.

Menggunakan proxy HTTP atau HTTPS target

Saat Anda mengonfigurasi layanan berbasis HTTP atau HTTPS, setiap instance layanan umumnya memiliki proxy Envoy yang di-deploy bersamanya. Cloud Service Mesh mengonfigurasi proxy Envoy ini. Data ini adalah bagian dari bidang data mesh layanan Anda dan menangani traffic sebagai berikut.

Proxy Envoy menerima permintaan keluar. Kemudian, alamat IP dan port tujuan permintaan akan dibandingkan dengan alamat IP dan port yang dikonfigurasi di setiap aturan penerusan yang merujuk pada proxy HTTP atau HTTPS target. Jika kecocokan ditemukan, proxy Envoy akan mengevaluasi permintaan tersebut sesuai dengan peta URL yang sesuai dari proxy target.

Menggunakan proxy TCP target

Saat Anda mengonfigurasi layanan berbasis TCP, setiap instance layanan umumnya memiliki proxy Envoy yang di-deploy bersamanya. Cloud Service Mesh mengonfigurasi proxy Envoy ini. Data ini adalah bagian dari bidang data mesh layanan Anda dan menangani traffic sebagai berikut.

Proxy Envoy menerima permintaan keluar. Kemudian, alamat IP dan port tujuan permintaan akan dibandingkan dengan alamat IP dan port yang dikonfigurasi di setiap aturan penerusan yang merujuk pada proxy TCP target. Setiap aturan penerusan merutekan traffic TCP ke proxy target yang mengarah ke layanan backend default. Layanan backend menentukan health check dan menentukan backend yang sesuai.

Menggunakan proxy gRPC target

Saat Anda mengonfigurasi layanan berbasis gRPC, instance layanan Anda umumnya tidak memiliki proxy Envoy yang di-deploy bersamanya. Sebagai gantinya, Cloud Service Mesh mengonfigurasi library gRPC. Library ini adalah bagian dari bidang data mesh layanan Anda dan menangani traffic sebagai berikut.

Library gRPC membandingkan hostname[:port] yang ditentukan dalam URI dengan aturan host di semua peta URL yang dirujuk oleh proxy gRPC target. Jika kecocokan ditemukan, library gRPC akan mengevaluasi permintaan sesuai dengan aturan jalur yang terkait dengan aturan host yang cocok.

Resource proxy target

Untuk menambahkan, menghapus, membuat daftar, dan mendapatkan informasi tentang proxy target, Anda dapat menggunakan REST API atau gcloud CLI.

Selain itu, untuk mendapatkan informasi tentang proxy target, Anda dapat menggunakan perintah gcloud berikut:

gcloud compute [target-http-proxies | target-tcp-proxies | target-grpc-proxies] list
gcloud compute [target-http-proxies | target-tcp-proxies | target-grpc-proxies] describe TARGET_PROXY_NAME

API

Untuk deskripsi properti dan metode yang tersedia saat Anda menggunakan proxy target melalui REST API, lihat referensi berikut yang didukung Cloud Service Mesh:

gcloud CLI

Untuk Google Cloud CLI, lihat referensi berikut:

Langkah selanjutnya