Crea un clúster de Autopilot


En esta página, se explica cómo crear un clúster de Google Kubernetes Engine (GKE) en el modo Autopilot. El modo de operación Autopilot es una experiencia práctica de Kubernetes que te permite concentrarte en tus servicios y aplicaciones, mientras Google se encarga de la infraestructura y la administración de nodos. Puedes programar tus pods sin tener que planificar el uso de los nodos. Después de crear un clúster de Autopilot, puedes implementar tu carga de trabajo y escalar la aplicación según sea necesario. GKE aprovisiona, configura y administra los recursos y el hardware para ejecutar tu carga de trabajo.

Antes de comenzar

Antes de comenzar, asegúrate de haber realizado las siguientes tareas:

  • Asegúrate de que habilitaste la API de Google Kubernetes Engine.
  • Habilitar la API de Google Kubernetes Engine
  • Asegúrate de que instalaste el SDK de Cloud.
  • Establece la configuración predeterminada de la herramienta de línea de comandos de gcloud para tu proyecto mediante uno de los siguientes métodos:
    • Usa gcloud init si deseas ver una explicación sobre cómo configurar los valores predeterminados del proyecto.
    • Usa gcloud config para configurar el ID, la zona y la región del proyecto de manera individual.

    gcloud init

    1. Ejecuta gcloud init y sigue las instrucciones:

      gcloud init

      Si usas SSH en un servidor remoto, usa la marca --console-only para evitar que el comando abra un navegador:

      gcloud init --console-only
    2. Sigue las instrucciones para autorizar a la herramienta de gcloud a usar tu cuenta de Google Cloud.
    3. Crea una configuración nueva o selecciona una existente.
    4. Elige un proyecto de Google Cloud.
    5. Elige una zona de Compute Engine predeterminada.
    6. Elige una región de Compute Engine predeterminada.

    gcloud config

    1. Establece tu ID del proyecto predeterminado:
      gcloud config set project PROJECT_ID
    2. Configura la región de Compute Engine predeterminada (por ejemplo, us-central1):
      gcloud config set compute/region COMPUTE_REGION
    3. Configura la zona de Compute Engine predeterminada (por ejemplo, us-central1-c):
      gcloud config set compute/zone COMPUTE_ZONE
    4. Actualiza gcloud a la versión más reciente:
      gcloud components update

    Cuando configuras las ubicaciones predeterminadas, puedes evitar errores en la herramienta gcloud como el siguiente: One of [--zone, --region] must be supplied: Please specify location.

Crea un clúster de Autopilot

Puedes crear un clúster de Autopilot con la herramienta de línea de comandos de gcloud o con Google Cloud Console.

gcloud

Para crear un clúster público de Autopilot con la herramienta de línea de comandos de gcloud, ejecuta el siguiente comando:

gcloud container clusters create-auto CLUSTER_NAME \
    --region REGION \
    --project=PROJECT_ID

Reemplaza lo siguiente:

  • CLUSTER_NAME: Es el nombre del clúster nuevo de Autopilot.
  • REGION: Es la región para tu clúster, como us-central1.
  • PROJECT_ID: el ID de tu proyecto

Puedes especificar opciones adicionales cuando creas tu clúster de Autopilot, por ejemplo, el nombre de tu red, o cuando especificas un clúster privado.

  • --network especifica la red a la que se conecta tu clúster.
  • --subnetwork especifica la subred a la que se conecta tu clúster.
  • --enable-master-authorized-network especifica que el acceso al extremo público está restringido a los rangos de direcciones IP que autorices.
  • --master-authorized-networks especifica la dirección del grupo de máquinas autorizadas para acceder al extremo público.
  • --cluster-ipv4-cidr especifica el rango de direcciones del pod.
  • --services-ipv4-cidr especifica el rango de direcciones del servicio.
  • --enable-private-nodes crea un clúster privado sin direcciones IP externas.
  • --master-ipv4-cidr especifica un rango de direcciones internas para el plano de control (para clústeres privados).
  • --enable-private-endpoint indica que el clúster se administra con la dirección IP privada del extremo de la API del plano de control (para clústeres privados).

