All Products
Search
Document Center

Alibaba Cloud Service Mesh:Kurangi latensi push menggunakan lapisan kontrol remote ASM

Last Updated:Mar 11, 2026

Saat kluster bidang data berjalan di luar Alibaba Cloud—baik di penyedia cloud lain maupun di pusat data lokal—proxy sidecar harus mengakses lapisan kontrol Alibaba Cloud Service Mesh (ASM) melalui Internet. Seiring bertambahnya jumlah Pod, koneksi jaringan dan konsumsi bandwidth meningkat secara linear. Selain itu, perubahan konfigurasi atau layanan yang sering terjadi akan meningkatkan latensi push. Lapisan kontrol remote ASM mengatasi masalah ini dengan men-deploy instans lapisan kontrol lokal di dalam kluster eksternal, sehingga proxy sidecar menerima konfigurasi xDS secara lokal, bukan melalui tautan jaringan yang terbatas.

Cara kerja

Saat kluster bidang data berjalan di dalam Virtual Private Cloud (VPC) Alibaba Cloud, proxy sidecar terhubung ke lapisan kontrol ASM terkelola melalui jaringan VPC. Dalam kondisi ini, latensi rendah, push konfigurasi berjalan lancar, dan lapisan kontrol remote tidak diperlukan.

Namun, saat kluster bidang data berjalan di luar Alibaba Cloud, situasinya berubah. Semua Pod terhubung ke lapisan kontrol terkelola melalui Internet, sehingga jumlah koneksi dan penggunaan bandwidth meningkat seiring dengan jumlah Pod. Jika konfigurasi atau layanan sering berubah, latensi push pun meningkat.

Lapisan kontrol remote mengatasi hal ini dengan menjalankan instans lapisan kontrol di dalam kluster eksternal:

Remote control plane architecture

Dengan lapisan kontrol remote diaktifkan:

  • Konfigurasi xDS didorong ke proxy sidecar secara lokal, di dalam kluster.

  • Hanya sejumlah kecil koneksi yang tersisa antara lapisan kontrol ASM terkelola dan kluster eksternal, yang membawa pembaruan komponen lapisan kontrol serta data penemuan layanan.

  • Ketergantungan pada tautan jaringan berlatensi rendah dan bandwidth tinggi berkurang secara signifikan.

Batasan

Sebelum mengaktifkan lapisan kontrol remote, tinjau batasan berikut:

  • Buat resource ASM dengan kubeconfig ASM. Setelah Anda mengaktifkan lapisan kontrol remote, buat semua resource Kubernetes terkait ASM menggunakan kubeconfig dari instans ASM. Jika Anda menggunakan kubeconfig kluster remote, resource tersebut dapat ditimpa.

  • Penemuan layanan global berlaku. Beban kerja yang dikelola oleh lapisan kontrol ASM terkelola dapat mengakses layanan yang dikelola oleh lapisan kontrol remote. Komunikasi menggunakan mTLS secara default, dan gerbang ASM timur-barat didukung.

  • Nonaktifkan fitur akses API Kubernetes bidang data terlebih dahulu. Lapisan kontrol remote bertentangan dengan fitur Use the Kubernetes API of clusters on the data plane to access Istio resources. Nonaktifkan fitur tersebut sebelum mengaktifkan lapisan kontrol remote.

Prasyarat

Sebelum memulai, pastikan Anda telah memiliki:

Siapkan variabel konteks kluster

Untuk menghindari kesalahan saat beralih antar kluster, atur Variabel lingkungan untuk setiap konteks kubeconfig sebelum memulai:

export CTX_ASM=<kubeconfig-context-for-asm-instance>
export CTX_CLUSTER2=<kubeconfig-context-for-cluster-2>

Ganti placeholder dengan nilai aktual:

PlaceholderDescriptionExample
<kubeconfig-context-for-asm-instance>Nama konteks kubeconfig untuk instans ASM Andaasm-mesh-xxx
<kubeconfig-context-for-cluster-2>Nama konteks kubeconfig untuk kluster eksternalcluster-2-context

Semua perintah selanjutnya dalam panduan ini menggunakan variabel ini.

Aktifkan lapisan kontrol remote

  1. Buka resource ASMMeshConfig untuk diedit:

       kubectl --context="${CTX_ASM}" edit ASMMeshConfig
  2. Tambahkan bagian externalIstiodConfigurations di bawah .spec: Ganti <cluster-2-id> dengan ClusterID cluster-2.

       apiVersion: istio.alibabacloud.com/v1beta1
       kind: ASMMeshConfig
       metadata:
         name: default
       spec:
         # ... existing configuration ...
         externalIstiodConfigurations:
           <cluster-2-id>:
             replicas: 2
             # Optional: specify resource requests and limits.
             # The structure matches standard Kubernetes pod resource fields.
             # If omitted, ASM uses default resource settings.
    Catatan

    Mengaktifkan lapisan kontrol remote akan me-restart gerbang ASM di kluster target. Evaluasi dampaknya terhadap trafik Anda sebelum melanjutkan.

Deploy aplikasi uji dan verifikasi

  1. Deploy aplikasi sleep dan httpbin ke cluster-2. Lihat Deploy the httpbin application.

  2. Konfirmasi bahwa kedua Pod berjalan dengan injeksi sidecar: Output yang diharapkan: Angka 2/2 pada kolom READY menunjukkan bahwa proxy sidecar telah diinjeksikan bersama setiap kontainer aplikasi.

       kubectl --context="${CTX_CLUSTER2}" get pod
       NAME                       READY   STATUS    RESTARTS   AGE
       httpbin-7df7fxxxxx-xxxxx   2/2     Running   0          3h15m
       sleep-6b7f9xxxxx-xxxxx     2/2     Running   0          3h15m
  3. Kirim permintaan uji dari sleep ke httpbin: Output yang diharapkan: Teapot ASCII (HTTP 418) mengonfirmasi bahwa trafik mengalir melalui proxy sidecar dan lapisan kontrol remote menyajikan konfigurasi dengan benar.

       kubectl --context="${CTX_CLUSTER2}" exec deploy/sleep -it -- curl httpbin:8000/status/418
       -=[ teapot ]=-
    
              _...._
            .'  _ _ `.
           | ."` ^ `". _,
           \_;`"---"`|//
             |       ;/
             \_     _/
               `"""`

Konfigurasi akses lintas kluster

Secara default, beban kerja yang dikelola oleh lapisan kontrol ASM terkelola dapat mengakses layanan dari lapisan kontrol remote. Namun, sebaliknya tidak berlaku—layanan di balik lapisan kontrol remote tidak dapat mengakses layanan di balik lapisan kontrol terkelola.

Pilih opsi yang sesuai dengan kebutuhan Anda: