GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Memperbaiki helm tidak memiliki rilis yang dikerahkan Kesalahan

Pendahuluan

Di Helm, helm upgrade [release-name] [chart] perintah memungkinkan Anda meningkatkan rilis Anda ke versi baru. Namun, upaya untuk meningkatkan versi rilis terkadang dapat menghasilkan  “helm tidak memiliki rilis yang diterapkan ” kesalahan.

Dalam tutorial ini, kita akan membahas penyebab “helm tidak memiliki rilis yang diterapkan ” kesalahan serta beberapa solusi potensial.

Prasyarat

  • Akses ke terminal/baris perintah
  • Cluster Kubernetes disiapkan dan dijalankan
  • Helm dipasang dan dikonfigurasi

Apa yang Menyebabkan Kesalahan "helm tidak memiliki rilis yang diterapkan"?

Mulai Helm 2.7.1, menjalankan helm upgrade [release-name] [chart] perintah pada rilis yang sebelumnya gagal menghasilkan kesalahan berikut:

Error: UPGRADE FAILED: [release-name] has no deployed releases

Helm 2 membandingkan manifes penerapan saat ini dengan yang baru untuk menerapkan tambalan yang diperlukan. Namun, itu tidak membandingkan status sumber daya di antara manifes.

Jika penerapan sebelumnya gagal, kemungkinan cluster memiliki beberapa sumber daya yang hilang. Sebelum Helm 2.7.1, Helm akan mencoba memutakhirkan penerapan tanpa memasang sumber daya yang hilang. Untuk mencegah hal ini, pada versi 2.7.1, Helm menggunakan penerapan terbaru yang berhasil sebagai dasar untuk peningkatan. Jika tidak ada penerapan yang berhasil ditemukan, sistem akan mengembalikan “helm tidak memiliki rilis yang diterapkan ” pesan kesalahan.

Memperbaiki Kesalahan "helm tidak memiliki rilis yang diterapkan"

Ada beberapa cara untuk memperbaiki “helm tidak memiliki rilis yang diterapkan” kesalahan, kebanyakan dari mereka berfokus pada perubahan status penyebaran gagal yang menyebabkan masalah:

Solusi 1:Mengubah Status Penerapan

Di Helm 2, mengubah status rilis menjadi di-deploy memungkinkan Anda melewati masalah:

kubectl -n kube-system patch configmap [release name].[release version] --type=merge -p '{"metadata":{"labels":{"STATUS":"DEPLOYED"}}}'

Dimana:

  • [release name] adalah nama rilis yang ingin Anda perbarui.
  • [release version] adalah versi rilis Anda saat ini.

Karena Helm 3 menyimpan riwayat penerapan sebagai rahasia Kubernetes. Periksa rahasia penerapan:

kubectl get secrets

Temukan rahasia yang mengacu pada penerapan yang gagal, lalu gunakan perintah berikut untuk mengubah status penerapan:

kubectl patch secret [name-of-secret-related-to-deployment] --type=merge -p '{"metadata":{"labels":{"status":"deployed"}}}'

Solusi 2:Membersihkan Deployment yang Gagal

Menghapus rilis saat ini dan memulai yang baru dari awal akan memperbaiki masalah. Untuk melakukan ini dengan Helm 2, gunakan:

helm delete --purge [release name]

Dimana:

  • [release name] adalah nama rilis yang ingin Anda hapus.

Mulai Helm 3, menghapus rilis memerlukan uninstall perintah:

helm uninstall [release name]

1. Cara lain untuk menghapus rilis yang gagal adalah dengan terlebih dahulu memeriksa status penerapan Anda:

helm list -a

2. Jika status rilis Anda tidak deployed , periksa rahasia penerapan:

kubectl get secrets

3. Jelaskan item terakhir pada daftar rahasia untuk memeriksa statusnya:

kubectl describe secret [secret name]

Dimana:

  • [secret name] adalah nama rahasia yang ingin Anda periksa.

4. Jika rahasia memiliki status yang sama dengan penerapan yang gagal, hapus dengan menggunakan:

kubectl delete secret [secret name]

5. Tingkatkan versi rilis Anda dengan:

helm upgrade [release name]

Solusi 3:Memaksa Upgrade

Cara lain untuk mengatasi masalah ini adalah dengan memaksa upgrade dengan menggunakan:

helm upgrade [release name] --force

Dimana:

  • [release name] adalah nama rilis yang ingin Anda tingkatkan.

Di balik layar, ini melakukan pekerjaan yang mirip dengan helm delete --purge , menghapus rilis sebelumnya sebelum menginstal yang baru. Hal ini dapat menyebabkan hilangnya layanan, sehingga tidak cocok untuk rilis tertentu.


Cent OS
  1. Cara Memperbaiki "perintah semanage" Tidak Ditemukan Kesalahan di CentOS

  2. Bagaimana cara memperbaiki kesalahan Kegagalan Otentikasi Cron di Linux?

  3. Cara Memperbaiki kesalahan apt-get Failed to Fetch di rilis Ubuntu yang tidak didukung

  1. 403 Forbidden Error - Apa Itu dan Bagaimana Memperbaikinya

  2. Bagaimana Cara Memperbaiki Kesalahan Lokal?

  3. Bagaimana cara memperbaikinya - Kesalahan Apache:Tidak ada DirectoryIndex yang cocok?

  1. Cara Memperbaiki 500 Internal Server Error di WordPress

  2. Cara Memperbaiki Kesalahan 'Repositori tidak memiliki file rilis' di Ubuntu

  3. Cara Memperbaiki Kesalahan Konversi Dengan Kaliber