All Products
Search
Document Center

Alibaba Cloud Service Mesh:Tingkatkan ketersediaan dan elastisitas dengan gerbang ASM Serverless

Last Updated:Jun 21, 2026

Service Mesh (ASM) serverless gateway adalah jenis gerbang baru yang disediakan oleh ASM. Gerbang serverless membantu Anda menangani lonjakan lalu lintas untuk meningkatkan stabilitas sistem sekaligus menjaga biaya komputasi tetap rendah. Dibandingkan dengan gerbang ASM yang berjalan di kluster Container Service for Kubernetes (ACK) pada bidang data, gerbang serverless ASM menawarkan keunggulan berupa stabilitas tinggi, elastisitas tinggi, dan biaya rendah. Selain itu, gerbang serverless ASM diterapkan secara serverless dan dikelola sepenuhnya oleh ASM, sehingga sangat tersedia karena tidak bergantung pada kluster ACK. Topik ini menjelaskan cara menggunakan gerbang serverless ASM serta memperkenalkan log dan metrik terkait gerbang tersebut.

Prasyarat

Skenario

Gerbang serverless ASM membantu Anda menangani lonjakan lalu lintas untuk meningkatkan stabilitas sistem sekaligus menjaga biaya komputasi tetap rendah. Gerbang ini umumnya digunakan dalam skenario berikut:

  • Untuk layanan online dengan fluktuasi lalu lintas yang signifikan—seperti pendidikan online dan e-commerce—Anda dapat menggunakan gerbang serverless ASM untuk menangani lonjakan lalu lintas. Dengan arsitektur serverless, jumlah sumber daya tetap dapat dikurangi secara signifikan, sehingga membantu menekan biaya komputasi.

  • Ketika beberapa kluster ditambahkan ke satu instans ASM—misalnya, dua kluster ACK ditambahkan ke satu instans ASM—gerbang serverless ASM diterapkan secara independen dari kluster ACK tertentu, sehingga memberikan ketersediaan tinggi.

Langkah 1: Buat gerbang ingress serverless ASM

Saat ini, Anda hanya dapat membuat gerbang ASM Serverless melalui file YAML. Dibandingkan dengan gerbang ASM standar yang berjalan di kluster ACK bidang data, gerbang ASM Serverless memerlukan anotasi asm.alibabacloud.com/managed-by-asm: 'true' dan tidak memerlukan ID kluster ACK. Untuk mengumpulkan metrik, Anda dapat menggunakan anotasi asm.alibabacloud.com/export-metrics guna mengekspor metrik gerbang ke kluster ACK bidang data target.

  1. Masuk ke Konsol ASM. Di panel navigasi kiri, pilih Service Mesh > Mesh Management.

  2. Di halaman Mesh Management, klik nama instans ASM. Di panel navigasi kiri, pilih ASM Gateways > Ingress Gateway.

  3. Di halaman Ingress Gateway, klik Create from YAML. Masukkan nama untuk gerbang, gunakan konfigurasi YAML berikut, lalu klik Create.

    apiVersion: istio.alibabacloud.com/v1beta1
    kind: IstioGateway
    metadata:
      annotations:
        asm.alibabacloud.com/managed-by-asm: 'true'
        asm.alibabacloud.com/export-metrics: 'ack-cluster-id'
      name: ingressgateway
      namespace: istio-system
    spec:
      gatewayType: ingress
      dnsPolicy: ClusterFirst
      externalTrafficPolicy: Local
      hostNetwork: false
      ports:
        - name: http
          port: 80
          protocol: TCP
          targetPort: 80
        - name: https
          port: 443
          protocol: TCP
          targetPort: 443
      replicaCount: 1
      resources:
        limits:
          cpu: '2'
          memory: 2G
        requests:
          cpu: 200m
          memory: 256Mi
      rollingMaxSurge: 100%
      rollingMaxUnavailable: 25%
      runAsRoot: true
      serviceType: LoadBalancer

    Catatan: Gerbang serverless ASM yang Anda buat mendukung layanan LoadBalancer dan ClusterIP. Jika Anda mengatur parameter serviceType ke ClusterIP, pastikan pod klien dan gerbang saling terhubung. Misalnya, secara default, pod dalam virtual private cloud (VPC) yang sama dapat saling mengakses menggunakan plugin Terway.

  4. Periksa status gateway.

    1. Masuk ke Konsol ASM. Di panel navigasi kiri, pilih Service Mesh > Mesh Management.

    2. Di halaman Mesh Management, klik nama instans ASM target. Di panel navigasi kiri, pilih ASM Gateway > Ingress Gateway.

      Di halaman Ingress Gateway, jika status gerbang baru adalah Created, berarti gerbang berhasil dibuat.

