Gateway MSE Ingress memperluas model Kubernetes Ingress standar dengan mengintegrasikan gateway cloud-native Microservices Engine (MSE) ke dalam Container Service for Kubernetes (ACK), sehingga menyediakan kemampuan manajemen lalu lintas lanjutan, tata kelola layanan, dan keamanan yang melampaui dukungan sumber daya Kubernetes Ingress standar.
Topik ini mencakup konsep utama, arsitektur, dan komponen gateway MSE Ingress, serta ditujukan bagi operator kluster dan insinyur platform yang mengelola lalu lintas ingress di kluster ACK atau Container Compute Service (ACS).
Konsep utama
Dalam kluster Kubernetes, Ingress berfungsi sebagai titik akses untuk mengekspos Layanan dan mendistribusikan lalu lintas inbound ke pod backend. Sumber daya Kubernetes Ingress standar hanya menangani routing lalu lintas HTTP; fitur lanjutan seperti algoritma penyeimbangan beban dan afinitas sesi memerlukan implementasi controller Ingress.
Gateway MSE Ingress dibangun di atas gateway cloud-native MSE dan menambahkan kemampuan berikut di luar Kubernetes Ingress standar:
-
Kompatibel dengan gateway NGINX Ingress dan lebih dari 50 anotasi NGINX Ingress, mencakup lebih dari 90% kasus penggunaan gateway NGINX Ingress
-
Rilis canary untuk beberapa versi layanan secara simultan
-
Tata kelola layanan yang fleksibel dan perlindungan keamanan yang komprehensif
Fitur
Untuk informasi fitur secara detail, lihat topik-topik berikut:
Catatan penggunaan
Kluster ACK yang dikelola, kluster ACK Serverless, dan kluster ACS semuanya mendukung gateway MSE Ingress untuk load balancing Layer-7 terhadap lalu lintas eksternal.
Deploy MSE Ingress Controller di kluster Anda sebelum menggunakan gateway MSE Ingress. MSE Ingress Controller memantau sumber daya yang didefinisikan dalam CustomResourceDefinitions (CRD) MseIngressConfig dan secara dinamis mengelola siklus hidup, pengaturan global, serta item listening Ingress dari gateway cloud-native MSE. Gateway cloud-native tersebut kemudian mengonversi sumber daya Ingress menjadi konfigurasi manajemen lalu lintas dan mengekspos Layanan kluster ke luar. Untuk detailnya, lihat Gunakan gateway MSE Ingress untuk mengakses layanan di kluster ACK dan kluster ACS.
Sumber daya Kubernetes Ingress hanya mendukung manajemen lalu lintas HTTP, dengan fitur lanjutan yang diimplementasikan melalui anotasi. Gateway MSE Ingress kompatibel dengan anotasi NGINX Ingress dan menyediakan anotasi tambahan untuk tata kelola lalu lintas dan keamanan. Untuk detailnya, lihat Penggunaan lanjutan MSE Ingress.
Cara kerja gateway MSE Ingress
Komponen
Gateway MSE Ingress terdiri dari dua komponen utama:
MSE Ingress Controller
MSE Ingress Controller merupakan lapisan kontrol untuk mengelola gateway cloud-native MSE beserta konfigurasinya. Komponen ini tidak memproses lalu lintas layanan secara langsung, melainkan berfungsi sebagai koordinator yang mengoordinasikan gateway cloud-native MSE dalam menangani permintaan layanan. Instal MSE Ingress Controller di kluster ACK yang dikelola, kluster ACK Serverless, atau kluster ACS Anda. Komponen ini menggunakan CRD MseIngressConfig untuk mengelola gateway cloud-native melalui anotasi dan mengonfigurasi pendengaran sumber daya Ingress.
Untuk instruksi instalasi, lihat Kelola komponen MSE Ingress Controller.
Gateway cloud-native MSE
MSE Ingress Controller membuat gateway cloud-native MSE berdasarkan CRD MseIngressConfig yang Anda konfigurasi. Setiap gateway memiliki dua bidang:
-
Lapisan kontrol: Memantau Ingress, kelas Ingress, dan Layanan di kluster Anda, mengurai konfigurasi, serta mengirimkan aturan routing ke bidang data secara real time.
-
Bidang data: Menerima permintaan eksternal, mencocokkannya dengan aturan tata kelola dari lapisan kontrol, dan meneruskan permintaan tersebut ke Layanan backend yang sesuai.
Alur Lalu Lintas
Tabel berikut menjelaskan interaksi setiap komponen saat sebuah permintaan melewati gateway MSE Ingress.
| Langkah | Dari → Ke | Tindakan |
|---|---|---|
| 1 | CRD MseIngressConfig → MSE Ingress Controller | MSE Ingress Controller memantau CRD MseIngressConfig dan mempertahankan siklus hidup gateway cloud-native yang sesuai beserta asosiasinya dengan kluster Anda. |
| 2 | Server API kluster → Lapisan kontrol gateway cloud-native | Lapisan kontrol terhubung ke server API kluster untuk mendeteksi perubahan pada sumber daya Ingress, lalu memperbarui aturan routing gateway secara dinamis. |
| 3 | Klien → Bidang data gateway cloud-native | Bidang data menerima permintaan, mencocokkannya dengan aturan routing Ingress, dan meneruskannya ke pod Layanan backend yang sesuai. |
Gambar berikut menunjukkan cara komponen-komponen ini berinteraksi.
Hubungan sumber daya
Sumber daya berikut bekerja sama dalam kluster Kubernetes untuk mengaktifkan manajemen lalu lintas gateway MSE Ingress:
| Sumber daya | Peran |
|---|---|
| Layanan | Abstraksi yang merepresentasikan satu atau lebih pod backend identik. |
| Ingress | Sekumpulan aturan reverse proxy yang meneruskan permintaan HTTP atau HTTPS ke Layanan berdasarkan hostname dan URL. |
| Kelas Ingress | Mendeklarasikan implementasi controller Ingress mana yang memproses sekumpulan sumber daya Ingress tertentu. Asosiasikan MseIngressConfig dengan bidang Parameter kelas Ingress untuk menerapkan aturan manajemen traffic. |
| MseIngressConfig | CRD yang disediakan oleh MSE Ingress Controller untuk mendefinisikan konfigurasi gateway cloud-native MSE. |
| MSE Ingress Controller | Lapisan kontrol yang memantau CRD MseIngressConfig dan mengoordinasikan gateway cloud-native MSE untuk menerapkan aturan manajemen traffic yang diurai dari sumber daya Ingress. |
Referensi
-
Untuk instruksi instalasi, lihat Kelola komponen MSE Ingress Controller.
-
Untuk riwayat rilis, lihat Catatan rilis untuk gateway MSE Ingress.