Cuando necesites reparar o mantener nodos, puedes quitarlos y sus cargas de trabajo de tus clústeres de Anthos en clústeres de equipos físicos. El modo de mantenimiento quita nodos del clúster de forma segura junto con sus cargas de trabajo, de modo que puedas trabajar en ellos antes de restablecerlos en el clúster.
Elige los nodos que quieres activar en modo de mantenimiento mediante la especificación de los rangos de IP para los nodos seleccionados en el archivo de configuración del clúster. Después de actualizar el archivo de configuración, los clústeres de Anthos en equipos físicos desvían los nodos de su carga de trabajo y los quita del clúster de forma segura. Los nodos que elija deben estar listos y en el clúster.
Para colocar los nodos en modo de mantenimiento, realiza los siguientes pasos:
- Edita el archivo de configuración del clúster para seleccionar los nodos que deseas poner en modo de mantenimiento. Puedes hacerlo con un editor que elijas o mediante el siguiente comando:
- Agrega la entrada
maintenanceBlocks
al archivo de configuración de clúster a fin de especificar una sola dirección IP, o un rango de direcciones, para los nodos que deseas activar en modo de mantenimiento. A continuación, se muestra una entrada de muestra (ten en cuenta que el rango de IP se muestra solo como muestra): - Verifica el estado de los nodos que pones en modo de mantenimiento con el comando
kubectl get nodes
: - Para mostrar la cantidad de nodos en modo de mantenimiento, ejecuta el comando
kubectl get nodepools
en el clúster. Los resultados son similares a los que se muestran a continuación:
kubectl -n CLUSTER_NAMESPACE edit cluster CLUSTER_NAME
metadata: name: my-cluster namespace: my-namespace spec: maintenanceBlocks: cidrBlocks: - 172.16.128.1-172.16.128.64
Una vez que actualices la configuración del clúster, los clústeres de Anthos en equipos físicos comienzan a activar el modo de mantenimiento.
kubectl get nodes -n CLUSTER_NAME
En la lista, los nodos del clúster muestran los nodos seleccionados con el estado SchedulingDisabled
, lo que indica que están en modo de mantenimiento. Deberías ver una lista similar a la lista de ejemplos a continuación:
NAME STATUS ROLES AGE VERSION user-anthos-baremetal-01 Ready master 2d22h v1.17.8-gke.16 user-anthos-baremetal-04 Ready <none> 2d22h v1.17.8-gke.16 user-anthos-baremetal-05 Ready,SchedulingDisabled <none> 2d22h v1.17.8-gke.16 user-anthos-baremetal-06 Ready <none> 2d22h v1.17.8-gke.16
NAME READY RECONCILING STALLED UNDERMAINTENANCE UNKNOWN np1 3 0 0 1 0
Además de los resultados EN CONDERMAINS de kubectl get nodepools
, verás los siguientes taints en el nodo en modo de mantenimiento: baremetal.cluster.gke.io/maintenance:NoExecute
y baremetal.cluster.gke.io/maintenance:NoSchedule
.