Langkah 2: Buat aturan lalu lintas

  1. Buat nama domain HTTP.

    1. Masuk ke Konsol ASM. Di panel navigasi kiri, pilih Service Mesh > Mesh Management.

    2. Di halaman Mesh Management, klik nama instans ASM. Di panel navigasi kiri, pilih ASM Gateways > Ingress Gateway.

    3. Di halaman Ingress Gateway, klik gerbang target. Di panel navigasi kiri gerbang, klik Domain/Certificate. Di tab Domain, klik Create.

    4. Di panel Add domain, atur Domain ke *, Protocol ke HTTP, Port Name ke http, dan port ke 80. Lalu, klik Create.

  2. Impor layanan productpage.

    1. Di panel navigasi kiri gerbang, klik Upstream Service, lalu klik Import service.

    2. Di panel Import service, pilih namespace default, pilih productpage, klik ikon Dingtalk_20230302182310.png, lalu klik Submit.

  3. Buat aturan routing.

    1. Di panel navigasi kiri gerbang, klik Route management, lalu klik Create.

    2. Pada langkah set route detail, atur route type ke http, Namespaces ke default, dan Route Name ke productpage. Di bagian Matching Rules, atur matchRules ke Prefix dan Content ke /. Lalu, klik Next.

    3. Pada langkah set route destination, atur select upstream service ke productpage, lalu klik Next.

    4. Pada langkah Advanced Options, klik Create.

Langkah 3: Akses layanan productpage melalui gerbang serverless ASM

Di bilah alamat browser Anda, masukkan {Alamat IP Gateway}/productpage untuk melihat antarmuka pengguna aplikasi. Untuk mendapatkan alamat IP gerbang, lihat Dapatkan alamat IP gerbang ingress.

Langkah 4: Konfigurasikan fitur pengumpulan log akses gerbang serverless ASM

Penting

Jika Anda mengonfigurasi fitur pengumpulan log akses gerbang serverless ASM, gerbang akan dimulai ulang. Kami menyarankan agar Anda melakukan operasi ini selama jam sepi.

  1. Masuk ke Konsol ASM. Di panel navigasi kiri, pilih Service Mesh > Mesh Management.

  2. Di halaman Mesh Management, klik nama instans ASM. Di panel navigasi kiri, pilih ASM Gateways > Ingress Gateway.

  3. Di halaman Ingress Gateway, temukan gerbang target, klik View YAML di kolom Actions. Di editor YAML, tambahkan anotasi asm.alibabacloud.com/aliyun-logs-project: k8s-log-**** untuk menentukan proyek Log Service.

    Dalam contoh ini, log akses gerbang serverless ASM dikumpulkan ke proyek mesh-log-c4e1bbed247634d0482000d94e947****. Blok kode berikut menyediakan konfigurasi contoh:

    Tampilkan file ingressgateway.yaml

    apiVersion: istio.alibabacloud.com/v1beta1
    kind: IstioGateway
    metadata:
      annotations:
        asm.alibabacloud.com/managed-by-asm: 'true'
        asm.alibabacloud.com/aliyun-logs-project: mesh-log-c4e1bbed247634d0482000d94e947****
      name: ingressgateway
      namespace: istio-system
    spec:
     ....
  4. Klik OK untuk memperbarui gerbang Serverless.

Langkah 5: Konfigurasikan akses melalui HTTPS

  1. Jalankan perintah berikut untuk menghasilkan sertifikat Certificate Authority (CA).

    openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -subj '/O=myexample Inc./CN=aliyun.com' -keyout aliyun.root.key -out aliyun.root.crt 
    openssl req -out aliyun.com.csr -newkey rsa:2048 -nodes -keyout aliyun.com.key -subj "/CN=aliyun.com/O=myexample organization"
    openssl x509 -req -days 365 -CA aliyun.root.crt -CAkey aliyun.root.key -set_serial 0 -in aliyun.com.csr -out aliyun.com.crt
  2. Konfigurasikan sertifikat.

    1. Masuk ke Konsol ASM. Di panel navigasi kiri, pilih Service Mesh > Mesh Management.

    2. Di halaman Mesh Management, klik nama instans ASM. Di panel navigasi kiri, pilih ASM Gateways > Certificate Management.

    3. Di halaman Certificate Management, klik Create. Di panel Certificate Information, konfigurasikan parameter dan klik OK.

      Parameter

      Deskripsi

      Name

      Nama sertifikat. Untuk contoh ini, masukkan myexample-credential.

      Public Key Certificate

      Dokumen elektronik yang digunakan untuk membuktikan validitas kunci publik. Untuk contoh ini, masukkan konten file aliyun.com.crt yang dihasilkan di langkah 1 Langkah 5.

      Private Key

      Kunci privat. Untuk contoh ini, masukkan konten file aliyun.com.key yang dihasilkan di langkah 1 Langkah 5.

  3. Buat nama domain HTTPS.

    1. Di panel navigasi kiri, klik Ingress Gateway. Klik gerbang target. Di panel navigasi kiri gerbang, klik Domain/Certificate. Di tab Domain, klik Create.

    2. Di panel Add domain, atur Domain ke *, Protocol ke HTTPS, Port Name ke https, dan port ke 443. Untuk Certificate, pilih myexample-credential. Pilih Secure connections with standard TLS semantics., lalu klik Create.

  4. Jalankan perintah berikut untuk mengakses gerbang serverless ASM melalui HTTPS:

    curl -k -H Host:aliyun.com --resolve aliyun.com:443:{IP address of the desired ASM serverless gateway}  https://aliyun.com/productpage -I

