All Products
Search
Document Center

:Gunakan Pemantauan Aplikasi Edisi eBPF untuk memantau aplikasi dalam lingkungan Kubernetes

Last Updated:Jul 06, 2025

Anda dapat menggunakan Pemantauan Aplikasi Edisi eBPF dari Application Real-Time Monitoring Service (ARMS) untuk memantau aplikasi yang diterapkan di lingkungan Kubernetes secara non-intrusif. Fitur ini memungkinkan Anda memantau aplikasi berdasarkan topologi, panggilan antarmuka, gambaran aplikasi, dan peringatan. Topik ini menjelaskan cara menggunakan Pemantauan Aplikasi Edisi eBPF untuk memantau aplikasi di lingkungan Kubernetes.

Catatan

Topik ini tidak berlaku untuk kluster Alibaba Cloud Container Service for Kubernetes (ACK). Untuk informasi tentang cara memantau aplikasi dalam kluster ACK, lihat Hubungkan Aplikasi Secara Manual ke Pemantauan Aplikasi Edisi eBPF.

Prasyarat

  • Versi kluster Kubernetes adalah 1.20 atau lebih baru.

  • Kluster dapat diakses melalui Internet, atau koneksi jaringan telah dibuat antara virtual private cloud (VPC) Alibaba Cloud dan kluster menggunakan instance Cloud Enterprise Network (CEN).

  • Arsitektur x86 digunakan, dan versi kernel adalah 4.19 atau lebih baru. Untuk persyaratan lingkungan lebih lanjut, lihat Persyaratan dan Batasan pada Sistem Operasi Pemantauan Aplikasi Edisi eBPF.

Langkah 1: Instal Helm v3

Untuk informasi tentang cara menginstal Helm v3, lihat Dokumentasi Helm.

Langkah 2: Instal agen ack-arms-cmonitor

Pemantauan Aplikasi Edisi eBPF hanya mendukung jenis aplikasi berikut: Deployment dan StatefulSet. Proses menghubungkan aplikasi Deployment dan aplikasi StatefulSet serupa. Untuk mengaktifkan Pemantauan Aplikasi Edisi eBPF agar memantau aplikasi Deployment, ikuti langkah-langkah berikut:

  1. Jalankan perintah wget berikut untuk mengunduh paket instalasi ack-arms-cmonitor:

    wget 'https://aliacs-app-catalog.oss-cn-hangzhou.aliyuncs.com/charts-incubator/ack-arms-cmonitor-4.1.2.tgz'
  2. Jalankan perintah berikut untuk mengekstrak paket instalasi ack-arms-cmonitor:

    tar xvf ack-arms-cmonitor-4.1.2.tgz
  3. Ubah variabel lingkungan IS_PUBLIC dalam file otel-collector-deployment.yaml menjadi public.

  4. Edit file values.yaml dalam paket instalasi. Sesuaikan parameter berikut sesuai dengan kebutuhan bisnis Anda dan simpan file tersebut.

    registry: registry-__ACK_REGION_ID__-vpc.ack.aliyuncs.com
    cluster_id: __ACK_CLUSTER_ID__
    accessKey: __ACCESSKEY__
    accessKeySecret: __ACCESSKEY_SECRET__
    uid: "__ACK_UID__"
    region_id: __ACK_REGION_ID__
    • registry: alamat gambar.

      Catatan

      Dalam contoh sebelumnya, alamat gambar digunakan untuk virtual private clouds (VPC). Jika aplikasi Anda diterapkan di Internet, gunakan alamat gambar berikut:

      registry-__ACK_REGION_ID__.ack.aliyuncs.com
    • __ACK_REGION_ID__: ID wilayah. Untuk informasi lebih lanjut tentang wilayah yang mendukung Pemantauan Aplikasi Edisi eBPF, lihat Wilayah yang Didukung.

    • __ACK_CLUSTER_ID__: ID unik kluster Kubernetes. Kami merekomendasikan Anda menentukan parameter ini dalam format <uid>-<clusterid>.

    • __ACCESSKEY__ dan __ACCESSKEY_SECRET__: ID AccessKey dan Rahasia AccessKey akun Alibaba Cloud Anda. Untuk informasi lebih lanjut tentang cara memperoleh ID AccessKey dan Rahasia AccessKey akun Alibaba Cloud Anda, lihat Memperoleh Pasangan AccessKey.

      Penting

      Pastikan bahwa kebijakan AliyunARMSFullAccess dan AliyunSTSAssumeRoleAccess dilampirkan ke akun Alibaba Cloud Anda.

    • __ACK_UID__: ID akun Alibaba Cloud Anda. Untuk memperoleh ID akun Alibaba Cloud Anda, arahkan penunjuk ke foto profil di sudut kanan atas Konsol Manajemen Alibaba Cloud.

  5. Instal agen ack-arms-cmonitor.

    Jalankan perintah berikut tanpa membuka paket instalasi ack-arms-cmonitor:

    helm3 upgrade --install ack-arms-cmonitor ack-arms-cmonitor --namespace arms-prom --create-namespace

