All Products
Search
Document Center

Container Service for Kubernetes:Gunakan AlbConfig untuk mengaktifkan Xtrace untuk Analisis Tracing

Last Updated:Mar 26, 2026

Managed Service for OpenTelemetry memberikan visibilitas end-to-end terhadap permintaan yang mengalir melalui layanan mikro Anda. Dengan mengaktifkan Xtrace di AlbConfig, ALB menyematkan ID jejak ke setiap permintaan pada lapisan ingress—sehingga Anda dapat mengkorelasikan log akses dengan jejak terdistribusi tanpa perlu melakukan instrumentasi pada masing-masing layanan secara individual.

Prasyarat

Sebelum memulai, pastikan Anda telah:

Cara kerja

Saat permintaan memasuki pendengar ALB, ALB menghasilkan ID jejak dan menyuntikkannya ke header permintaan menggunakan algoritma pengambilan sampel Zipkin. Permintaan tersebut, bersama dengan ID jejaknya, diteruskan ke layanan backend. Log akses untuk setiap permintaan—termasuk ID jejak—ditulis ke penyimpanan log Simple Log Service (SLS). Managed Service for OpenTelemetry membaca log ini dan merekonstruksi jejak lengkap, yang kemudian dapat Anda lihat di konsol OpenTelemetry.

Xtrace dikonfigurasi pada tingkat pendengar di AlbConfig. Laju pengambilan sampel berlaku seragam untuk seluruh traffic pada pendengar tersebut.

Aktifkan Xtrace untuk ALB Ingress

Langkah 1: Aktifkan Simple Log Service untuk kluster

Aktifkan Simple Log Service untuk kluster Anda. Setelah diaktifkan, kluster secara otomatis membuat proyek SLS. Untuk petunjuknya, lihat Kumpulkan log dari kontainer kluster ACK.

Langkah 2: Dapatkan ID proyek SLS

  1. Masuk ke Konsol ACK dan klik Clusters di panel navigasi kiri.

  2. Klik nama kluster Anda, lalu klik Cluster Information di panel navigasi kiri.

  3. Pada tab Basic Information, salin nilai dari bidang Simple Log Service Project. Anda akan menggunakan ID ini pada langkah berikutnya.

Langkah 3: Buat AlbConfig

AlbConfig membuat instans ALB dengan log akses Simple Log Service yang diaktifkan dan Xtrace dikonfigurasi pada pendengarnya.

  1. Buat file alb-test.yaml dengan konten berikut:

    Anda hanya dapat mengubah pengaturan Xtrace setelah log akses Simple Log Service diaktifkan pada instans ALB. Jika Anda menggunakan kembali instans ALB yang sudah ada, atur forceOverride: true di bawah spec.config untuk menimpa properti yang sudah ada. Lihat Gunakan kembali instans ALB yang sudah ada.
    Untuk petunjuk membuat vSwitch, lihat Buat dan kelola vSwitch.

    Referensi parameter Xtrace

    ParameterDeskripsiDefaultRentang
    tracingEnabledMengaktifkan Xtrace pada pendengarfalsetrue / false
    tracingSampleLaju pengambilan sampel. 10000 = 100%, 5000 = 50%, 1 = 0,01%1–10000
    tracingTypeAlgoritma pengambilan sampelZipkin
    apiVersion: alibabacloud.com/v1
    kind: AlbConfig
    metadata:
      name: alb-demo
    spec:
      config:
        name: alb-test
        addressType: Intranet
        zoneMappings: # vSwitch harus berada di zona yang didukung ALB dan VPC yang sama dengan kluster. Pilih minimal dua vSwitch di zona berbeda untuk ketersediaan tinggi.
        - vSwitchId: vsw-2vc82nndnoo**********  # Ganti dengan ID vSwitch Anda.
        - vSwitchId: vsw-2vc30f5mlhs**********
        accessLogConfig:
          logProject: "k8s-log-xz92lvykqj1siwvif****"  # Ganti dengan ID proyek SLS Anda dari Langkah 2.
          logStore: alb_xz92lvykqj1siwvif****           # Harus diawali dengan "alb_". Dibuat otomatis jika belum ada.
      listeners:
      - port: 80
        protocol: HTTP
        logConfig:
          accessLogRecordCustomizedHeadersEnabled: false
          accessLogTracingConfig:
            tracingEnabled: true    # Atur ke true untuk mengaktifkan Xtrace. Default: false.
            tracingSample: 9999     # Laju pengambilan sampel. Rentang: 1-10000, di mana 10000 = 100%. Contoh: 9999 = 99,99%.
            tracingType: Zipkin     # Algoritma pengambilan sampel. Hanya berlaku saat tracingEnabled bernilai true.
  2. Terapkan AlbConfig:

    kubectl apply -f alb-test.yaml

    Output yang diharapkan:

    albconfig.alibabacloud.com/alb-demo created

