All Products
Search
Document Center

Container Service for Kubernetes:Troubleshoot add-on errors

Last Updated:Jun 19, 2026

Temukan penyebab dan solusi untuk setiap kode kesalahan yang dikembalikan saat operasi add-on ACK gagal.

Referensi kode kesalahan

Error code Description
AddonOperationFailed.ResourceExists Resource yang dibutuhkan oleh add-on sudah ada di kluster
AddonOperationFailed.ReleaseNameInUse Helm release dengan nama yang sama seperti add-on sudah ada
AddonOperationFailed.WaitForAddonReadyTimeout Pod add-on tidak dapat mencapai status Ready setelah permintaan pembaruan diajukan
AddonOperationFailed.APIServerUnreachable ACK tidak dapat mengakses Kubernetes API server
AddonOperationFailed.ResourceNotFound Resource yang dibutuhkan oleh add-on tidak ditemukan
AddonOperationFailed.TillerUnreachable Helm V2 Tiller tidak dapat diakses
AddonOperationFailed.FailedCallingWebhook Webhook mutasi untuk resource add-on tidak dapat dipanggil
AddonOperationFailed.UserForbidden Tiller tidak memiliki izin Kontrol akses berbasis peran (RBAC) yang diperlukan
AddonOperationFailed.TillerNotFound Tidak ada pod Tiller yang sedang berjalan di kluster
AddonOperationFailed.ErrPatchingClusterRoleBinding ClusterRoleBinding yang dibutuhkan oleh add-on sudah ada tetapi memiliki konfigurasi yang bertentangan
AddonOperationFailed.ErrApplyingPatch Manifes YAML add-on tidak kompatibel antar versi

AddonOperationFailed.ResourceExists

Gejala

Konsol menampilkan kesalahan serupa:

Addon status not match, failed upgrade helm addon arms-cmonitor for cluster c3cf94b952cd34b54b71b10b7********, err: rendered manifests contain a resource that already exists. Unable to continue with update: ConfigMap "otel-collector-config" in namespace "arms-prom" exists and cannot be imported into the current release

Penyebab

Resource yang dibutuhkan oleh add-on sudah ada di kluster. Penyebab umum:

  • Versi lain (misalnya versi open-source) diinstal dengan metode berbeda.

  • Add-on diinstal dengan Helm V2, dan resource-nya tidak dihapus sebelum migrasi ke Helm V3.

  • Resource dengan nama yang sama dibuat secara manual.

Solusi

Hapus resource yang bertentangan dari pesan kesalahan, lalu coba ulang operasi tersebut.

Bagian berikut mencantumkan perintah untuk add-on tertentu.

arms-prometheus

arms-prometheus biasanya diinstal di namespace arms-prom. Hapus resource-nya, lalu instal ulang arms-prometheus.

kubectl delete ClusterRole arms-kube-state-metrics
kubectl delete ClusterRole arms-node-exporter
kubectl delete ClusterRole arms-prom-ack-arms-prometheus-role
kubectl delete ClusterRole arms-prometheus-oper3
kubectl delete ClusterRole arms-prometheus-ack-arms-prometheus-role
kubectl delete ClusterRole arms-pilot-prom-k8s
kubectl delete ClusterRoleBinding arms-node-exporter
kubectl delete ClusterRoleBinding arms-prom-ack-arms-prometheus-role-binding
kubectl delete ClusterRoleBinding arms-prometheus-oper-bind2
kubectl delete ClusterRoleBinding kube-state-metrics
kubectl delete ClusterRoleBinding arms-pilot-prom-k8s
kubectl delete ClusterRoleBinding arms-prometheus-ack-arms-prometheus-role-binding
kubectl delete Role arms-pilot-prom-spec-ns-k8s
kubectl delete Role arms-pilot-prom-spec-ns-k8s -n kube-system
kubectl delete RoleBinding arms-pilot-prom-spec-ns-k8s
kubectl delete RoleBinding arms-pilot-prom-spec-ns-k8s -n kube-system

ack-node-local-dns

Penting

Beban kerja tidak terpengaruh oleh penghapusan ini. Jangan menambahkan pod antara penghapusan dan pembaruan. Jika Anda melakukannya, hapus dan buat ulang pod tersebut setelah pembaruan agar cache DNS dimasukkan kembali.

