CPU tidak memadai

Gejala

Saat memulai, pod telemetri akan masuk dan keluar dari status CrashLoopBackoff. Hal ini dapat menyebabkan jeda berkala dalam metrik atau grafik saat pod dimulai ulang. Anda juga dapat melihat perbedaan dengan data analisis karena beberapa bagian data tidak ada.

Pesan error

Saat menggunakan kubectl untuk melihat status pod, Anda akan melihat satu atau beberapa pod metrik dalam status CrashLoopBackoff. Lihat perintah berikut:

kubectl get pods -n APIGEE_NAMESPACE

Dengan APIGEE_NAMESPACE adalah namespace Kubernetes untuk komponen hybrid Apigee Anda. Untuk mengetahui informasi selengkapnya, lihat Membuat namespace apigee.

Contoh Output

NAME                                                      READY   STATUS             RESTARTS   AGE
apigee-metrics-default-telemetry-proxy-1104-hvwoo-zlmlw   0/1     CrashLoopBackoff   10         10m
apigee-metrics-adapter-apigee-telemetry-1104-7fyff-tts65  0/1     CrashLoopBackoff   10         10m
apigee-metrics-default-telemetry-proxy-1104-hvwoo-zlmlw   0/1     FailedScheduling   0          12m

Langkah-langkah diagnosis umum

  1. Periksa peristiwa untuk masalah pada pod telemetri dengan perintah berikut:
    kubectl -n apigee get event 

    Contoh Output

    LAST SEEN   TYPE      REASON           OBJECT                                                           MESSAGE
    53m         Normal    SuccessfulCreate job/apigee-cassandra-schema-val-jghunt-20250709-0820206-29251940 Created pod: apigee-cassandra-schema-val-jghunt-20250709-0820206-292519fkt7j
    53m         Normal    Completed        job/apigee-cassandra-schema-val-jghunt-20250709-0820206-29251940 Job completed
    43m         Normal    SuccessfulCreate job/apigee-cassandra-schema-val-jghunt-20250709-0820206-29251950 Created pod: apigee-cassandra-schema-val-jghunt-20250709-0820206-292519l87m8
    43m         Normal    Completed        job/apigee-cassandra-schema-val-jghunt-20250709-0820206-29251950 Job completed
    33m         Normal    SuccessfulCreate job/apigee-cassandra-schema-val-jghunt-20250709-0820206-29251960 Created pod: apigee-cassandra-schema-val-jghunt-20250709-0820206-29251962ncc
        
  2. Anda juga dapat memeriksa peristiwa pod telemetri dengan status CrashLoopBackOff menggunakan perintah berikut:
    kubectl -n apigee describe POD_NAME

    Dengan POD_NAME adalah nama pod yang berada dalam status CrashLoopBackOff.

    Contoh Output

     apigee-metrics-apigee-telemetry-app-1101-qc36n-dxzrv    
  3. Anda juga dapat memeriksa status cpu pod dengan perintah berikut:
    kubectl -n apigee get hpa | grep unknown

    Contoh Output

    apigee-metrics-apigee-telemetry-app-1101-qc36n-dxzrv   ReplicaSet/apigee-metrics-apigee-telemetry-app-1101-qc36n-dxzrv   /80%                                2         10        2          8h
     

Kemungkinan penyebab

Penyebab Deskripsi Petunjuk pemecahan masalah yang berlaku untuk
metrics.app.resources.requests.cpu dan metrics.app.resources.limits.cpu tidak ada cpu harus ditentukan dalam file overrides.yaml. Apigee hybrid

Penyebab

cpu tidak disebutkan dalam file overrides.yaml, sehingga cpu mendapatkan nilai yang tidak ditentukan.

Diagnosis

Periksa file overrides.yaml Anda untuk melihat apakah kedua nilai cpu ditentukan untuk metrics.app.resources.requests.cpu dan metrics.app.resources.limits.cpu.

Resolusi

Jika setelan cpu tidak ada dalam file overrides.yaml untuk metrik, berikan kedua nilai cpu dalam file overrides.yaml.

  1. Tambahkan konfigurasi berikut di bagian metrics dalam file overrides.yaml Anda:

    metrics:
      app: # The apigee-prometheus-app container in the "app" pod
        resources:
          requests:
            memory: 512Mi # Default value: 512Mi
            cpu: 500m # Default value: 500m
          limits:
            memory: 2Gi # default: 1Gi
            cpu: 500m # Default value: 500m
      

  2. Terapkan perubahan menggunakan perintah berikut:
    helm upgrade ENV_RELEASE_NAME apigee-env/ \
    --install \
    --namespace APIGEE_NAMESPACE \
    --set env=ENV_NAME \
    -f OVERRIDES_FILE
    • Dengan ENV_RELEASE_NAME adalah nama unik yang digunakan untuk melacak penginstalan dan upgrade diagram apigee-env. Meskipun biasanya sama dengan ENV_NAME, nama ini harus berbeda jika lingkungan Anda memiliki nama yang sama dengan grup lingkungan Anda. Misalnya, jika keduanya bernama dev, Anda akan menggunakan dev-env-release dan dev-envgroup-release untuk membedakannya.

    • Dengan APIGEE_NAMESPACE adalah namespace Kubernetes untuk komponen hybrid Apigee Anda. Untuk mengetahui informasi selengkapnya, lihat Membuat namespace apigee.

    • Dengan ENV_NAME adalah nama yang Anda gunakan saat membuat lingkungan di UI.

    • Dengan OVERRIDES_FILE adalah file overrides.yaml yang digunakan selama upgrade atau penginstalan.

Untuk mengetahui informasi selengkapnya, lihat Referensi properti konfigurasi.

Harus mengumpulkan informasi diagnostik

Jika masalah berlanjut bahkan setelah mengikuti petunjuk di atas, kumpulkan informasi diagnostik berikut, lalu hubungi Google Cloud Customer Care:

  1. File overrides.yaml.
  2. Output dari skrip Apigee hybrid must-gather.