Langkah 6: Lihat log akses gerbang serverless ASM

  1. Masuk ke Konsol Simple Log Service.

  2. Di area Projects, klik nama log target (nama log yang Anda konfigurasikan di Langkah 4.1). Di bilah navigasi kiri, klik ikon Dingtalk_20231122151017.png (Log Storage). Di daftar Logstore, klik mesh-ingress-log. Di kotak pencarian, masukkan productpage, lalu klik Search & Analyze.

    Hasil kueri menampilkan log akses untuk istio-ingressgateway. Di bidang content entri log, route_name bernilai productpage dan response_code bernilai 503 menunjukkan bahwa gerbang mengembalikan respons 503 untuk rute tersebut.

FAQ

Bagaimana cara mengekspor metrik gerbang serverless ASM?

  1. Pastikan pembuatan dan pengumpulan metrik diaktifkan untuk ASM, sehingga Anda dapat melihat dasbor metrik di halaman Observability Management Center > Monitoring metrics. Untuk informasi lebih lanjut, lihat Kumpulkan metrik ke Managed Service for Prometheus.

  2. Dalam file YAML untuk gerbang Serverless, tambahkan anotasi asm.alibabacloud.com/export-metrics: ${ack-cluster-id} untuk mengekspor metrik.

    Fitur ini hanya tersedia untuk instans ASM versi 1.18.0.147 atau lebih baru. Untuk informasi lebih lanjut tentang cara meningkatkan instans ASM, lihat Upgrade an ASM instance.

    Setelah anotasi asm.alibabacloud.com/export-metrics: ${ack-cluster-id} ditambahkan, layanan dan titik akhir gerbang serverless ASM disinkronkan ke kluster ACK yang ditentukan. Selanjutnya, Anda hanya perlu mengonfigurasi titik akhir untuk pengumpulan data di Managed Service for Prometheus.

  3. Di Konsol Application Real-Time Monitoring Service (ARMS), konfigurasikan titik akhir untuk pengumpulan data.

    1. Masuk ke Konsol ARMS.

    2. Di panel navigasi kiri, pilih Managed Service for Prometheus > Instances. Di pojok kiri atas, pilih wilayah target.

    3. Di halaman Instances, klik nama instans Prometheus. Di panel navigasi kiri, klik Settings.

    4. Di tab Settings pada halaman Settings, klik Edit Prometheus.yaml, tambahkan konfigurasi berikut, lalu klik Save.

      Tampilkan kode YAML

      scrape_configs:
      - job_name: istio-system/managed-envoy
        honor_timestamps: true
        honor_labels: false
        scrape_interval: 30s
        scheme: http
        metrics_path: /stats/prometheus
        relabel_configs:
        - regex: 'true'
          action: keep
          source_labels:
          - __meta_kubernetes_service_labelpresent_asm_sync_target
          replacement: $1
          separator: ;
        - regex: http-envoy-prom
          action: keep
          source_labels:
          - __meta_kubernetes_endpoint_port_name
          replacement: $1
          separator: ;
        - regex: (.*)
          action: replace
          source_labels:
          - __meta_kubernetes_namespace
          replacement: $1
          separator: ;
          target_label: namespace
        metric_relabel_configs:
        - regex: envoy_.*
          action: drop
          source_labels:
          - __name__
          replacement: $1
          separator: ;
        kubernetes_sd_configs:
        - role: endpoints
          namespaces: {}
          follow_redirects: true
        scrape_timeout: 10s

Apa yang harus saya lakukan jika tidak dapat mengakses aplikasi backend melalui gerbang serverless ASM?

  1. Pastikan grup keamanan kluster target pada bidang data tidak memblokir lalu lintas dari gerbang serverless ASM.

    1. Lihat Blok CIDR vSwitch instans ASM Anda.

      1. Masuk ke Konsol ASM. Di panel navigasi kiri, pilih Service Mesh > Mesh Management.

      2. Di halaman Mesh Management, klik nama instans ASM. Di panel navigasi kiri, pilih ASM Instance > Base Information.

      3. Di halaman Basic Information, klik tautan di sebelah kanan vSwitch. Di halaman detail vSwitch, temukan Blok CIDR vSwitch tersebut.

    2. Lihat grup keamanan kluster target pada bidang data.

      1. Masuk ke Konsol ACK. Di panel navigasi kiri, klik Clusters.

      2. Di halaman Clusters, klik nama kluster Anda. Di panel navigasi kiri, klik Cluster Information.

      3. Di halaman Cluster Information, klik tab Cluster Resources, lalu klik tautan di sebelah kanan Security Group.

      4. Di halaman detail grup keamanan, lihat aturan masuk grup keamanan tersebut. Pastikan Blok CIDR vSwitch instans ASM Anda dan port pod aplikasi backend berada dalam rentang yang ditentukan oleh aturan tersebut.

  2. Jika kode status seperti 404 dan 503 dikembalikan, periksa apakah aturan lalu lintas dikonfigurasi dengan benar dan apakah aplikasi backend berjalan sesuai harapan.