Para ver la lista completa de opciones, consulta la documentación de referencia gcloud container clusters create-auto.

Console

Para crear un clúster de Autopilot con Google Cloud Console, realiza las siguientes tareas:

  1. Ve a la página Google Kubernetes Engine en Cloud Console.

    Ir a Google Kubernetes Engine

  2. Haz clic en Crear.

  3. En la sección Autopilot, haz clic en Configurar.

  4. Ingresa el nombre de tu clúster.

  5. Selecciona una región para tu clúster.

  6. Elige un clúster público o privado.

  7. (Opcional) Expande las Opciones de herramientas de redes para especificar la configuración de red:

    1. Si eliges un clúster privado:
      1. Para crear un plano de control al que se pueda acceder desde las direcciones IP externas autorizadas, selecciona la casilla de verificación Permitir el acceso al plano de control mediante su dirección IP externa. Desmarca esta casilla para inhabilitar el acceso al extremo público.
      2. (Opcional) Configura el Rango de IP del plano de control, por ejemplo, 172.16.0.0/28.
    2. Si deseas crear un clúster con acceso limitado al extremo público, selecciona la casilla de verificación Habilita las redes autorizadas del plano de control.
      1. Haz clic en Agregar red autorizada para otorgar acceso a un conjunto específico de direcciones que designes.
      2. En Nombre, ingresa el nombre que desees para la red.
      3. En Red, ingresa un rango de CIDR para el que desees otorgar acceso al plano de control de tu clúster.
      4. Haz clic en Listo. Agrega redes autorizadas adicionales según sea necesario.
    3. Ingresa una red y una subred de nodo, o acepta la configuración default. Esta opción genera una subred para tu clúster.
    4. En el campo Rango de direcciones de pods, ingresa un rango de pods, una máscara o acepta los valores predeterminados (por ejemplo: 10.0.0.0/14).
    5. En el campo Rango de direcciones de servicio, ingresa un rango de pods del rango de servicios, una máscara o acepta los valores predeterminados (por ejemplo: 10.4.0.0/19).
  8. (Opcional) Haz clic en Opciones avanzadas para especificar más opciones:

    1. Selecciona un canal de versiones para el plano de control.
    2. Haz clic en Habilitar Período de mantenimiento para controlar cuándo se produce el mantenimiento automático del clúster en tus clústeres.
      1. Haz clic en Agregar exclusión de mantenimiento. Para el mantenimiento semanal, selecciona la hora de inicio y la duración y, luego, los días de la semana en que se activa el período de mantenimiento. Cambia al editor personalizado para editar la regla directamente.
    3. En el campo Metadatos, ingresa una descripción de tu clúster.
    4. Haz clic en Agregar etiqueta a fin de agregar pares clave-valor para organizar los clústeres.
  9. Haz clic en Crear.

Habilita el acceso a Internet saliente en clústeres privados con Cloud NAT

De forma predeterminada, los clústeres de Autopilot son públicos. Si creaste un clúster de Autopilot privado, estos nodos no tienen direcciones IP externas. Por ejemplo, para establecer conexiones salientes a Internet desde tu clúster que extraigan imágenes de DockerHub, debes configurarCloud NAT. Cloud NAT permite que los clústeres privados envíen paquetes salientes a Internet y reciban los paquetes de respuesta entrantes establecidos correspondientes. Realiza las siguientes tareas para crear una configuración NAT en un Cloud Router.

gcloud