kubectl delete MutatingWebhookConfiguration ack-node-local-dns-admission-controller

Setelah resource dihapus, perbarui ack-node-local-dns.

arms-cmonitor

kubectl delete ConfigMap otel-collector-config -n arms-prom
kubectl delete ClusterRoleBinding arms-prom-cmonitor-role-binding
kubectl delete ClusterRoleBinding arms-prom-cmonitor-install-init-role-binding
kubectl delete ClusterRole arms-prom-cmonitor-role
kubectl delete ClusterRole arms-prom-cmonitor-install-init-role
kubectl delete ServiceAccount cmonitor-sa-install-init -n kube-system

Setelah resource dihapus, instal atau perbarui arms-cmonitor.

AddonOperationFailed.ReleaseNameInUse

Penyebab

Helm release dengan nama yang sama sudah ada, sehingga mencegah instalasi atau pembaruan. Penyebab umum:

  • Versi lain diinstal dengan metode berbeda.

  • Sisa Helm release dari upaya instalasi sebelumnya masih tersisa.

Solusi

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

  2. Pada halaman Clusters, klik nama kluster target. Di panel kiri, pilih Applications > Helm.

  3. Temukan Helm release add-on tersebut. Pada kolom Actions, klik Delete. Di kotak dialog, pilih Clear Release Records lalu klik OK.

  4. Instal atau perbarui add-on tersebut.

AddonOperationFailed.WaitForAddonReadyTimeout

Penyebab

Pod add-on tidak dapat mencapai status Ready dalam periode timeout setelah pembaruan diajukan.

Troubleshooting

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

  2. Pada halaman Clusters, klik nama kluster target. Di panel kiri, pilih Operations > Event Center.

  3. Pada tab Events (Cluster Resource Events), atur Level ke Warning, pilih namespace tempat add-on dideploy, dan atur Type ke Pods. Tinjau detail event untuk mengidentifikasi penyebabnya.

Penyebab dan solusi umum

Penyebab 1: Pod tidak dapat dijadwalkan (FailedScheduling)

Node kluster tidak memenuhi persyaratan penjadwalan untuk pod add-on. Periksa detail event untuk pesan berikut:

Event message Cause Solution
Insufficient memory atau Insufficient cpu Node kekurangan sumber daya Hapus pod yang tidak diperlukan, tambahkan node ke kluster, atau tingkatkan konfigurasi node
the pod didn't tolerate Pod add-on tidak mentoleransi taint pada node Hapus taint dari node
didn't match pod anti-affinity rules Aturan anti-afinitas pod tidak dapat dipenuhi Tambahkan node ke kluster

Setelah menyelesaikan masalah penjadwalan, coba ulang pembaruan add-on.

Penyebab 2: Sandbox pod tidak dapat dibuat (FailedCreatePodSandBox)

Plugin jaringan tidak dapat mengalokasikan alamat IP ke pod. Periksa detail event:

AddonOperationFailed.APIServerUnreachable

Penyebab

ACK tidak dapat menjangkau Kubernetes API server, biasanya karena instans Server Load Balancer (SLB) yang mengekspos API server dikonfigurasi salah.

Solusi

Lihat Troubleshoot API server request exceptions.

AddonOperationFailed.ResourceNotFound

Penyebab

Resource add-on yang diperlukan hilang—kemungkinan dihapus atau dimodifikasi secara eksternal—sehingga mencegah pembaruan in-place.

Solusi

Uninstall add-on tersebut dan instal versi terbaru.

AddonOperationFailed.TillerUnreachable

Penyebab

Add-on menggunakan Helm V2, yang bergantung pada Tiller. Tiller mengalami kesalahan dan tidak dapat diakses.

Solusi

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

  2. Pada halaman Clusters, klik nama kluster target. Di panel kiri, pilih Workloads > Pods.

  3. Pilih namespace kube-system. Temukan dan hapus pod tiller. Sistem akan membuat ulang pod tersebut secara otomatis.

  4. Setelah pod Tiller mencapai status Ready, coba ulang operasi add-on.

AddonOperationFailed.FailedCallingWebhook

Gejala

Konsol menampilkan kesalahan serupa:

failed to create: Internal error occurred: failed calling webhook "rancher.cattle.io": failed to call webhook: Post "https://rancher-webhook.cattle-system.svc:443/v1/webhook/mutation?timeout=10s": no endpoints available for service "rancher-webhook"

