Clústeres regionales

En esta página, se explica cómo funcionan los clústeres regionales en Google Kubernetes Engine (GKE). Puedes crear un clúster regional o ver más información sobre los diferentes tipos de clústeres.

Descripción general

De forma predeterminada, el plano de control (instancia principal) y los nodos de un clúster se ejecutan en una sola zona de procesamiento que especificas cuando creas el clúster. Los clústeres regionales aumentan la disponibilidad del plano de control (instancia principal) de un clúster y de sus nodos cuando los replican en varias zonas de una región. Esto proporciona las ventajas de los clústeres multizonales, con los siguientes beneficios adicionales:

  • Si una o más zonas (pero no todas) en una región experimentan una interrupción, el plano de control del clúster permanece accesible siempre que una réplica del plano de control permanezca disponible.
  • Durante el mantenimiento del clúster, como una actualización de este, solo hay una réplica del plano de control que no está disponible a la vez, y el clúster permanece operativo.

De forma predeterminada, el plano de control y cada grupo de nodos se replican en tres zonas de una región, pero puedes personalizar la cantidad de réplicas.

No puedes modificar si un clúster es zonal, multizonal o regional después de crear el clúster.

Cómo funcionan los clústeres regionales

Los clústeres regionales replican las instancias principales del clúster y los nodos de varias zonas dentro de una sola región. Por ejemplo, un clúster regional en la región us-east1 crea réplicas del plano de control y los nodos en tres zonas us-east1: us-east1-b, us-east1-c y us-east1-d. En el caso de una interrupción de la infraestructura, tus cargas de trabajo continúan ejecutándose, y los nodos se pueden volver a balancear de forma manual o mediante el escalador automático del clúster.

Entre los beneficios de usar clústeres regionales, se encuentran los siguientes:

  • Resistencia a fallas en una zona. Los clústeres regionales están disponibles en una región, en lugar de estar disponibles solo en una zona de una región. Si solo una zona deja de estar disponible, el plano de control de Kubernetes y tus recursos no se ven afectados.
  • Actualizaciones de instancia principal continuas, cambios de tamaño de la instancia principal y tiempo de inactividad reducido por fallas en la instancia principal. Con las réplicas redundantes del plano de control, los clústeres regionales proporcionan una mayor disponibilidad de la API de Kubernetes, por lo que puedes acceder a tu plano de control incluso durante las actualizaciones.

Limitaciones

  • De forma predeterminada, los clústeres regionales constan de nueve nodos (tres por zona) distribuidos de manera uniforme entre tres zonas de una región. Esto consume nueve direcciones IP. Si lo deseas, puedes reducir la cantidad de nodos a uno por zona. Las cuentas de Google Cloud recién creadas reciben solo ocho direcciones IP por región, por lo que es posible que debas solicitar un aumento de cuotas para las direcciones IP regionales en uso, según el tamaño de tu clúster regional. Si tienes muy pocas direcciones IP en uso disponibles, la creación del clúster fallará.

  • Para los clústeres regionales que ejecutan GPU, debes elegir una región que tenga GPU en tres zonas o especificar zonas con la marca --node-locations. De lo contrario, puede que aparezca un error como el siguiente:

    ERROR: (gcloud.container.clusters.create) ResponseError: code=400, message=
      (1) accelerator type "nvidia-tesla-k80" does not exist in zone us-west1-c.
      (2) accelerator type "nvidia-tesla-k80" does not exist in zone us-west1-a.
    

    Para obtener una lista completa de las regiones y zonas donde están disponibles las GPU, consulta GPU en Compute Engine.

  • No puedes crear grupos de nodos en zonas ajenas a las zonas del clúster. Sin embargo, puedes cambiar las zonas de un clúster, lo que hará que todos los nodos nuevos y existentes abarquen esas zonas.

Precios

El uso de clústeres regionales requiere más cuotas regionales de tu proyecto que un clúster zonal o multizonal similar. Asegúrate de comprender tus cuotas y precios de GKE antes de usar clústeres regionales. Si encuentras un error Insufficient regional quota to satisfy request for resource, tu solicitud excede la cuota disponible en la región actual.

Además, se te cobra por el tráfico de nodo a nodo en las zonas. Por ejemplo, si una carga de trabajo que se ejecuta en una zona necesita comunicarse con una carga de trabajo en una zona diferente, el tráfico entre zonas genera un costo. Para obtener más información sobre la salida entre zonas en la misma región (por GB), consulta la página de precios de Compute Engine.

Almacenamiento continuo en clústeres regionales

Los discos persistentes zonales son recursos zonales y los discos persistentes regionales son recursos multizonales. Cuando se agrega almacenamiento persistente, a menos que se especifique una zona, GKE asigna el disco a una sola zona aleatoria. Para obtener información sobre cómo controlar las zonas, consulta Zonas en discos persistentes.

Ajuste de escala automático de clústeres regionales

Ten en cuenta las siguientes consideraciones cuando uses el escalador automático del clúster para realizar un ajuste de escala automático en grupos de nodos en clústeres regionales.

También puedes obtener más información sobre los límites del ajuste de escala automático para clústeres regionales o sobre cómo el escalador automático del clúster realiza el balanceo entre zonas.

Sobreaprovisiona los límites de escalamiento

Para mantener la capacidad en el caso improbable de falla zonal, puedes permitir que GKE aprovisione en exceso tus límites de escalamiento a fin de garantizar un nivel mínimo de disponibilidad, incluso cuando algunas zonas no estén disponibles.

Por ejemplo, si aprovisionas en exceso un clúster de tres zonas al 150% (exceso de capacidad del 50%), puedes asegurarte de que el 100% del tráfico se enrute a zonas disponibles si se pierde un tercio de la capacidad del clúster. En el ejemplo anterior, esto se lograría si especificas un máximo de seis nodos por zona en lugar de cuatro. Si una zona falla, el clúster escala a 12 nodos en las zonas restantes.

De manera similar, si aprovisionas en exceso un clúster de dos zonas al 200%, puedes asegurarte de que el 100% del tráfico se redirija si se pierde la mitad de la capacidad del clúster.

Puedes obtener más información sobre el escalador automático del clúster o leer las Preguntas frecuentes sobre ajuste de escala automático en la documentación de Kubernetes.

Próximos pasos