Aktifkan topologi mesh saat Anda perlu memvisualisasikan dan memantau interaksi antar layanan. Graf topologi mesh memungkinkan Anda memantau kesehatan layanan secara real time, menganalisis latensi dan masalah komunikasi antar layanan, serta memahami alur dan distribusi traffic di seluruh layanan. Fitur ini membantu Anda mengidentifikasi dan menyelesaikan masalah dengan cepat guna memastikan keandalan dan performa tinggi layanan.
Pengenalan fungsi
Topologi mesh adalah alat observabilitas untuk Service Mesh. Fitur ini menyediakan visualisasi komprehensif atas traffic mesh dengan menggabungkan traffic permintaan real time dan data konfigurasi mesh, sehingga memberikan wawasan langsung mengenai perilaku pemanggilan layanan dan status kesehatannya untuk mempermudah identifikasi masalah. Topologi mesh menyediakan kemampuan berikut:
-
Graf topologi panggilan traffic: Topologi mesh memvisualisasikan traffic permintaan real time sebagai graf topologi.
-
Visualisasi konfigurasi mesh: Topologi mesh menggunakan konfigurasi dari Service Mesh Anda untuk menganotasi node pada graf topologi. Hal ini membantu Anda langsung memahami konfigurasi yang aktif, termasuk autentikasi peer, virtual service, destination rule, serta Pemutusan sirkuit dan Pembatasan laju ASM.
-
Visualisasi status kesehatan: Topologi mesh menggunakan warna node atau edge untuk merepresentasikan status kesehatan layanan atau permintaan, sehingga memudahkan lokalisasi node atau permintaan bermasalah.
-
Replay traffic: Replay traffic memungkinkan Anda memutar ulang traffic dari periode waktu tertentu di masa lalu, sehingga memungkinkan pemeriksaan menyeluruh atas traffic aplikasi selama interval tersebut.
Langkah 1: Aktifkan topologi mesh
Metode 1: Buat instans ASM baru
-
Login ke Konsol ASM. Di panel navigasi kiri, pilih .
-
Pada halaman Mesh Management, klik Create ASM Instance.
-
Pada bagian Observability, pilih Enable Prometheus Metrics. Lalu, pilih tipe Prometheus sesuai kebutuhan dan lakukan operasi terkait.
Prometheus type
Operation
Managed Service for Prometheus
Pilih Use Managed Service for Prometheus to collect monitoring metrics, lalu pilih Enable ASM Mesh Topology to Enhance Mesh Observability. Untuk detail integrasi Managed Service for Prometheus dan informasi penagihan, lihat Integrate Managed Service for Prometheus for mesh monitoring dan Billing.
Self-managed Prometheus
Pilih Integrate Self-Hosted Prometheus for Monitoring, lalu pilih Enable ASM Mesh Topology to Enhance Mesh Observability. Masukkan endpoint layanan Prometheus yang digunakan oleh topologi mesh ASM (yaitu endpoint akses layanan Prometheus self-managed Anda). Untuk detail integrasi self-managed Prometheus, lihat Integrate self-managed Prometheus for mesh monitoring.
Catatan-
Memilih Enable Prometheus Metrics mengaktifkan pengumpulan metrik untuk instans Service Mesh Anda. Ini tidak secara otomatis membuat instans ARMS atau instans Prometheus self-managed.
-
Mengosongkan kedua opsi Enable Prometheus Metrics dan Enable ASM Mesh Topology to Enhance Mesh Observability akan menonaktifkan topologi mesh.
-
-
Konfigurasikan informasi yang diperlukan, baca dengan cermat, dan pilih Service Agreement. Lalu, di bagian bawah halaman, klik Create Service Mesh.
Untuk detail item konfigurasi, lihat Create an ASM instance.
-
Tambahkan kluster ACK ke instans ASM yang baru dibuat. Untuk detailnya, lihat Add a cluster to an ASM instance.
Metode 2: Gunakan instans ASM yang sudah ada
Pastikan instans ASM Anda telah memiliki kluster ACK yang ditambahkan. Untuk detailnya, lihat Add a cluster to an ASM instance.
Versi ASM sebelum 1.12.4.50
-
Login ke Konsol ASM. Di panel navigasi kiri, pilih .
-
Pada halaman Mesh Management, klik nama instans target. Di panel navigasi kiri, pilih . Di sisi kanan halaman, klik Settings.
-
Pada panel Settings Update, pilih Enable Prometheus Metrics. Lalu, pilih tipe Prometheus sesuai kebutuhan dan lakukan operasi terkait.
Prometheus type
Operation
Managed Service for Prometheus
Pilih Use Managed Service for Prometheus to collect monitoring metrics, lalu pilih Enable ASM Mesh Topology to Enhance Mesh Observability. Untuk detail integrasi Managed Service for Prometheus dan informasi penagihan, lihat Integrate Managed Service for Prometheus for mesh monitoring dan Billing.
Self-managed Prometheus
Pilih Integrate Self-Hosted Prometheus for Monitoring, lalu pilih Enable ASM Mesh Topology to Enhance Mesh Observability. Masukkan endpoint layanan Prometheus yang digunakan oleh topologi mesh ASM (yaitu endpoint akses layanan Prometheus self-managed Anda). Untuk detail integrasi self-managed Prometheus, lihat Integrate self-managed Prometheus for mesh monitoring.
-
Setelah menyelesaikan konfigurasi, di bagian bawah panel Settings Update, klik OK.
Versi ASM 1.12.4.50 atau lebih baru
Topologi mesh bergantung pada integrasi Service Mesh dengan metrik Prometheus. Jika Anda belum mengintegrasikan Prometheus untuk pemantauan mesh, lakukan integrasi terlebih dahulu. Untuk detailnya, lihat Integrate Managed Service for Prometheus for mesh monitoring dan Integrate self-managed Prometheus for mesh monitoring. Untuk informasi penagihan Managed Service for Prometheus, lihat Billing.
-
Login ke Konsol ASM. Di panel navigasi kiri, pilih .
-
Pada halaman Mesh Management, klik nama instans target. Di panel navigasi kiri, pilih . Pada bagian Activate ASM mesh topology , lakukan operasi berikut berdasarkan versi ASM Anda.
-
Versi ASM sebelum 1.18.2.112: Klik Activate.
-
Versi ASM 1.18.2.112 atau lebih baru: Pilih salah satu mode penyebaran berikut. Untuk perbedaan antara kedua mode dan cara mengonfigurasi mode managed, lihat Enable mesh topology in managed mode.
-
Klik In-Kubernetes-cluster Mode, masukkan endpoint layanan Prometheus yang digunakan oleh topologi mesh ASM, lalu klik Activate.
-
Klik Managed Mode, klik Activate, konfigurasikan informasi yang diperlukan pada dialog yang muncul, lalu klik OK.
-
-
Langkah 2: Akses topologi mesh
Anda dapat mengakses topologi mesh dengan tiga cara. Akses langsung memerlukan versi ASM 1.12.4.50 atau lebih baru. Akses kustom memerlukan versi ASM 1.16.4.5 atau lebih baru.
Metode 1: Akses langsung ke topologi mesh
Jika versi ASM Anda 1.12.4.50 atau lebih baru, Anda dapat memilih untuk secara otomatis membuat instans Classic Load Balancer (CLB) guna mengakses topologi mesh ASM dan langsung mengakses layanan topologi mesh.
-
Login ke Konsol ASM. Di panel navigasi kiri, pilih .
-
Pada halaman Mesh Management, klik nama instans target. Di panel navigasi kiri, pilih .
-
Pada bagian Access, lakukan operasi berikut berdasarkan versi instans ASM Anda.
-
Versi ASM sebelum 1.15.3.120: Pilih Automatically Create Internet-facing CLB Instance to Access ASM Mesh Topology.
-
Versi ASM 1.15.3.120 atau lebih baru tetapi sebelum 1.17.2.19: Aktifkan sakelar di samping Automatically Create Internet-facing CLB Instance to Access ASM Mesh Topology. Pada dialog yang muncul, klik OK.
-
Versi ASM 1.17.2.19 atau lebih baru: Aktifkan sakelar di samping Create CLB Instance to Access ASM Mesh Topology. Pada dialog yang muncul, konfigurasikan pengaturan yang diperlukan sesuai kebutuhan, lalu klik OK.
Setelah mengaktifkan akses topologi mesh, Service Mesh Anda akan memasuki status pembaruan singkat.
-
-
Periksa apakah pembaruan Service Mesh Anda telah selesai.
-
Di panel navigasi kiri, pilih .
-
Pada bagian Basic Information, periksa Status Service Mesh Anda.
Jika Status bernilai Updating, pembaruan sedang berlangsung. Jika Status bernilai Running, pembaruan telah selesai.
-
-
Pada halaman Mesh Topology, di bagian Access, klik Click here to access ASM Mesh Topology atau Copy token and open in new window untuk menuju halaman login topologi mesh.
Metode 2: Gunakan gerbang ASM untuk mengakses topologi mesh
-
Buat ingress gateway dan tambahkan konfigurasi port yang mendukung akses topologi mesh ke ingress gateway tersebut. Untuk detailnya, lihat Create an ingress gateway service atau Manage ingress gateways using KubeAPI.
YAML berikut menunjukkan contoh konfigurasi port.
- name: http-kiali port: 20001 protocol: TCP targetPort: 20001spec: clusterIds: - c729bdf9ef09b4a259e693f76axxx cpu: {} externalTrafficPolicy: Local maxReplicas: 5 minReplicas: 2 ports: - name: status-port port: 15020 targetPort: 15020 - name: http2 port: 80 targetPort: 80 - name: https port: 443 targetPort: 443 - name: tls port: 15443 targetPort: 15443 - name: http-kiali port: 20001 protocol: TCP targetPort: 20001 -
Gunakan YAML berikut untuk membuat aturan gateway. Untuk detailnya, lihat Manage gateway rules.
apiVersion: networking.istio.io/v1alpha3 kind: Gateway metadata: name: kiali-gateway namespace: istio-system spec: selector: istio: ingressgateway servers: - hosts: - '*' port: name: http number: 20001 protocol: HTTP -
Gunakan YAML berikut untuk membuat virtual service. Untuk detailnya, lihat Manage virtual services.
apiVersion: networking.istio.io/v1alpha3 kind: VirtualService metadata: name: kiali-vs namespace: istio-system spec: gateways: - kiali-gateway hosts: - '*' http: - route: - destination: host: kiali port: number: 20001 -
Login ke topologi mesh.
-
Login ke Konsol ASM. Di panel navigasi kiri, pilih .
-
Pada halaman Mesh Management, klik nama instans target. Di panel navigasi kiri, pilih .
-
Pada bagian Config Info, klik Access from Ingress Gateway di samping Activate ASM mesh topology untuk menuju halaman login topologi mesh.
-
Metode 3: Akses kustom ke topologi mesh
Setelah mengaktifkan topologi mesh, sebuah Service bernama Kiali dibuat di namespace istio-system kluster Kubernetes Anda. Anda dapat mengakses topologi mesh dengan membuat layanan proxy untuk Service ini. Misalnya, buat reverse proxy Nginx untuk Service Kiali dan akses topologi mesh melalui Nginx. Anda dapat menggunakan Custom Access Configuration untuk menentukan cara mengakses Service Kiali. Metode ini memerlukan versi ASM 1.16.4.5 atau lebih baru. Untuk detail pemutakhiran versi ASM Anda, lihat Upgrade an ASM instance.
-
Login ke Konsol ASM. Di panel navigasi kiri, pilih .
-
Pada halaman Mesh Management, klik nama instans ASM. Di panel navigasi kiri, pilih .
-
Di bawah bagian Authentication, klik Expand advanced options. Pada bagian Customize Access Modes, konfigurasikan informasi yang diperlukan lalu klik Save configuration of Mesh Topology.
Configuration item
Description
Customize a Domain Name
Tentukan nama domain kustom yang dilayani oleh topologi mesh. Jika Anda menggunakan nama domain kustom untuk mengakses topologi mesh, konfigurasikan pengaturan ini. Jika tidak, alur login OIDC mungkin terpengaruh. Saat Anda login ke topologi mesh menggunakan OIDC, topologi mesh akan mengganti nama domain dalam Redirect URI dengan nama domain kustom Anda guna memastikan integrasi yang tepat dengan Aplikasi OAuth.
Customize a Port
Tentukan port tempat layanan topologi mesh mendengarkan. Nilai default-nya adalah 20001. Saat Anda mengatur ini, layanan topologi mesh akan mendengarkan pada port kustom yang Anda tentukan.
Customize a Service Root Path
Tentukan path root yang dilayani oleh topologi mesh. Nilai default-nya adalah /. Saat Anda mengatur ini, topologi mesh akan menyajikan konten dari path yang Anda tentukan. Saat mengakses topologi mesh, tambahkan path root kustom Anda ke alamat akses asli.
Select a Protocol (https/http)
Tentukan protokol yang dilayani oleh topologi mesh. Hanya http atau https yang didukung. Jika Anda mengakses topologi mesh menggunakan HTTPS, konfigurasikan pengaturan ini. Jika tidak, alur login OIDC mungkin terpengaruh. Saat Anda login ke topologi mesh menggunakan OIDC, topologi mesh akan mengganti bagian protokol dalam Redirect URI dengan protokol kustom Anda guna memastikan integrasi yang tepat dengan Aplikasi OAuth.
Langkah 3: Login ke topologi mesh
Anda dapat login ke topologi mesh dengan tiga cara. Login OIDC memerlukan versi ASM 1.15.3.120 atau lebih baru. Login identitas Akun Alibaba Cloud memerlukan versi ASM 1.16.4.5 atau lebih baru.
Metode 1: Login ke topologi mesh menggunakan token
Versi ASM sebelum 1.12.4.50
Dapatkan token dari Konsol ACK dan gunakan untuk login ke topologi mesh.
Login ke Konsol ACK. Di panel navigasi kiri, klik Clusters.
Pada halaman Clusters, klik nama kluster Anda. Di panel navigasi kiri, klik .
-
Pada halaman Secret, pilih istio-system untuk Namespaces, klik kiali-service-account-token-****, lalu klik ikon
di samping baris token untuk menyalin token. -
Pada halaman login topologi mesh, tempel token tersebut dan klik Log in untuk mengakses konsol topologi mesh.
Versi ASM 1.12.4.50 atau lebih baru
Dapatkan token dari Konsol ASM dan gunakan untuk login ke topologi mesh.
-
Login ke Konsol ASM. Di panel navigasi kiri, pilih .
-
Pada halaman Mesh Management, klik nama instans target. Di panel navigasi kiri, pilih .
-
Pada halaman Mesh Topology, di bagian Access, klik Copy token and open in new window.
-
Pada halaman login topologi mesh, tempel token tersebut dan klik Log in untuk mengakses konsol topologi mesh.
Metode 2: Login ke topologi mesh menggunakan OIDC
OIDC (OpenID Connect) adalah protokol otentikasi identitas dan otorisasi yang umum digunakan untuk mengimplementasikan Single Sign-On (SSO). Anda dapat mengintegrasikan dengan penyedia identitas (IdP) menggunakan protokol OIDC untuk login ke topologi mesh. Metode ini memerlukan versi ASM 1.15.3.120 atau lebih baru. Untuk detail pemutakhiran versi ASM Anda, lihat Upgrade an ASM instance.
-
Konfigurasikan IdP Anda. Untuk detailnya, lihat langkah 1 dan 2 di Integrate ASM with Alibaba Cloud IDaaS for SSO in mesh applications.
Atur Login Redirect URI ke alamat IP CLB topologi mesh (untuk akses CLB langsung) atau alamat gerbang ASM (untuk akses gerbang ASM). Contoh:
-
Jika mengakses topologi mesh melalui CLB dan IP CLB-nya adalah
xxx.xxx.xxx.xxx, atur Login Redirect URI menjadihttp://xxx.xxx.xxx.xxx:20001. Jangan tambahkan/atau path seperti/xxxsetelah20001. -
Jika mengakses topologi mesh melalui gerbang ASM dan IP gerbangnya adalah
yyy.yyy.yyy.yyy, atur Login Redirect URI menjadihttp://yyy.yyy.yyy.yyy:20001. Jangan tambahkan/atau path seperti/xxxsetelah20001.
-
-
Login ke topologi mesh menggunakan OIDC.
-
Login ke Konsol ASM. Di panel navigasi kiri, pilih .
-
Pada halaman Mesh Management, klik nama instans target. Di panel navigasi kiri, pilih .
-
Pada bagian Authentication, pilih Login with OIDC. Konfigurasikan informasi yang diperlukan, klik Save configuration of Mesh Topology, lalu klik Open ASM mesh topology in a new page.
-
Pada halaman login topologi mesh, klik Log In with OpenID untuk menuju halaman login aplikasi OIDC.
-
Metode 3: Login ke topologi mesh menggunakan identitas Akun Alibaba Cloud
Anda dapat mengintegrasikan dengan Aplikasi OAuth RAM Alibaba Cloud menggunakan protokol OIDC untuk login ke topologi mesh dengan identitas Akun Alibaba Cloud Anda. Untuk informasi lebih lanjut, lihat Web application logon to Alibaba Cloud.
Saat menggunakan metode ini, Service Mesh ASM secara otomatis membuat Aplikasi OAuth RAM Alibaba Cloud dengan awalan asm-kiali dan mengintegrasikannya dengan topologi mesh. Metode ini memerlukan versi ASM 1.16.4.5 atau lebih baru. Untuk detail pemutakhiran versi ASM Anda, lihat Upgrade an ASM instance.
-
Login ke Konsol ASM. Di panel navigasi kiri, pilih .
-
Pada halaman Mesh Management, klik nama instans ASM. Di panel navigasi kiri, pilih .
-
Pada bagian Login authentication method, pilih Alibaba Cloud account identity logon. Pada dialog yang muncul, klik Add callback address, masukkan alamat callback, lalu klik OK.
Mesh akan menjalani pembaruan singkat. Tunggu hingga pembaruan selesai sebelum melanjutkan.
Catatan-
Untuk format alamat callback, lihat Login Redirect URI di Metode 2: Login ke topologi mesh menggunakan OIDC.
-
Jika Anda menggunakan akses langsung ke topologi mesh, alamat callback akan diisi secara otomatis.
-
-
Pada halaman login topologi mesh, klik Log In with OpenID untuk login dengan identitas Akun Alibaba Cloud Anda.
FAQ
Mengapa topologi mesh tidak dapat dimuat saat menggunakan ARMS Prometheus untuk mengumpulkan metrik?
Jika Service Mesh ASM Anda memilih Use ARMS Prometheus to collect metrics dan Anda telah mengaktifkan token otentikasi untuk instans ARMS Prometheus Anda, topologi mesh tidak dapat mengakses instans ARMS Prometheus Anda, sehingga topologi mesh gagal dimuat. Pilih salah satu solusi berikut. Untuk informasi lebih lanjut, lihat Connect Prometheus monitoring data to local Grafana.
-
Solusi 1: Di Konsol ARMS, nonaktifkan token pada halaman Setting. Untuk informasi lebih lanjut, lihat Connect Prometheus data to Grafana or self-managed applications using HTTP API endpoints.
-
Solusi 2: Konfigurasikan token otentikasi ARMS Prometheus di topologi mesh untuk menghubungkan ke instans ARMS Prometheus Anda.
CatatanOperasi ini memerlukan versi ASM 1.15.3.120 atau lebih baru.
-
Login ke Konsol ASM. Di panel navigasi kiri, pilih .
-
Pada halaman Mesh Management, klik nama instans ASM. Di panel navigasi kiri, pilih .
-
Pada kotak teks di bagian Connection with ARMS Prometheus, masukkan token otentikasi yang dikonfigurasi untuk ARMS Prometheus. Lalu klik Save configuration of Mesh Topology untuk mengonfigurasi token otentikasi agar topologi mesh dapat mengakses instans ARMS Prometheus Anda.
-
Mengapa topologi mesh hanya menampilkan sebagian traffic?
Ikuti langkah-langkah berikut untuk pemecahan masalah.
-
Masalah konfigurasi
Pastikan pengamatan topologi mesh telah memilih jenis traffic yang benar (seperti gRPC, HTTP, atau TCP) dalam pengaturan tampilan traffic. Tidak memilih opsi ini dapat mencegah tampilan semua informasi traffic.
-
Batasan namespace
Di topologi mesh, pastikan Anda telah memilih namespace yang benar. Sebagian traffic mungkin berada di namespace yang tidak dipilih.
-
Pengumpulan dan pembaruan data
-
Pastikan instans Prometheus Anda mengumpulkan metrik dengan benar. ASM hanya menampilkan data yang berhasil dikumpulkan. Beberapa data traffic mungkin tidak muncul segera di graf topologi karena keterlambatan, kehilangan paket, atau masalah lainnya.
-
Pastikan semua beban kerja di kluster Anda telah disuntikkan proxy mesh. Hanya beban kerja dengan proxy mesh yang disuntikkan yang melaporkan metrik pemantauan traffic.
-
Pastikan halaman topologi mesh diperbarui secara real time, atau lakukan refresh manual untuk mendapatkan data traffic terbaru.
-
-
Efek konfigurasi proxy Sidecar dan traffic
Sebagian traffic mungkin terpengaruh oleh konfigurasi proxy Sidecar atau pengaturan traffic Sidecar di ASM, sehingga melewati proxy mesh dan menjadi tidak teramati. Periksa apakah konfigurasi proxy Sidecar Anda menonaktifkan proxy berdasarkan port atau alamat, atau apakah konfigurasi traffic Sidecar Anda menentukan tujuan traffic inbound dan outbound yang benar.
Referensi
-
Jika Anda menemukan permintaan tertentu dengan latensi abnormal, gunakan log akses untuk mengidentifikasi penyebabnya. Untuk detailnya, lihat Identify causes of abnormal request latency using access logs.
-
Untuk meminimalkan latensi pemanggilan layanan dengan menjaga traffic tetap berada dalam zona yang sama saat mengakses layanan target dari klien, gunakan routing same-zone-first. Untuk detailnya, lihat Observe same-zone-first routing using mesh topology.
-
Untuk mengamati topologi traffic lintas beberapa kluster, gunakan topologi mesh dalam mode managed. Ini hanya menyebar satu layanan topologi mesh untuk seluruh instans mesh, sehingga mengurangi upaya konfigurasi. Untuk detailnya, lihat Enable mesh topology in managed mode.
-
Intersepsi permintaan Sidecar mungkin mengganggu pemeriksaan kesehatan untuk aplikasi di mesh, sehingga menyebabkan kegagalan. Aktifkan Pengalihan pemeriksaan kesehatan untuk memastikan pemeriksaan dijalankan dengan benar. Untuk detailnya, lihat Enable health check redirection for applications in the mesh.