Service Mesh (ASM) dapat menyederhanakan pengelolaan microservice dalam arsitektur mikroservis. Topik ini menyediakan panduan cepat tentang cara menggunakan ASM untuk mengelola aplikasi.
Prosedur
Langkah | Operasi | Deskripsi |
1 | Untuk menggunakan ASM, Anda harus terlebih dahulu membuat instans ASM. ASM memungkinkan Anda melakukan berbagai operasi seperti manajemen traffic, manajemen keamanan, pemulihan kesalahan, observasi, dan pemantauan pada aplikasi. | |
2 | Add a Container Service for Kubernetes (ACK) cluster to the ASM instance | Aplikasi yang dideploy di instans ASM berjalan di dalam kluster. Oleh karena itu, Anda harus terlebih dahulu menambahkan kluster ACK ke instans ASM. |
3 | Create an ingress gateway in the ACK cluster that is added to the ASM instance | Gerbang masuk (ingress gateway) menyediakan titik masuk terpadu untuk merutekan lalu lintas masuk (inbound traffic) di Lapisan 7. Gerbang ini merutekan permintaan HTTP dari port berbasis TCP yang sama ke layanan Kubernetes yang berbeda berdasarkan konten permintaan tersebut. |
4 | Deploy an application in the ACK cluster that is added to the ASM instance | Setelah Anda men-deploy gerbang masuk di kluster ACK yang telah ditambahkan ke instans ASM, Anda dapat men-deploy aplikasi di kluster ACK tersebut. |
5 | ASM memungkinkan Anda merutekan traffic ke versi layanan yang berbeda berdasarkan rasio tertentu. Fitur ini berlaku untuk skenario seperti rilis canary dan pengujian A/B. Anda dapat menggunakan resource Istio untuk merutekan traffic ke versi layanan yang berbeda. | |
6 | Mesh Topology menyediakan observabilitas untuk aplikasi dalam instans ASM. Tool ini menyediakan antarmuka pengguna grafis (GUI) yang memungkinkan Anda memantau perilaku layanan. Anda dapat menggunakan Mesh Topology untuk melihat alur traffic dan komunikasi antar beban kerja (workload). |
FAQ
Mengapa saya tidak dapat menggunakan file kubeconfig instans ASM untuk men-deploy aplikasi?
Konsol ASM menyediakan file kubeconfig untuk menghubungkan ke instans ASM. Dengan file tersebut, Anda dapat menggunakan klien kubectl untuk mengelola Custom Resource Definitions (CRDs) Istio, seperti virtual services. Lapisan kontrol (control plane) instans ASM digunakan untuk mengelola resource Istio, sehingga Anda tidak dapat men-deploy aplikasi di lapisan kontrol.
Mengapa saya tidak dapat men-deploy CRDs Istio, seperti virtual services, di kluster yang dikelola oleh ASM?
Resource Istio dikelola di lapisan kontrol. Lapisan kontrol juga menyediakan file kubeconfig yang digunakan untuk menghubungkan ke instans ASM.
Mengapa saya tidak dapat mengelola resource Istio dengan menggunakan file kubeconfig kluster?
CRDs Istio disimpan di lapisan kontrol. Lapisan kontrol mengonversi aturan yang didefinisikan oleh CRDs Istio menjadi aturan dalam konfigurasi sidecar dan menerapkan aturan yang telah dikonversi tersebut.
Apa perbedaan antara namespace di lapisan kontrol instans ASM dan namespace di kluster pada bidang data (data plane)?
Namespace yang Anda buat di instans ASM, baik melalui Konsol ASM maupun menggunakan klien kubectl, hanya dimiliki oleh instans ASM tersebut. Namespace ini bersifat independen dari kluster Kubernetes pada bidang data yang dikelola oleh instans ASM. Saat Anda membuat atau menghapus namespace untuk instans ASM, namespace di kluster Kubernetes pada bidang data yang dikelola oleh instans ASM tidak akan terpengaruh.