En esta página, se explican las principales opciones de configuración del clúster que puedes elegir cuando creas un clúster en Google Kubernetes Engine (GKE), ya sea que uses la consola deGoogle Cloud , Google Cloud CLI o Terraform. Estas opciones te permiten personalizar una amplia variedad de atributos y comportamientos del clúster para satisfacer tus necesidades, desde si el clúster es accesible desde redes públicas hasta cómo deseas que reciba actualizaciones de versión.
Muchas de las opciones que se analizan en esta guía no se pueden cambiar después de que se crea un clúster. Estas incluyen opciones que afectan la disponibilidad y la red de un clúster. Si necesitas cambiar estas opciones, debes crear un clúster nuevo y, luego, migrar el tráfico hacia él, lo que podría ser perjudicial.
Dado que muchas opciones de configuración del clúster no se pueden cambiar después de la creación del clúster, planifica y diseña la configuración del clúster con los administradores y arquitectos de tu organización, los arquitectos de Cloud, los administradores de red o cualquier otro equipo responsable de definir, implementar y mantener la arquitectura de GKE yGoogle Cloud .
Esta página está destinada a administradores y arquitectos que definen soluciones de TI y arquitectura de sistema de acuerdo con la estrategia de la empresa. Para obtener más información sobre los roles comunes y las tareas de ejemplo a las que hacemos referencia en el contenido de Google Cloud , consulta Tareas y roles comunes de los usuarios de GKE Enterprise.
Antes de leer esta página, debes familiarizarte con lo siguiente, así como con los conceptos básicos de Kubernetes:
Nivel de administración de clústeres
Antes de analizar las opciones de clústeres, es importante comprender el nivel de flexibilidad, responsabilidad y control que necesitas para tu clúster. El nivel de control que necesitas determina el modo de operación que se usará en GKE y las opciones de configuración del clúster que debes realizar.
Cuando creas un clúster en GKE, puedes usar uno de los siguientes modos de operación:
Autopilot (recomendado): Proporciona una configuración de clúster completamente aprovisionada y administrada. Los clústeres de Autopilot están preconfigurados con una configuración de clúster optimizada que está lista para las cargas de trabajo de producción.
Estándar: Proporciona flexibilidad de configuración avanzada sobre la infraestructura subyacente del clúster. Para los clústeres creados con el modo Estándar, determina la configuración necesaria para las cargas de trabajo de producción.
Para obtener más información sobre estos modos y sobre Autopilot, consulta Modos de operación de GKE y la descripción general de Autopilot.
Puedes encontrar una comparación detallada de los dos modos en Compara GKE Standard y Autopilot.
Opciones de configuración del clúster
Después de elegir un modo de operación, debes seleccionar la configuración que necesitas para el clúster. Dado que los clústeres de Autopilot están más completamente administrados y configurados por Google Cloud que los clústeres Standard, tienen menos opciones de configuración disponibles.
Las opciones de configuración para todos los clústeres se dividen en las siguientes categorías:
- Nombre y otros metadatos: Cada clúster debe tener un nombre identificatorio que sea único dentro de su proyecto. También puedes agregar de forma opcional una descripción y etiquetas del clúster.
- Disponibilidad y escalabilidad: Especifica dónde deseas que se ejecuten el plano de control y los nodos del clúster, y si deseas varias réplicas del plano de control. Todos los clústeres de Autopilot son regionales, lo que significa que tienen varios planos de control en múltiples zonas de procesamiento en una región de Google Cloud.
- Membresía de la flota: Elige si quieres que tu clúster sea miembro de una flota.
- Herramientas de redes: Opciones de redes, incluida la red de nube privada virtual (VPC) y la subred en la que se encuentra el clúster, y si deseas que se pueda acceder a tu clúster desde redes públicas.
- Administración de versiones y actualizaciones: Usa canales de versiones para elegir el equilibrio que prefieras entre las funciones nuevas y la estabilidad cuando actualices el software de este clúster, y establece períodos de mantenimiento y exclusiones para elegir cuándo pueden ocurrir las actualizaciones y cuándo no.
- Seguridad: Esto incluye si el clúster usa la federación de identidades para cargas de trabajo para GKE y la cuenta de servicio que usan los nodos del clúster para autenticarse enGoogle Cloud.
- Funciones del clúster: Habilita y configura funciones adicionales de GKE yGoogle Cloud para este clúster, incluidas las copias de seguridad y la observabilidad. El modo Estándar también te permite crear clústeres Alfa de corta duración para probar las funciones Alfa de Kubernetes.
Además de estas, los clústeres estándar también tienen opciones en la siguiente categoría:
- Grupos de nodos: Especifica detalles sobre los nodos de tu clúster, incluidos los grupos de nodos, el sistema operativo del nodo y el tamaño del nodo.
En las siguientes secciones, se analizan algunas de estas categorías con más detalle, en particular, aquellas con opciones en las que no puedes cambiar la configuración después de crear el clúster. Para obtener una lista completa de las opciones de configuración, consulta la referencia de configuración.
En la siguiente tabla, se comparan las opciones disponibles en algunas áreas clave para los clústeres de Autopilot y Standard:
Opciones de clúster | Modo | |
---|---|---|
Autopilot | Estándar | |
Tipo de disponibilidad | Regional | Regional o zonal |
Canal de versiones | Rapid, Regular o Estable | Cualquier canal |
Versiones del clúster | Predeterminada o cualquier otra versión disponible | Predeterminada o cualquier otra versión disponible |
Enrutamiento de herramientas de redes | VPC nativa | Nativo de la VPC o basado en rutas |
Aislamiento de red | Personalizable | Personalizable |
Características de Kubernetes | Producción | Producción o Alfa |
Disponibilidad del clúster
Con GKE, puedes crear un clúster adaptado a los requisitos de disponibilidad de tu carga de trabajo y tu presupuesto. Puedes elegir entre clústeres regionales que tienen varias réplicas del plano de control en múltiples zonas de procesamiento en una Google Cloud región o clústeres zonales con un solo plano de control en una sola zona. Los clústeres de Autopilot siempre son regionales.
Para ayudarte a elegir qué tipo de clúster crear en el modo Estándar, consulta Elige un plano de control regional o zonal.
Estos parámetros de configuración no se pueden actualizar después de crear el clúster: un clúster zonal no puede convertirse en un clúster regional, y un clúster regional no puede convertirse en un clúster zonal.
Para las cargas de trabajo de producción, usa clústeres regionales, ya que, por lo general, ofrecen mayor disponibilidad que los clústeres zonales. Para los entornos de desarrollo, usa clústeres regionales con grupos de nodos zonales. Un clúster con un plano de control regional y grupos de nodos zonales tiene los mismos costos que un clúster zonal. Para obtener más información sobre las consideraciones específicas de la región, consulta Geografía y regiones.
Clústeres regionales
Un clúster regional tiene varias réplicas del plano de control que se ejecutan en varias zonas dentro de la Google Cloud región que especificaste. Siempre debes especificar una región cuando creas un clúster de Autopilot o cualquier otro clúster regional.
Solo para los clústeres regionales de Standard, también puedes elegir en qué zonas se ejecutan los nodos del clúster. Los nodos de un clúster regional pueden ejecutarse en varias zonas o en una sola zona según las ubicaciones de nodos configuradas. De forma predeterminada, GKE replica cada grupo de nodos en tres zonas de la región del plano de control. Cuando creas un clúster regional estándar o agregas un grupo de nodos nuevo, puedes cambiar la configuración predeterminada si especificas las zonas en las que se ejecutan los nodos del clúster. Todas las zonas deben estar dentro de la misma región que el plano de control.
Usa clústeres regionales para ejecutar tus cargas de trabajo de producción, ya que ofrecen mayor disponibilidad que los zonales.
- Para crear un clúster de Standard regional, consulta Crea un clúster regional.
- Para crear un clúster regional de Autopilot, consulta Crea un clúster de Autopilot.
No puedes cambiar la región de un clúster regional después de crearlo.
Clústeres zonales
Los clústeres zonales tienen un solo plano de control en una sola zona. Las cargas de trabajo se siguen ejecutando durante una actualización del clúster o una interrupción de la zona en la que se ejecuta el plano de control. Sin embargo, el clúster, sus nodos y sus cargas de trabajo no se pueden configurar hasta que el plano de control esté disponible. Según tus requisitos de disponibilidad de la carga de trabajo, puedes optar por distribuir los nodos para tu clúster zonal en una sola zona o en varias zonas.
Para crear un clúster zonal, consulta Crea un clúster zonal.
Ubicación y distribución de los nodos
Ya sea que uses clústeres regionales o zonales, puedes determinar con precisión la ubicación y la distribución de tus nodos en las zonas. Puedes configurar las zonas predeterminadas para todos los grupos de nodos futuros, así como asignar o cambiar las zonas específicas para los nodos dentro de los grupos de nodos existentes.
Clústeres de zona única
Un clúster de una sola zona, que puede ser regional o zonal, ejecuta cargas de trabajo en nodos ubicados en una sola zona. Si esa zona experimenta una interrupción, todas las cargas de trabajo dejarán de estar disponibles.
Los clústeres zonales se crean de forma predeterminada como clústeres de una sola zona, pero puedes actualizar esta configuración a clústeres multizonales.
Clústeres de varias zonas
Un clúster multizonal, que puede ser regional o zonal, mejora la disponibilidad de la carga de trabajo distribuyendo los nodos en varias zonas dentro de una sola región. Esto te permite ejecutar cargas de trabajo en varias zonas de una región. Si ejecutas una carga de trabajo en varias zonas y se produce una interrupción zonal, la carga de trabajo se interrumpe en esa zona, pero permanece disponible en otras zonas.
Distribuir los nodos de GKE en varias zonas puede generar cargos por salida de red entre zonas cuando los nodos necesitan comunicarse con pares ubicados en una zona diferente dentro de la región.
Los clústeres regionales se crean de forma predeterminada como clústeres multizonales, pero puedes actualizar esta configuración a clústeres de una sola zona.
Nivel del clúster
Como sabes por las ediciones de GKE, GKE tiene dos niveles de funciones: un nivel estándar de funciones disponibles para todos los usuarios de GKE y un nivel empresarial que agrega funciones potentes para trabajar a escala empresarial, muchas de las cuales se basan en la administración de flotas de GKE.
En el caso de los clústeres de GKE en Google Cloud, puedes seleccionar si deseas agregar el nivel adicional de funciones por clúster. Una vez que un clúster se inscribe en el nivel de GKE Enterprise, tienes derecho a usar todas las funciones empresariales disponibles con él. Si no especificas un nivel de clúster, el clúster usa el nivel estándar de forma predeterminada, con algunas excepciones.
Asegúrate de comprender lo siguiente cuando selecciones el nivel de tu clúster:
- Muchas funciones de GKE Enterprise requieren la membresía de la flota para funcionar. Puedes registrar un clúster en una flota durante la creación del clúster o después de crearlo. Si deseas usar las funciones de GKE Enterprise habilitadas para la flota con un clúster, te recomendamos que registres el clúster en una flota durante la creación del clúster, ya que esto significa que el clúster heredará la configuración a nivel de la flota para las funciones de Enterprise. Puedes obtener más información sobre este tema en Membresía de la flota.
- Solo puedes habilitar el nivel empresarial para un clúster si la API de GKE Enterprise (Anthos) está habilitada en el proyecto del clúster.
Este parámetro de configuración se puede cambiar después de crear el clúster.
Para obtener más detalles sobre las funciones incluidas en GKE Enterprise, incluido el subconjunto de funciones que no requieren membresía de flota, consulta Opciones de implementación de GKE Enterprise.
Membresía de la flota
Si tu organización usa varios clústeres, puedes simplificar la administración de varios clústeres si agregas los clústeres a una flota: una agrupación lógica de clústeres de Kubernetes. Crear una flota ayuda a tu organización a mejorar la administración de clústeres individuales a grupos completos de clústeres y te permite usar funciones habilitadas en la flota, como Ingress de varios clústeres, Sincronizador de configuración y Policy Controller.
Si bien puedes agregar clústeres a una flota en cualquier momento, si habilitaste GKE Enterprise, te recomendamos registrar clústeres nuevos de nivel empresarial en una flota durante la creación del clúster. Esto se debe a que estos clústeres “nacidos en la flota” se crean con la configuración predeterminada a nivel de la flota que elegiste para una serie de funciones empresariales y con los registros y las métricas recomendados ya habilitados. Puedes obtener más información al respecto en las siguientes guías:
- Administra características a nivel de la flota
- Registros habilitados de forma predeterminada
- Métricas habilitadas de forma predeterminada
Este parámetro de configuración se puede actualizar después de la creación del clúster para registrarlo o cancelar su registro, aunque no recomendamos mover clústeres con cargas de trabajo activas de una flota a otra.
Puedes obtener mucha más información sobre cómo agregar clústeres a flotas en Crea flotas para simplificar la administración de varios clústeres.
Configuración de red
Cuando creas un clúster de GKE, puedes especificar varios parámetros de configuración de red, incluida la red en la que se encuentra el clúster, el modo de enrutamiento de red y si deseas que se pueda acceder a los nodos del clúster desde redes públicas.
Si no eres administrador de red, debes consultar a los especialistas en redes de tu organización antes de crear un clúster listo para la producción, ya que muchas de estas opciones no se pueden cambiar después de la creación del clúster. Si eres administrador de redes, puedes obtener mucha más información sobre las herramientas de redes de GKE en Acerca de las herramientas de redes de GKE, con prácticas recomendadas para las opciones de redes en Prácticas recomendadas para las herramientas de redes de GKE. En esta sección, se describe solo un subconjunto de nuestras posibles opciones de redes.
Red y subred
La red de la nube privada virtual (VPC) en la que se encuentra un clúster determina con qué otros recursos de Compute Engine se puede comunicar. De forma predeterminada, los clústeres de GKE se crean en la red predeterminada de tu proyecto, aunque puedes elegir otra red si tú o tu administrador crearon una. Si está disponible, puedes especificar que deseas que tu clúster pertenezca a una subred de VPC específica; de lo contrario, se usará la subred predeterminada. También puedes especificar de forma opcional que deseas usar un rango de direcciones IP en particular dentro de esa subred para tus Pods y Services.
Estos parámetros de configuración no se pueden actualizar después de crear el clúster.
Opciones de aislamiento de red
Puedes personalizar el aislamiento de la red en tu clúster teniendo en cuenta los siguientes dos aspectos:
Acceso al plano de control: De forma predeterminada, se habilitan el extremo interno y el extremo externo del plano de control, y se inhabilita el extremo basado en DNS. Puedes elegir las siguientes opciones:
- Inhabilita los extremos externos e internos, y usa solo el extremo de DNS.
- Inhabilita el extremo externo solo para impedir el acceso a los clientes externos.
- Habilita las redes autorizadas para controlar qué direcciones IP llegan a los extremos del plano de control.
Configuración de redes del clúster: Puedes habilitar nodos privados en tu clúster para aislar por completo las cargas de trabajo de las redes públicas. Puedes habilitar nodos privados para clústeres completos o a nivel del grupo de nodos (para Standard) o de la carga de trabajo (para Autopilot). Habilitar nodos privados a nivel del grupo de nodos o de la carga de trabajo anula cualquier configuración de nodos a nivel del clúster.
Estos parámetros de configuración se pueden cambiar después de crear el clúster.
Para obtener más información sobre el aislamiento de red, consulta Acerca de la personalización del aislamiento de red y Personaliza tu aislamiento de red.
Usa Cloud NAT para proporcionar Pods de GKE con acceso a recursos con direcciones IP públicas. Cloud NAT mejora la postura de seguridad general del clúster, ya que los Pods no están expuestos de forma directa a Internet, pero aún pueden acceder a los recursos orientados a Internet.
Clústeres nativos de la VPC y basados en rutas
En GKE, los clústeres se pueden distinguir de acuerdo con la forma en la que enrutan el tráfico de un pod a otro. Un clúster que usa direcciones IP de alias se denomina clúster nativo de la VPC. Un clúster que usa Google Cloud rutas se denomina clúster basado en rutas.
De forma predeterminada, todos los clústeres nuevos de GKE usan el enrutamiento nativo de la VPC, que es la opción que recomendamos. Puedes cambiar este parámetro de configuración durante la creación del clúster para crear un clúster basado en rutas solo en el modo estándar. Este parámetro de configuración no se puede actualizar después de crear el clúster.
Puedes obtener más información sobre los clústeres nativos de la VPC y sus beneficios, incluidos los requisitos especiales que tienen, en Clústeres nativos de la VPC.
Usa el modo de red nativo de la VPC para tus clústeres. Este es el valor predeterminado para los clústeres de Autopilot.
Versiones y actualizaciones
Con los canales de versiones, GKE elige las versiones de software para un clúster con el equilibrio que elijas entre la disponibilidad y la estabilidad de las funciones. Cuando creas un clúster, puedes elegir el canal de versiones que desees. De forma predeterminada, los clústeres nuevos (tanto de Autopilot como estándar) se inscriben en el canal de versiones regular, aunque puedes elegir una versión específica durante la creación del clúster si es necesario.
Los clústeres de Autopilot siempre usan canales de versiones. Los clústeres estándar usan canales de versiones de forma predeterminada. Sin embargo, puedes elegir no inscribir tu clúster en un canal de versiones (aunque no recomendamos esta opción porque este parámetro de configuración te brinda un acceso más limitado a las funciones del clúster).
GKE actualiza automáticamente todos los clústeres con el tiempo, independientemente de la inscripción al canal de versiones. GKE actualiza automáticamente el plano de control del clúster y sus nodos a medida que hay nuevas versiones disponibles en ese canal de versiones. Puedes controlar el tiempo y el alcance de las actualizaciones con los períodos de mantenimiento y exclusiones.
Puedes cambiar el canal de versiones de un clúster en cualquier momento.
Para obtener información sobre las próximas actualizaciones automáticas, consulta las notas de la versión de GKE.
Elige un canal de versiones para que GKE seleccione las versiones para tu clúster según el equilibrio que prefieras entre la disponibilidad y la estabilidad de las funciones. Usa períodos de mantenimiento y exclusiones para controlar el tiempo y el alcance de las actualizaciones automáticas.
Funciones alfa (solo para clústeres estándar)
Las funciones nuevas en Kubernetes se enumeran como alfa, beta o estable, según el estado en el proceso de desarrollo. En la mayoría de los casos, las características de Kubernetes que se enumeran como beta o estable se incluyen en los clústeres de GKE.
Si quieres experimentar con funciones muy nuevas que no están listas para la producción, las funciones alfa están disponibles en clústeres alfa especiales de GKE. Un clúster Alfa tiene habilitadas todas las API Alfa de Kubernetes (a veces llamadas puertas de características). Puedes usar clústeres Alfa para pruebas tempranas y validación de las características de Kubernetes. Los clústeres Alfa no son compatibles con las cargas de trabajo de producción, no se pueden actualizar ni agregar a los canales de versiones, y vencen en un plazo de 30 días.
Las funciones alfa no están disponibles para los clústeres de Autopilot.
Para crear un clúster Alfa, consulta Crea un clúster Alfa.
Configuración de seguridad
GKE tiene varios parámetros de configuración de seguridad que puedes especificar cuando creas un clúster. Estos incluyen la configuración de encriptación, las funciones de seguridad, como la Autorización de binarios, la cuenta de servicio que deseas usar para los nodos del clúster (que se analiza con más detalle en la siguiente sección) y si tu clúster usa Workload Identity Federation for GKE.
Al igual que con otros parámetros de configuración, debes consultar a colegas expertos (en este caso, los especialistas en seguridad de tu organización) antes de crear un clúster listo para la producción. Puedes obtener más información sobre la seguridad de GKE en nuestra Descripción general de seguridad y Endurece la seguridad de tu clúster.
Cuenta de servicio para nodos
GKE usa cuentas de servicio de IAM que se adjuntan a tus nodos para ejecutar tareas del sistema, como el registro y la supervisión. Como mínimo, estas cuentas de servicio de nodo deben tener el rol de cuenta de servicio de nodo predeterminado de Kubernetes Engine (roles/container.defaultNodeServiceAccount
) en tu proyecto. De forma predeterminada, GKE usa la cuenta de servicio predeterminada de Compute Engine, que se crea automáticamente en tu proyecto, como la cuenta de servicio del nodo.
Si tu organización aplica la restricción de la política de la organización iam.automaticIamGrantsForDefaultServiceAccounts
, es posible que la cuenta de servicio predeterminada de Compute Engine en tu proyecto no obtenga automáticamente los permisos requeridos para GKE.
Si usas la cuenta de servicio predeterminada de Compute Engine para otras funciones en tu proyecto u organización, es posible que la cuenta de servicio tenga más permisos de los que necesita GKE, lo que podría exponerte a riesgos de seguridad.
No puedes cambiar la cuenta de servicio para los clústeres en modo Autopilot ni para los grupos de nodos en modo Estándar después de la creación.
Configuración del grupo de nodos (solo para clústeres de Standard)
Como sabes por el Resumen de la administración de clústeres y los modos de operación de GKE, si usas Autopilot para tus clústeres, no necesitas preocuparte por la configuración de nodos, ya que GKE los configura por ti. GKE administra por completo todos los nodos del clúster de Autopilot, y todos usan el mismo sistema operativo (SO) del nodo.
Si eliges crear un clúster estándar, puedes especificar varias opciones de nodos cuando crees un clúster, incluidas las siguientes:
- El nombre, la cantidad, el tamaño y la ubicación de los grupos de nodos que deseas usar. Los grupos de nodos son grupos de nodos dentro de tu clúster que comparten una configuración común.
- Es el SO del nodo que deseas usar para los nodos nuevos.
- Indica si deseas usar VMs Spot efímeras para los nodos.
- El tipo de máquina de Compute Engine que deseas usar para los nodos.
- La cuenta de servicio que deseas usar para los nodos, como se describe en Configuración de seguridad.
Algunos parámetros de configuración del grupo de nodos de un clúster se pueden cambiar después de la creación del clúster, aunque todos los clústeres estándar requieren al menos un grupo de nodos. Si no especificas una cantidad de nodos ni un tipo de máquina cuando creas un clúster estándar, su grupo de nodos predeterminado consta de tres nodos en cada una de las zonas del clúster, con la imagen de nodo predeterminada cos_containerd
y un tipo de máquina de uso general.
Puedes obtener más información sobre la configuración de grupos de nodos en Acerca de los grupos de nodos y Cómo agregar y administrar grupos de nodos.
Referencia de la configuración
Encontrarás una lista completa de las posibles opciones de configuración en las siguientes guías de referencia:
gcloud container clusters create-auto
: Referencia de Google Cloud CLI para clústeres de Autopilotgcloud container clusters create
: Referencia de Google Cloud CLI para clústeres estándargoogle_container_cluster
: Referencia de Terraform
¿Qué sigue?
- Obtén más información sobre la arquitectura del clúster en la arquitectura del clúster de GKE
- Consulta una comparación paralela de los clústeres de Standard y Autopilot en Compara GKE Standard y Autopilot.
- Comienza a crear clústeres: