En esta página, se muestra cómo crear un clúster alfa de Google Kubernetes Engine (GKE), que es un clúster de GKE con las APIs y funciones alfa de Kubernetes habilitadas. Con un clúster Alfa, todas las puertas de funciones Alfa disponibles con la versión de Kubernetes están habilitadas de forma predeterminada. También se habilitan los interruptores de funciones en versión beta que Kubernetes habilita de forma predeterminada. Puedes modificar los valores predeterminados de GKE para habilitar los interruptores de funciones que desees. Para obtener más información sobre qué interruptores de funciones están disponibles con versiones específicas y qué funciones beta están habilitadas de forma predeterminada, consulta Interruptores de funciones para características alfa o beta en la documentación de Kubernetes.
Para obtener más información sobre cómo funcionan los clústeres de GKE y cómo elegir qué tipo de clúster de GKE crear, consulta Arquitectura del clúster de GKE y Acerca de las opciones de configuración del clúster.
Antes de comenzar
Antes de comenzar, asegúrate de haber realizado las siguientes tareas:
- Habilita la API de Google Kubernetes Engine. Habilitar la API de Google Kubernetes Engine
- Si deseas usar Google Cloud CLI para esta tarea, instala y, luego, inicializa gcloud CLI. Si ya instalaste gcloud CLI, ejecuta el comando
gcloud components update
para obtener la versión más reciente. Es posible que las versiones anteriores de gcloud CLI no admitan la ejecución de los comandos que se describen en este documento.
- Verifica que tengas el permiso correcto para crear clústeres. Como mínimo, debes ser un administrador de clústeres de Kubernetes Engine.
- Verifica que conozcas las limitaciones de los clústeres alfa.
Configura cuentas de servicio de IAM para GKE
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.
Para otorgar el rol roles/container.defaultNodeServiceAccount
a la cuenta de servicio predeterminada de Compute Engine, completa los siguientes pasos:
Console
- Ve a la página Bienvenido:
- En el campo Número del proyecto, haz clic en Copiar en el portapapeles.
- Ve a la página IAM:
- Haz clic en Grant access.
- En el campo Principales nuevas, especifica el siguiente valor:
ReemplazaPROJECT_NUMBER-compute@developer.gserviceaccount.com
PROJECT_NUMBER
por el número de proyecto que copiaste. - En el menú Selecciona un rol, selecciona el rol de Cuenta de servicio de nodo predeterminado de Kubernetes Engine.
- Haz clic en Guardar.
gcloud
- Busca tu Google Cloud número de proyecto:
gcloud projects describe PROJECT_ID \ --format="value(projectNumber)"
Reemplaza
PROJECT_ID
con el ID del proyecto.El resultado es similar a este:
12345678901
- Otorga el rol
roles/container.defaultNodeServiceAccount
a la cuenta de servicio predeterminada de Compute Engine:gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:PROJECT_NUMBER-compute@developer.gserviceaccount.com" \ --role="roles/container.defaultNodeServiceAccount"
Reemplaza
PROJECT_NUMBER
por el número de proyecto del paso anterior.
Crea un clúster alfa
Puedes crear un clúster alfa con la consola de Google Cloud o gcloud CLI. Para crear un clúster que especifique las marcas de funciones que se habilitarán o inhabilitarán de forma diferente a los valores predeterminados, usa gcloud CLI.
Console
En la consola de Google Cloud , ve a la página Crea un clúster de Kubernetes.
En la sección Aspectos básicos del clúster, completa lo siguiente:
- Ingresa el nombre de tu clúster.
- En Tipo de ubicación, selecciona Zonal y, luego, selecciona la zona deseada para tu clúster.
- Si creas un clúster multizonal, selecciona la casilla de verificación Especificar las ubicaciones predeterminadas de nodos y, luego, elige las zonas adicionales en las que deseas que se ejecute el clúster.
En la lista desplegable Canal de versiones, selecciona Sin canal.
Opcional: Especifica una versión del plano de control en la lista desplegable Versión.
Opcional: Configura otros parámetros para tu nuevo clúster.
Opcional: Si deseas registrar tu clúster nuevo en una flota, ve a la sección Registro de flotas y sigue las instrucciones de la consola Google Cloud para crear y registrar un clúster nuevo y completar el registro del clúster.
En el panel de navegación, en Grupos de nodos, haz clic en default-pool.
En la sección Detalles del grupo de nodos, completa lo siguiente:
- Ingresa un Nombre para el Grupo de nodos predeterminado.
- Opcional: Elige la Versión del nodo.
- Ingresa la Cantidad de nodos que deseas crear en el clúster. Debes tener una cuota de recursos disponible para los nodos y sus recursos (como las rutas de firewall).
- Opcional: Puedes elegir inhabilitar las actualizaciones automáticas de nodos, pero te recomendamos que revises las consideraciones antes de inhabilitar las actualizaciones automáticas de nodos antes de elegir esta opción.
- Borra Habilitar actualización automática y Habilitar reparación automática.
En el panel de navegación, en Grupos de nodos, haz clic en Nodos.
En la lista desplegable Tipo de imagen, selecciona la imagen de nodo.
Elige la Configuración de la máquina predeterminada para usar en las instancias. Cada tipo de máquina se factura de manera diferente. El tipo de máquina predeterminado es
e2-medium
. Para obtener información sobre el precio del tipo de máquina, consulta la hoja de precios de tipos de máquinas.En la lista desplegable Tipo de disco de arranque, selecciona el tipo de disco deseado.
Ingresa el Tamaño de disco de arranque.
Opcional: En el panel de navegación, en Grupos de nodos, haz clic en Seguridad.
- De manera opcional, especifica una cuenta de servicio de IAM personalizada para tus nodos:
- En la página Configuración avanzada, expande la sección Seguridad.
- En el menú Cuenta de servicio, selecciona la cuenta de servicio que prefieras.
Te recomendamos que especifiques una cuenta de servicio de IAM con privilegios mínimos que tus nodos puedan usar en lugar de la cuenta de servicio predeterminada de Compute Engine. Para obtener información sobre cómo crear una cuenta de servicio con privilegios mínimos, consulta Usa una cuenta de servicio privilegio mínimo mínimos.
En el panel de navegación, en Clúster, haz clic en Funciones.
Haz clic en Habilitar funciones Alfa de Kubernetes en este clúster.
Para leer y confirmar que comprendes la advertencia, selecciona Entiendo las consecuencias.
Haz clic en Crear.
gcloud
Ejecuta el siguiente comando:
gcloud container clusters create CLUSTER_NAME \
--enable-kubernetes-alpha \
--no-enable-autorepair \
--no-enable-autoupgrade \
--location CONTROL_PLANE_LOCATION [\
--alpha-cluster-feature-gates FEATURE_GATES_LIST]
Reemplaza lo siguiente:
CLUSTER_NAME
: el nombre que eliges para el clústerCONTROL_PLANE_LOCATION
: Es la ubicación de Compute Engine del plano de control de tu clúster. Proporciona una región para los clústeres regionales o una zona para los clústeres zonales.--cluster-version VERSION
: Especifica la versión de GKE que se ejecutará en el clúster (opcional). Si se omite, el clúster ejecuta la versión de parche predeterminada para la creación del clúster para Sin canal, como se muestra en la tabla Versiones actuales.FEATURE_GATES_LIST
: Es la lista de marcas de funciones que se habilitarán o inhabilitarán de forma diferente a los valores predeterminados. Cada cadena representa la habilitación o inhabilitación de una puerta de lanzamiento de una función. Por ejemplo,featureX=true, featureY=false
Cuando omites esta marca, GKE crea el clúster con los valores predeterminados de GKE, lo que significa que todas las marcas de funciones en versión alfa disponibles con la versión de Kubernetes están habilitadas. También se habilitan los interruptores de funciones beta que Kubernetes habilita de forma predeterminada. Para obtener más información sobre qué interruptores de funciones están disponibles con versiones específicas y qué funciones beta están habilitadas de forma predeterminada, consulta Interruptores de funciones para características alfa o beta en la documentación de Kubernetes. Cuando incluyes esta marca, modificas qué puertas de funciones se habilitan en comparación con la configuración predeterminada de GKE. Para obtener más información, consulta Puertas de funciones y clústeres alfa.
Te recomendamos que especifiques una cuenta de servicio de IAM con privilegios mínimos que tus nodos puedan usar en lugar de la cuenta de servicio predeterminada de Compute Engine. Para obtener información sobre cómo crear una cuenta de servicio con privilegios mínimos, consulta Usa una cuenta de servicio privilegio mínimo mínimos.
Para especificar una cuenta de servicio personalizada en gcloud CLI, agrega la siguiente marca a tu comando:
--service-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
Reemplaza SERVICE_ACCOUNT_NAME por el nombre de tu cuenta de servicio con privilegios mínimos.
Se te solicitará que confirmes una advertencia de que el clúster Alfa no se actualiza y se borra después de 30 días:
This will create a cluster with Kubernetes alpha features enabled.
- This cluster will not be covered by the GKE SLA and should
not be used for production workloads.
- You will not be able to upgrade the master or nodes.
- The cluster will be deleted after 30 days.
Interactúa con un clúster mediante kubectl
Después de crear un clúster, debes configurar kubectl
para poder interactuar con el clúster de la línea de comandos.
Verifica el estado del interruptor de función para un clúster alfa
Con los clústeres Alfa, puedes habilitar o inhabilitar de forma selectiva las puertas de características. Para obtener más información, consulta Feature gates y clústeres alfa.
Para verificar el estado del interruptor de función de tu clúster, consulta Verifica el estado del interruptor de función.
Verifica cuándo vence un clúster Alfa
Para verificar cuándo vencen los clústeres Alfa, ejecuta el siguiente comando:
gcloud container clusters list
Soluciona problemas relacionados con la creación de un clúster alfa con marcas de funciones
Si intentas crear un clúster con un interruptor de funciones no válido o un interruptor de funciones que no es compatible con la versión de Kubernetes de tu clúster, el clúster se puede crear en un estado de error.
En Cloud Logging, puedes encontrar un mensaje similar al siguiente:
failed to set feature gates from initial flags-based config:
unrecognized feature gate: UNRECOGNIZED_FEATURE_GATE_NAME
Si encuentras este error, borra el clúster que falló. Verifica la ortografía y la compatibilidad de los interruptores de funciones con la versión de Kubernetes proporcionada. Luego, intenta crear el clúster nuevamente.
¿Qué sigue?
- Obtén más información sobre los tipos de clústeres que puedes crear.
- Más información sobre cómo administrar tus clústeres.
- Más información sobre cómo borrar clústeres.