Langkah 3: Edit file YAML aplikasi

  1. Jalankan perintah berikut untuk melihat file YAML aplikasi Deployment:

    kubectl get deployment {Nama aplikasi Deployment} -o yaml
    Catatan

    Jika Anda tidak mengetahui nama aplikasi Deployment, jalankan perintah berikut untuk melihat semua aplikasi Deployment. Cari aplikasi Deployment yang diperlukan dalam hasil, lalu lihat file YAML aplikasi tersebut.

    kubectl get deployments --all-namespace
  2. Jalankan perintah berikut untuk mengedit file YAML aplikasi Deployment:

    kubectl edit deployment {Nama aplikasi Deployment} -o yaml
  3. Tambahkan konten berikut ke parameter spec.template.metadata dalam file YAML.

    labels:
      armseBPFAutoEnable: "on"
      armseBPFCreateAppName: "<your-deployment-name>" # Ganti <your-deployment-name> dengan nama aplikasi.

    Berikut adalah contoh file YAML lengkap untuk membuat aplikasi Deployment di lingkungan Kubernetes dan mengaktifkan Pemantauan Aplikasi Edisi eBPF untuk memantau aplikasi:

    Tampilkan Detail File YAML

    apiVersion: apps/v1beta1 # untuk versi sebelum 1.8.0 gunakan apps/v1beta1
    kind: Deployment
    metadata:
      name: arms-springboot-demo
      labels:
        app: arms-springboot-demo
    spec:
      replicas: 2
      selector:
        matchLabels:
          app: arms-springboot-demo
      template:
        metadata:
          labels:
            app: arms-springboot-demo
            armseBPFAutoEnable: "on"
            armseBPFCreateAppName: "arms-k8s-demo"
        spec:
          containers:
            - resources:
                limits:
                  cpu: 0.5
              image: registry.cn-hangzhou.aliyuncs.com/arms-docker-repo/arms-springboot-demo:v0.1
              imagePullPolicy: Always
              name: arms-springboot-demo
              env:
                - name: MYSQL_SERVICE_HOST
                  value: "arms-demo-mysql"
                - name: MYSQL_SERVICE_PORT
                  value: "3306"
    ---
    apiVersion: apps/v1beta1
    kind: Deployment
    metadata:
      name: arms-demo-mysql
      labels:
        app: mysql
    spec:
      replicas: 1
      selector:
        matchLabels:
          app: mysql
      template:
        metadata:
          labels:
            app: mysql
        spec:
          containers:
            - resources:
                limits:
                  cpu: 0.5
              image: registry.cn-hangzhou.aliyuncs.com/arms-docker-repo/arms-demo-mysql:v0.1
              name: mysql
              ports:
                - containerPort: 3306
                  name: mysql
    ---
    apiVersion: v1
    kind: Service
    metadata:
      labels:
        name: mysql
      name: arms-demo-mysql
    spec:
      ports:
        # port yang harus dilayani oleh layanan ini
        - name: arms-mysql-svc
          port: 3306
          targetPort: 3306
      # label keys dan values yang harus cocok untuk menerima lalu lintas untuk layanan ini
      selector:
        app: mysql
    ---
  4. Setelah konfigurasi disimpan, aplikasi akan otomatis restart dan konfigurasi mulai berlaku.

    Setelah 2 hingga 5 menit, jika aplikasi Anda muncul di halaman Application Monitoring eBPF > Application List di Konsol ARMS dan data pemantauan spesifik dilaporkan, aplikasi Anda dipantau oleh Pemantauan Aplikasi Edisi eBPF.

Referensi

Setelah Anda menghubungkan aplikasi yang diterapkan di lingkungan Kubernetes ke Pemantauan Aplikasi Edisi eBPF, Anda dapat melihat metrik, dependensi hulu dan hilir, serta topologi aplikasi. Untuk informasi lebih lanjut, lihat Detail Aplikasi.