GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo arreglar el timón no tiene un error de lanzamiento implementado

Introducción

En Helm, la helm upgrade [release-name] [chart] El comando le permite actualizar su lanzamiento a una nueva versión. Sin embargo, intentar actualizar su versión a veces puede generar el mensaje  “helm no tiene versiones implementadas ” error.

En este tutorial, cubriremos las causas del "helm no tiene versiones implementadas ” así como varias posibles soluciones.

Requisitos previos

  • Acceso a la terminal/línea de comando
  • Un clúster de Kubernetes configurado y en ejecución
  • Helm instalado y configurado

¿Qué causa el error "helm no tiene versiones implementadas"?

A partir de Helm 2.7.1, se ejecuta la helm upgrade [release-name] [chart] comando en una versión fallida anteriormente produce el siguiente error:

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

Helm 2 compara el manifiesto de implementación actual con el nuevo para aplicar los parches necesarios. Sin embargo, no compara el estado de los recursos entre los manifiestos.

Si una implementación anterior falló, es probable que al clúster le falten algunos recursos. Antes de Helm 2.7.1, Helm intentará actualizar la implementación sin instalar los recursos faltantes. Para evitar esto, a partir de la versión 2.7.1, Helm usa la última implementación correcta como base para la actualización. Si no se encuentra una implementación exitosa, el sistema devuelve el mensaje "el timón no tiene versiones implementadas ” mensaje de error.

Reparación del error "el timón no tiene lanzamientos implementados"

Hay varias formas de solucionar el problema “el timón no tiene versiones implementadas” error, la mayoría de ellos centrados en cambiar el estado de la implementación fallida que causa el problema:

Solución 1:cambiar el estado de implementación

En Helm 2, cambiar el estado de lanzamiento a implementado le permite evitar el problema:

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

donde:

  • [release name] es el nombre de la versión que desea actualizar.
  • [release version] es la versión actual de su lanzamiento.

Dado que Helm 3 almacena el historial de implementación como secretos de Kubernetes. Compruebe los secretos de implementación:

kubectl get secrets

Encuentre el secreto que se refiere a la implementación fallida, luego use el siguiente comando para cambiar el estado de la implementación:

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

Solución 2:Limpiar implementaciones fallidas

Eliminar la versión actual y comenzar una nueva desde cero soluciona el problema. Para hacer esto con Helm 2, use:

helm delete --purge [release name]

donde:

  • [release name] es el nombre de la versión que desea eliminar.

A partir de Helm 3, la eliminación de una versión requiere la uninstall comando:

helm uninstall [release name]

1. Otra forma de eliminar una versión fallida es verificar primero el estado de su implementación:

helm list -a

2. Si el estado de su lanzamiento no es deployed , verifique los secretos de implementación:

kubectl get secrets

3. Describa el último elemento de la lista de secretos para comprobar su estado:

kubectl describe secret [secret name]

donde:

  • [secret name] es el nombre del secreto que desea comprobar.

4. Si el secreto tiene el mismo estado que la implementación fallida, elimínelo usando:

kubectl delete secret [secret name]

5. Actualice su versión con:

helm upgrade [release name]

Solución 3:forzar una actualización

Otra forma de resolver el problema es forzar una actualización usando:

helm upgrade [release name] --force

donde:

  • [release name] es el nombre de la versión que desea actualizar.

Detrás de escena, esto hace un trabajo similar a helm delete --purge , eliminando la versión anterior antes de instalar una nueva. Esto puede conducir a la pérdida del servicio, haciéndolo inadecuado para ciertas versiones.


Cent OS
  1. Cómo corregir el error de "comando de administración" no encontrado en CentOS

  2. ¿Cómo reparar el error de falla de autenticación de Cron en Linux?

  3. Cómo corregir el error apt-get Failed to Fetch en versiones de Ubuntu no compatibles

  4. ¿Cómo reparar el error de configuración regional?

  5. Cómo corregir - Error de Apache:¿No hay un índice de directorio coincidente?

¿Cómo reparar el error de cPanel:la dirección IP ha cambiado?

Cómo corregir:¿Error xml de lista de sitios web de SolidCP?

Cómo solucionar el error 403

Cómo arreglar un error de conexión a la base de datos

Cómo solucionarlo:el comando curl no encontró un error

Error de límite de ancho de banda excedido:¿cómo puedo solucionarlo?