Si se produce un error en la actualización de un clúster de Tanzu Kubernetes, puede reiniciar el trabajo de actualización y volver a intentar la actualización.
Problema
La actualización de un clúster de Tanzu Kubernetes falla y, como consecuencia, el estado del clúster es upgradefailed
.
Causa
Se pueden producir errores en la actualización de un clúster por diferentes motivos, uno de los cuales es un almacenamiento insuficiente. Para reiniciar un trabajo de actualización con errores y volver a intentar la actualización del clúster, complete el siguiente procedimiento.
Solución
- Inicie sesión en clúster supervisor como administrador. Consulte Conectarse al clúster supervisor como usuario vCenter Single Sign-On.
- Busque
update_job_name
.
kubectl get jobs -n vmware-system-tkg -l "run.tanzu.vmware.com/cluster-namespace=${cluster_namespace},cluster.x-k8s.io/cluster-name=${cluster_name}"
- Ejecute
kubectl proxy
de modo que curl
se pueda utilizar para enviar solicitudes.
Debería ver
Starting to serve on 127.0.0.1:8001
.
Nota: No puede utilizar
kubectl
para revisar o actualizar el
.status
de un recurso.
- Con
curl
, emita el siguiente comando de revisión para aumentar el valor de .spec.backoffLimit
.
curl -H "Accept: application/json" -H "Content-Type: application/json-patch+json"
--request PATCH --data '[{"op": "replace", "path": "/spec/backoffLimit", "value": 8}]'
http://127.0.0.1:8001/apis/batch/v1/namespaces/vmware-system-tkg/jobs/${update_job_name}
- Con
curl
, emita el siguiente comando de revisión para borrar .status.conditions
de modo que la controladora de trabajo cree nuevos pods.
$ curl -H "Accept: application/json" -H "Content-Type: application/json-patch+json"
--request PATCH --data '[{"op": "remove", "path": "/status/conditions"}]'
http://127.0.0.1:8001/apis/batch/v1/namespaces/vmware-system-tkg/jobs/${update_job_name}/status