En esta página, se explican las decisiones de configuración del clúster principal que puedes tomar cuando creas un clúster en Google Kubernetes Engine (GKE), ya sea que uses la consola de Google 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 se puede acceder al clúster desde redes públicas hasta cómo deseas que reciba las actualizaciones de versión.
Muchas de las opciones que se analizan en esta guía no se pueden cambiar después de crear 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 disruptivo.
Debido a que muchas opciones de configuración de clústeres no se pueden cambiar después de su creación, 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 GKE y la arquitectura deGoogle 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 los 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. Debido a que Google Cloud administra y configura los clústeres de Autopilot de forma más completa que los clústeres estándar, estos tienen menos opciones de configuración disponibles.
Las opciones de configuración de todos los clústeres se dividen en las siguientes categorías:
- Nombre y otros metadatos: Cada clúster debe tener un nombre de identificación que sea único dentro de su proyecto. De manera opcional, también puedes agregar una descripción y etiquetas al 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 varias zonas de procesamiento en una región de Google Cloud.
- Membresía de la flota: Elige si deseas que tu clúster sea miembro de una flota.
- Herramientas de redes: Son opciones de redes, como 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 al clúster desde redes públicas.
- Administración de versiones y actualizaciones: Usa los 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 y Google 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 y el tamaño de los nodos.
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 estándar:
Opciones de clúster | Modo | |
---|---|---|
Autopilot | Estándar | |
Tipo de disponibilidad | Regional | Regional o zonal |
Canal de versiones | Rápido, Regular o Estable | Cualquier canal |
Versiones del clúster | Predeterminada o alguna otra versión disponible | Predeterminada o alguna 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 |
Tipo de 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 varias 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 cada 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 especificada. 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 estándar, 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 Standard 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 (solo clústeres estándar)
Los clústeres zonales tienen un solo plano de control en una sola zona. 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.
Clústeres de zona única
Un clúster de una zona tiene solo un plano de control que se ejecuta en una zona. Este plano de control administra las cargas de trabajo en los nodos que se ejecutan en la misma zona. Si ejecutas una carga de trabajo en una sola zona, esta carga de trabajo no estará disponible en caso de una interrupción zonal.
Clústeres de varias zonas
Un clúster de varias zonas tiene una sola réplica del plano de control que se ejecuta en una zona y nodos que se ejecutan en varias zonas. Las cargas de trabajo se ejecutan incluso durante una actualización del clúster o una interrupción de la zona donde 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. Los clústeres de varias zonas ofrecen un equilibrio entre disponibilidad y costo para cargas de trabajo coherentes. Si deseas mantener la disponibilidad, y la cantidad de nodos y grupos de nodos cambian con frecuencia, considera usar un clúster regional. Si ejecutas una carga de trabajo en varias zonas y hay una interrupción zonal, la carga de trabajo se interrumpe en esa zona, pero permanece disponible en otras.
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 añadir el nivel adicional de funciones por clúster. Una vez que un clúster está matriculado 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, este usa el nivel estándar de forma predeterminada, con algunas excepciones.
Asegúrate de comprender lo siguiente cuando selecciones el nivel de clúster:
- Muchas funciones de GKE Enterprise requieren una membresía de 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 funciones de GKE Enterprise habilitadas para la flota con un clúster, te recomendamos registrar el clúster en una flota cuando lo crees, ya que esto significa que el clúster heredará la configuración a nivel de la flota para las funciones empresariales. Puedes obtener más información sobre esto 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, incluso 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 crear el 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 para agregar clústeres a las 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 una serie de 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 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 red, puedes obtener más información sobre las herramientas de redes de GKE en Acerca de las herramientas de redes de GKE, con las prácticas recomendadas para las opciones de herramientas de redes en Prácticas recomendadas para las herramientas de redes de GKE. En esta sección, solo se describe un subconjunto de nuestras posibles opciones de red.
Red y subred
La red de 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. De forma opcional, también puedes especificar que deseas usar un rango de direcciones IP particular dentro de esa subred para tus Pods y servicios.
Estos parámetros de configuración no se pueden actualizar después de crear el clúster.
Opciones de aislamiento de red
Para personalizar el aislamiento de red en tu clúster, ten en cuenta los siguientes aspectos:
Acceso al plano de control: De forma predeterminada, el extremo interno y el extremo externo del plano de control están habilitados, y el extremo basado en DNS está inhabilitado. Puedes elegir las siguientes opciones:
- Inhabilita el extremo externo y el interno, y usa solo el extremo de DNS.
- Inhabilita el extremo externo solo para evitar el acceso a 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 nodo 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 Cómo personalizar el 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 rutasGoogle Cloud se denomina clúster basado en rutas.
De forma predeterminada, todos los clústeres de GKE nuevos usan el enrutamiento nativo de la VPC, que es la opción que recomendamos. Puedes cambiar este parámetro de configuración en 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 estabilidad de las funciones. Cuando creas un clúster, puedes elegir el canal de versiones que quieras. Los clústeres nuevos (tanto de Autopilot como de Standard) se inscriben en el canal de versiones regular de forma predeterminada, 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, pero 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 y los nodos del clúster a medida que las versiones nuevas están 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 estabilidad y disponibilidad de funciones. Usa las exclusiones y los períodos de mantenimiento 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 funciones 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 aún 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 a los 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 binaria, 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 para GKE.
Al igual que con otros parámetros de configuración, debes consultar a colegas expertos, en este caso, a los especialistas en seguridad de tu organización, antes de crear un clúster listo para la producción. Obtén más información sobre la seguridad de GKE en nuestra descripción general de seguridad y en Endurece la seguridad de tu clúster.
Cuenta de servicio para nodos
GKE usa cuentas de servicio de IAM adjuntas 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 de forma forzosa 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 necesarios para GKE.
Si usas la cuenta de servicio predeterminada de Compute Engine para otras funciones en tu proyecto o organización, es posible que la cuenta de servicio tenga más permisos que los que necesita GKE, lo que podría exponerte a riesgos de seguridad.
No puedes cambiar la cuenta de servicio de los clústeres del modo Autopilot ni de los grupos de nodos del modo Estándar después de su creación.
Configuración del grupo de nodos (solo para clústeres de Standard)
Como sabes por la descripción general de la administración de clústeres y los modos de operación de GKE, si usas Autopilot para tus clústeres, no debes preocuparte por la configuración de los nodos, ya que GKE los configura por ti. GKE administra por completo los nodos del clúster de Autopilot y todos usan el mismo sistema operativo (SO) del nodo.
Si decides crear un clúster estándar, puedes especificar una serie de opciones de nodos cuando creas 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.
- El SO del nodo que deseas usar para los nodos nuevos.
- Si deseas usar VMs Spot efímeros 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 de los parámetros de configuración del grupo de nodos de un clúster se pueden cambiar después de su creación, aunque todos los clústeres estándar requieren al menos un grupo de nodos. Si
no especificas una cantidad de nodos y 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.
Obtén más información sobre la configuración de los grupos de nodos en Acerca de los grupos de nodos y Cómo agregar y administrar grupos de nodos.
Referencia de la configuración
Encuentra 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 Arquitectura del clúster de GKE.
- Consulta una comparación en paralelo de los clústeres de Standard y Autopilot en Compara GKE Standard y Autopilot. * Comienza a crear clústeres: