Ringkasan mesh layanan GKE Cloud Service Mesh
Konfigurasi ini didukung untuk pelanggan Pratinjau, tetapi kami tidak merekomendasikannya untuk pengguna Cloud Service Mesh baru. Untuk informasi selengkapnya, lihat ringkasan Cloud Service Mesh.
Dokumen ini ditujukan untuk pengguna Google Kubernetes Engine yang ingin men-deploy service mesh Cloud Service Mesh menggunakan Kubernetes Gateway API.
Anda dapat mengonfigurasi Cloud Service Mesh untuk GKE menggunakan Kubernetes Gateway API, yang memungkinkan komunikasi layanan ke layanan, pengelolaan traffic, load balancing global, dan penerapan kebijakan keamanan untuk kasus penggunaan mesh layanan.
Kubernetes API dan Google Cloud API
Anda dapat mengonfigurasi mesh layanan Cloud Service Mesh menggunakan dua API yang berbeda:
- Google Cloud API, yang dapat berupa API pemilihan rute layanan atau API lama
- Kubernetes Gateway API
Dokumen ini dan panduan penyiapan terkait memberikan petunjuk untuk menggunakan Kubernetes Gateway API guna mengonfigurasi mesh layanan Cloud Service Mesh.
Sebaiknya gunakan Kubernetes Gateway API di Google Kubernetes Engine dan sebaiknya jangan gunakan kedua API untuk mengonfigurasi perutean di mesh layanan yang sama di GKE.
API pemilihan rute layanan menggunakan nama resource yang sama dengan resource di Kubernetes Gateway API, yang memudahkan Anda saat menggunakan kedua API tersebut. Resource Kubernetes yang Anda konfigurasikan secara fungsional setara dengan resource Google Cloud yang diwakili oleh API pemilihan rute layanan untuk Cloud Service Mesh.
Bagian berikut menjelaskan resource dan arsitektur yang digunakan oleh integrasi Cloud Service Mesh dengan Kubernetes Gateway API.
Gateway API
Gateway API adalah kumpulan resource yang membuat model jaringan layanan di Kubernetes. Gateway API Kubernetes adalah project open source yang berfokus pada dukungan kasus penggunaan load balancer dan ingress dengan menyediakan API pemilihan rute generik. API pemilihan rute generik memiliki banyak implementasi. Definisi resource kustom (CRD) Cloud Service Mesh ditambahkan sebagai ekstensi ke Gateway API open source. CRD mendukung kasus penggunaan mesh layanan dan menggunakan API pemilihan rute generik yang sama yang diperkenalkan oleh Gateway API.
Gateway API diatur secara hierarkis, dengan resource induk Gateway dan
GatewayClass
terkait, tempat Anda melampirkan rute. GKE
menyertakan resource TDMesh
yang merupakan peer dari resource Gateway
. Anda dapat
melampirkan jenis Route
yang sama ke resource TDMesh
. Resource TDMesh
adalah
tempat Anda melampirkan rute dan kebijakan untuk mesh layanan.
Fleet
Flot terdiri dari satu atau beberapa cluster GKE yang dikelompokkan secara logis. Fleet memungkinkan Anda mengelola kemampuan dan menerapkan kebijakan secara konsisten di beberapa cluster. Saat menggunakan fleet, Anda dapat mengelola mesh layanan Cloud Service Mesh yang mencakup beberapa cluster.
Arsitektur
Cloud Service Mesh mendukung Gateway API di GKE dengan memprogram bidang data cluster Anda untuk menerapkan perilaku jaringan yang ditentukan dalam resource Gateway API. Cloud Service Mesh sendiri adalah platform kontrol yang dikelola Google yang tidak memproses traffic platform data apa pun. Proksi Envoy yang berjalan sebagai sidecar ke workload Anda atau klien gRPC tanpa proxy memproses traffic di bidang data. Cloud Service Mesh mengonfigurasi proxy Envoy dan klien gRPC tanpa proxy melalui xDSv3 API.
Cloud Service Mesh menawarkan solusi bidang kontrol yang terkelola dan tersedia secara global yang lebih andal dan skalabel daripada menjalankan pengontrol dalam cluster. Karena merupakan solusi global, Cloud Service Mesh dapat melakukan load balancing traffic di seluruh workload yang didistribusikan di beberapa cluster GKE. Dalam ilustrasi berikut, Cloud Service Mesh mengelola traffic ke layanan di tiga cluster yang berada dalam satu fleet, menggunakan resource Gateway API.
Anda menetapkan satu cluster di fleet sebagai cluster konfigurasi. Cluster konfigurasi adalah tempat resource Gateway API disimpan. Cloud Service Mesh hanya memantau resource yang ada di cluster konfigurasi, dan mengabaikan resource yang ada di cluster lain dalam fleet. Lihat Desain cluster konfigurasi dalam dokumentasi GKE untuk mengetahui informasi yang lebih mendetail tentang cluster konfigurasi.
Dengan Layanan multi-cluster GKE, resource Gateway API di cluster konfigurasi dapat mereferensikan layanan Kubernetes di cluster mana pun dalam fleet. Lihat Layanan Multi-cluster untuk mengetahui informasi selengkapnya tentang Penemuan Layanan Multi-Cluster.
Resource
Cloud Service Mesh mendukung proxy Envoy dan gRPC tanpa proxy di bidang data mesh layanan. Kedua klien menerima konfigurasi dari
Cloud Service Mesh untuk mesh layanan tertentu, dengan menentukan nama dan
nomor project yang sesuai dari resource TDMesh
dalam konfigurasi bootstrap
masing-masing. Panduan penyiapan untuk Cloud Service Mesh dengan Kubernetes Gateway API
memberikan konfigurasi bidang data demonstrasi dengan Envoy dan gRPC tanpa proxy.
Resource TDMesh
Resource TDMesh
adalah resource kustom Cloud Service Mesh. Ini adalah ekstensi untuk Gateway API open source untuk mendukung kasus penggunaan mesh layanan Cloud Service Mesh. Dengan menggunakan resource TDMesh
, Anda membuat instance mesh layanan di fleet. Rute
yang dilampirkan ke resource TDMesh
menentukan perilaku perutean layanan ke layanan
di mesh layanan.
Route
materi
Subkumpulan resource Rute Gateway API dapat dilampirkan ke resource TDMesh
untuk menentukan pemilihan rute tingkat layanan dalam mesh layanan. Cloud Service Mesh mendukung resource Route
berikut:
HTTPRoute
TCPRoute
TDGRPCRoute
(Resource kustom Cloud Service Mesh)
Misalnya, Anda dapat membuat HTTPRoute
untuk menentukan bahwa permintaan HTTP
yang ditujukan untuk menghosting payments.svc.internal
dirutekan ke layanan Kubernetes
service-payments
. Saat Anda melampirkan resource HTTPRoute
ke resource TDMesh
yang dilanggani oleh instance bidang data, permintaan HTTP yang dikirim oleh beban kerja dalam mesh akan dirutekan sebagaimana mestinya.
Rilis ini menambah resource Route
generik di Gateway API dengan
jenis rute baru, TDGRPCRoute
. Jenis rute baru memberikan pengalaman
kelas satu untuk merutekan permintaan gRPC, dengan mencocokkan primitif gRPC native,
seperti definisi metode dan layanan.
Batasan
- Cloud Service Mesh mengonfigurasi perilaku default berikut untuk semua
layanan Kubernetes di mesh layanan. Anda tidak dapat mengubah perilaku
ini.
- Health check TCP dikonfigurasi di port layanan yang dirujuk oleh
resource
Route
Gateway API. - Waktu tunggu default selama 30 detik dikonfigurasi untuk semua permintaan masuk ke layanan.
- Afinitas sesi dinonaktifkan.
- Health check TCP dikonfigurasi di port layanan yang dirujuk oleh
resource
- Injektor otomatis Envoy hanya mendukung satu mesh per fleet.
- Fitur keamanan Cloud Service Mesh tidak dapat diaktifkan menggunakan Gateway API.
- Anda harus mengonfigurasi resource
TDMesh
danRoute
di GKE hanya menggunakan Gateway API. Anda tidak dapat menggunakan konsol Google Cloud, gcloud CLI, atau REST API. - Semua cluster harus berada dalam satu project. Mesh layanan yang mencakup cluster di beberapa project tidak didukung.
- Anda tidak dapat mengonfigurasi atau melihat mesh layanan GKE menggunakan konsol Google Cloud.
- Observabilitas bidang kontrol dengan Cloud Logging dan Cloud Monitoring tidak didukung.
Langkah selanjutnya
- Pelajari cara bersiap menyiapkan mesh layanan dengan Gateway API.