Penyebab

Webhook mutasi untuk resource add-on tidak dapat dipanggil, sehingga memblokir pembaruan.

Solusi

Perbaiki webhook yang gagal sebagaimana tercantum dalam pesan kesalahan, lalu coba ulang pembaruan add-on.

Pada contoh tersebut, webhook rancher-webhook di namespace cattle-system tidak tersedia.

AddonOperationFailed.UserForbidden

Penyebab

Kluster menggunakan Helm V2, tetapi Tiller tidak memiliki izin RBAC untuk mengelola resource, sehingga mencegah operasi komponen.

Solusi

Berikan izin RBAC yang diperlukan kepada Tiller. Lihat Role-based access control.

AddonOperationFailed.TillerNotFound

Penyebab

Kluster menggunakan Helm V2, tetapi tidak ada pod Tiller yang berjalan.

Solusi

Lakukan troubleshooting pada pod tiller-deploy di namespace kube-system. Setelah pod berjalan normal, coba ulang operasi add-on. Lihat Troubleshoot pod issues.

AddonOperationFailed.ErrPatchingClusterRoleBinding

Penyebab

ClusterRoleBinding yang dibutuhkan oleh add-on sudah ada tetapi memiliki konfigurasi yang bertentangan, biasanya disebabkan oleh instalasi versi open-source secara terpisah.

Solusi

Uninstall versi komponen open-source tersebut:

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

  2. Pada halaman Clusters, klik nama kluster target. Di panel kiri, pilih Applications > Helm.

  3. Temukan Helm release add-on tersebut. Pada kolom Actions, klik Delete. Di kotak dialog, pilih Clear Release Records lalu klik OK.

  4. Instal atau perbarui add-on tersebut.

AddonOperationFailed.ErrApplyingPatch

Gejala

Konsol menampilkan kesalahan serupa:

spec.template.spec.initContainers[1].name: Duplicate value: "install-cni"

Penyebab

Manifes YAML versi yang terinstal tidak kompatibel dengan versi target. Penyebab umum:

  • Versi lain (misalnya versi open-source) diinstal dengan metode berbeda.

  • Manifes YAML add-on dimodifikasi secara manual.

  • Versi yang saat ini terinstal sudah tidak didukung lagi.

Solusi

Modifikasi manifes YAML komponen berdasarkan pesan kesalahan. Untuk bantuan lebih lanjut, kirim tiket.

Contoh: Konflik nama kontainer Flannel

Jika versi Flannel yang sudah tidak digunakan lagi diinstal, pembaruan dapat gagal dengan:

spec.template.spec.initContainers[1].name: Duplicate value: "install-cni"

Edit manifes DaemonSet Flannel:

kubectl -n kube-system edit ds kube-flannel-ds

Temukan kontainer install-cni di bawah spec.template.spec.containers dan hapus bagian tersebut (baris 7–21 pada contoh):

      containers:
      - name: kube-flannel
        image: registry-vpc.{{.Region}}.aliyuncs.com/acs/flannel:{{.ImageVersion}}
        command: [ "/opt/bin/flanneld", "--ip-masq", "--kube-subnet-mgr" ]
        ...
        # Baris yang tidak relevan tidak ditampilkan. Hapus baris komentar 7 hingga 21.
    # - command:
      # - /bin/sh
      # - -c
      # - set -e -x; cp -f /etc/kube-flannel/cni-conf.json /etc/cni/net.d/10-flannel.conf;
        # while true; do sleep 3600; done
      # image: registry-vpc.cn-beijing.aliyuncs.com/acs/flannel:v0.11.0.1-g6e46593e-aliyun
      # imagePullPolicy: IfNotPresent
      # name: install-cni
      # resources: {}
      # terminationMessagePath: /dev/termination-log
      # terminationMessagePolicy: File
      # volumeMounts:
      # - mountPath: /etc/cni/net.d
        # name: cni
      # - mountPath: /etc/kube-flannel/
         # Baris yang tidak relevan tidak ditampilkan. Hapus baris komentar 7 hingga 21.
          name: flannel-cfg
        ...

Menghapus baris-baris ini tidak mengganggu beban kerja yang sedang berjalan. Pembaruan rolling akan dimulai secara otomatis. Setelah selesai, perbarui Flannel dari Konsol ACK. Lihat Manage components.