Para aplicar NAT en tu clúster con la herramienta de línea de comandos de gcloud, ejecuta los siguientes comandos:

  1. Crea un Cloud Router:

    gcloud compute routers create NAT_ROUTER \
        --network NETWORK \
        --region REGION \
        --project=PROJECT_ID
    

    Reemplaza lo siguiente:

    • NAT_ROUTER: Es el nombre de tu Cloud Router.
    • NETWORK: Es el nombre de red para el que quieres crear el Cloud Router. Por ejemplo, si deseas aplicar NAT con tu red predeterminada, usa el nombre de red default cuando crees el router.
    • REGION: Es la región para tu clúster, como us-central1.
    • PROJECT_ID: el ID de tu proyecto
  2. Agrega una configuración al router: Esta configuración permite a todas las instancias de la región usar Cloud NAT para todos los rangos de IP de alias y principales. También asigna de forma automática las direcciones IP externas de la puerta de enlace NAT. Para obtener más opciones, consulta la documentación de la herramienta de línea de comandos de gcloud:

    gcloud compute routers nats create NAT_CONFIG \
        --region REGION \
        --router NAT_ROUTER \
        --nat-all-subnet-ip-ranges \
        --auto-allocate-nat-external-ips \
        --project=PROJECT_ID
    

    Reemplaza lo siguiente:

    • NAT_CONFIG: Es el nombre de tu configuración de NAT.
    • REGION: Es la región para tu clúster, como us-central1.
    • NAT_ROUTER: Es el nombre de tu Cloud Router.
    • PROJECT_ID: el ID de tu proyecto

Console

  1. Ve a la página Cloud NAT en Cloud Console.

    Ir a Cloud NAT

  2. Haz clic en Comenzar o Crear la puerta de enlace NAT.

  3. Ingresa un Nombre de puerta de enlace.

  4. Elige una red de VPC.

  5. Configura la Región para la puerta de enlace NAT.

  6. Selecciona o crea un Cloud Router en la región.

  7. Haz clic en Crear.

Conéctate al clúster

Después de crear tu clúster, necesitas obtener credenciales de autenticación para conectarte al clúster.

gcloud

gcloud container clusters get-credentials CLUSTER_NAME \
    --region REGION \
    --project=PROJECT_ID

Reemplaza lo siguiente:

  • CLUSTER_NAME: Es el nombre del clúster nuevo de Autopilot.
  • REGION: Es la región para tu clúster, como us-central1.
  • PROJECT_ID: el ID de tu proyecto

Este comando configura kubectl para usar el clúster que creaste.

Console

  1. Ve a la página de Google Kubernetes Engine en Cloud Console:

    Ir a Google Kubernetes Engine

  2. En la lista de clústeres, junto al clúster al que deseas conectarte, haz clic en Acciones y, luego, en Conectar.

  3. Haz clic en Ejecutar en Cloud Shell cuando se te solicite. El comando generado se copia en Cloud Shell, por ejemplo:

    gcloud container clusters get-credentials autopilot-cluster --region us-east1 --project autopilot-test
    
  4. Presiona Intro para ejecutar el comando.

Verifica el modo de clúster

Puedes verificar que tu clúster sea un clúster de Autopilot mediante la herramienta de línea de comandos de gcloud o Google Cloud Console.

gcloud

Para verificar que tu clúster se haya creado en el modo Autopilot, ejecuta el siguiente comando:

gcloud container clusters describe CLUSTER_NAME \
    --region REGION

Reemplaza lo siguiente:

  • CLUSTER_NAME: Es el nombre de tu clúster de Autopilot.
  • REGION: Es la región para tu clúster, como us-central1.

Este es el resultado del comando:

autopilot:
  enabled: true

Console

Para verificar que tu clúster se haya creado en el modo Autopilot, haz lo siguiente:

  1. Ve a la página de Google Kubernetes Engine en Cloud Console:

    Ir a Google Kubernetes Engine

  2. Busca tu clúster en la lista de clústeres. En la columna Modo, el estado muestra Autopilot.

Verifica la configuración del clúster

Para ver todos tus recursos en los espacios de nombres, ejecuta el siguiente comando:

kubectl get all --all-namespaces

Verás los recursos nuevos del clúster, como pods, servicios, Deployments y DaemonSets para el clúster.

¿Qué sigue?