Langkah 4: Buat IngressClass

  1. Buat file alb.yaml dengan konten berikut:

    apiVersion: networking.k8s.io/v1
    kind: IngressClass
    metadata:
      name: alb
    spec:
      controller: ingress.k8s.alibabacloud/alb
      parameters:
        apiGroup: alibabacloud.com
        kind: AlbConfig
        name: alb-demo
  2. Terapkan IngressClass:

    kubectl apply -f alb.yaml

    Output yang diharapkan:

    ingressclass.networking.k8s.io/alb created

Langkah 5: Sebarkan layanan dan konfigurasikan routing Ingress

  1. Buat file cafe-service.yaml dengan konten berikut untuk menyebarkan Penyebaran coffee dan Layanan coffee-svc:

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: coffee
    spec:
      replicas: 2
      selector:
        matchLabels:
          app: coffee
      template:
        metadata:
          labels:
            app: coffee
        spec:
          containers:
          - name: coffee
            image: registry.cn-hangzhou.aliyuncs.com/acs-sample/nginxdemos:latest
            ports:
            - containerPort: 80
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: coffee-svc
    spec:
      ports:
      - port: 80
        targetPort: 80
        protocol: TCP
      selector:
        app: coffee
      type: NodePort
  2. Sebarkan Deployment dan Layanan:

    kubectl apply -f cafe-service.yaml

    Output yang diharapkan:

    deployment.apps/coffee created
    service/coffee-svc created
  3. Buat file cafe-ingress.yaml untuk mengonfigurasi aturan routing Ingress:

    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: cafe-ingress
    spec:
      ingressClassName: alb
      rules:
       - host: demo.domain.ingress.top
         http:
          paths:
          - path: /coffee
            pathType: ImplementationSpecific
            backend:
              service:
                name: coffee-svc
                port:
                  number: 80
  4. Terapkan Ingress:

    kubectl apply -f cafe-ingress.yaml

    Output yang diharapkan:

    ingress.networking.k8s.io/cafe-ingress created

Langkah 6: Konfigurasikan resolusi nama domain

Jika Anda menetapkan domain kustom di spec.rules.host, tambahkan Rekaman CNAME untuk domain tersebut yang mengarah ke nama DNS ALB. Untuk petunjuknya, lihat Buat dan gunakan ALB Ingress untuk mengekspos Layanan ke traffic eksternal.

Langkah 7: Kirim permintaan untuk menghasilkan data jejak

  1. Dapatkan alamat instans ALB:

    kubectl get ing

    Output yang diharapkan:

    NAME           CLASS   HOSTS                     ADDRESS                                              PORTS   AGE
    cafe-ingress   alb     demo.domain.ingress.top   alb-u53i28ewt580*****.cn-<Region>.alb.aliyuncs.com   80      16m
  2. Kirim permintaan ke layanan:

    Jumlah permintaan yang diperlukan sebelum jejak muncul di konsol bergantung pada laju pengambilan sampel Anda. Dengan tracingSample: 9999 (99,99%), satu permintaan saja sudah cukup. Dengan laju yang lebih rendah—misalnya, tracingSample: 100 (1%)—kirim minimal 100 permintaan untuk memastikan jejak tertangkap: ``bash for i in $(seq 1 100); do curl -s -o /dev/null -H Host:demo.domain.ingress.top http://alb-u53i28ewt580*****.cn-<Region>.alb.aliyuncs.com/coffee; done ``
    curl -H Host:demo.domain.ingress.top http://alb-u53i28ewt580*****.cn-<Region>.alb.aliyuncs.com/coffee

    Tanggapan berupa halaman HTML dengan judul Hello World.

Verifikasi pelacakan

Periksa log akses SLS

  1. Masuk ke Konsol ACK dan klik Clusters.

  2. Klik nama kluster Anda, lalu klik Cluster Information.

  3. Pada tab Basic Information, klik tautan di bidang Simple Log Service Project untuk membuka konsol SLS. Di panel navigasi kiri, klik penyimpanan log yang namanya diawali dengan alb_ (misalnya, alb_xz92lvykqj1siwvif****). Cari xtrace untuk memastikan permintaan berisi data Xtrace.

    image

Lihat jejak di konsol OpenTelemetry

  1. Masuk ke Konsol Managed Service for OpenTelemetry.

  2. Pada halaman Applications, pilih wilayah dari bilah navigasi atas dan klik nama aplikasi Anda.

  3. Di panel navigasi kiri, klik API Calls, lalu klik tab Trace untuk melihat data jejak. Tab ini menampilkan hingga 100 jejak dengan durasi terpanjang. Untuk informasi selengkapnya, lihat Panggilan Antarmuka.

Langkah berikutnya