Agrega o quita nodos de un clúster

En los clústeres de Anthos en equipos físicos, puedes agregar o quitar nodos en un clúster si editas las definiciones de su grupo de nodos. Puedes usar el comando kubectl para cambiar estas definiciones.

Existen tres tipos diferentes de grupos de nodos en clústeres de Anthos en equipos físicos: plano de control, balanceador de cargas y grupos de nodos trabajadores. Editas los nodos del plano de control y del balanceador de cargas a través de las definiciones en los recursos de clúster asociado, mientras editas las definiciones de grupos de nodos trabajadores directamente.

Visualiza el estado del nodo

Puedes ver el estado de los nodos y sus respectivos grupos de nodos con el comando kubectl get.

Por ejemplo, el siguiente comando muestra el estado de los grupos de nodos en el espacio de nombres del clúster my-cluster:

 kubectl -n my-cluster get nodepools.baremetal.cluster.gke.io

El sistema muestra resultados similares al siguiente:

  NAME                    READY   RECONCILING   STALLED   UNDERMAINTENANCE   UNKNOWN
  my-cluster              3       0             0         0                  0
  my-cluster-lb           2       0             0         0                  0
  np1                     3       0             0         0                  0

Si necesitas más información sobre cómo diagnosticar clústeres, consulta Diagnostica y restablece clústeres.

Cambia los nodos del plano de control

Puedes agregar o quitar nodos del plano de control si editas el arreglo de direcciones spec.controlPlane.nodePoolSpec.nodes de un clúster en la definición del recurso del clúster.

Ten en cuenta que editar directamente el grupo de nodos del plano de control no funciona, ya que la especificación del clúster es la definición confiable del grupo de nodos del plano de control.

En una configuración de alta disponibilidad (HA), se requiere un número impar de grupos de nodos del plano de control (tres o más) para establecer un quórum a fin de garantizar que, si falla un plano de control, otros asuman el trabajo. Si tienes una cantidad par de nodos de manera temporal al momento de agregar o quitar nodos para el mantenimiento o el reemplazo, tu implementación mantiene la alta disponibilidad siempre y cuando tengas suficiente quórum.

Cambia los nodos del balanceador de cargas

Puedes agregar o quitar los grupos de nodos del balanceador de cargas de un clúster si editas el arreglo de direcciones spec.loadBalancer.nodePoolSpec.nodes del clúster en el archivo de configuración del clúster.

Cambia los nodos trabajadores

Puedes agregar o quitar nodos trabajadores directamente con el comando de kubectl. Los grupos de nodos trabajadores deben tener, al menos, un nodo deseado.

En el siguiente ejemplo, el comando borra un grupo de nodos llamado np1, donde la variable del espacio de nombres del clúster es my-cluster:

  kubectl -n my-cluster delete nodepool np1
 

Del mismo modo, se puede cambiar el tamaño de los grupos de nodos si editas el arreglo spec.nodes de direcciones.

Ten en cuenta que cuando quitas nodos de un clúster, primero se desvían de cualquier Pod. Los nodos no se quitarán del clúster si no se pueden reprogramar los Pods en otros nodos. La eliminación de nodos solo quita el nodo del plano de control; el contenido del nodo no se restablece.

El siguiente comando kubectl edit te permite editar y confirmar cambios para el espacio de nombres del clúster my-cluster y el grupo de nodos np1:

  kubectl -n my-cluster edit nodepool np1