Tutorial: Creación de un clúster de Azure Kubernetes Service (AKS)

Kubernetes proporciona una plataforma distribuida para aplicaciones en contenedores. Con Azure Kubernetes Service (AKS), puede crear rápidamente un clúster de Kubernetes listo para producción.

En este tutorial, el tercero de siete, implementará un clúster de Kubernetes en AKS. Aprenderá a:

  • Implementar un clúster de AKS que se puede autenticar en Azure Container Registry (ACR).
  • Instalar la CLI de Kubernetes: kubectl.
  • Configurar kubectl para conectarse a un clúster de AKS.

Antes de empezar

En tutoriales anteriores, creó una imagen de contenedor y la cargó en una instancia de ACR. Comience con el Tutorial 1: Preparación de la aplicación para AKS para continuar.

  • Si usa la CLI de Azure, este tutorial requiere que ejecute la versión 2.0.53 o posterior. Compruebe su versión con az --version. Para la instalación o la actualización, consulte Instalación de la CLI de Azure.
  • Si usa Azure PowerShell, en este tutorial es necesario que ejecute la versión 5.9.0 de Azure PowerShell o cualquier versión posterior. Compruebe su versión con Get-InstalledModule -Name Az. Si necesita instalarla o actualizarla, consulte Instalación de Azure PowerShell.
  • Si usa Azure Developer CLI, este tutorial requiere que ejecute la versión 1.5.1 o posterior. Compruebe su versión con azd version. Para instalarla o actualizarla, consulte Instalación de Azure Developer CLI.

Creación de un clúster de Kubernetes

Los clústeres de AKS pueden usar el control de acceso basado en rol de Kubernetes (RBAC de Kubernetes), que le permite definir el acceso a los recursos en función de los roles asignados a los usuarios. Cuando un usuario tiene asignados varios roles, se combinan los permisos. Los permisos se pueden limitar a un solo espacio de nombres o para todo el clúster.

Para más información sobre AKS y RBAC de Kubernetes, consulte Control del acceso a los recursos del clúster mediante RBAC de Kubernetes y las identidades de Microsoft Entra en AKS.

Para realizar este tutorial es necesaria la versión 2.0.53 o superior de la CLI de Azure. Compruebe su versión con az --version. Para la instalación o la actualización, consulte Instalación de la CLI de Azure.

Instalación de la CLI de Kubernetes

Para conectarse al clúster de Kubernetes, se usa la CLI de Kubernetes, kubectl. Si usa Azure Cloud Shell, kubectl ya está instalado. Si ejecuta los comandos localmente, puede usar la CLI de Azure o Azure PowerShell para instalar kubectl.

Creación de un clúster de AKS

Los clústeres de AKS pueden usar el control de acceso basado en rol de Kubernetes (RBAC de Kubernetes), que le permite definir el acceso a los recursos en función de los roles asignados a los usuarios. Los permisos se combinan cuando se asignan varios roles a los usuarios. Los permisos se pueden limitar a un solo espacio de nombres o para todo el clúster. Para más información, consulte Control de acceso a los recursos de clúster mediante RBAC de Kubernetes y Microsoft Entra ID en AKS.

Para obtener más información sobre los límites de recursos y la disponibilidad por regiones de AKS, consulte Cuotas, restricciones de tamaño de máquinas virtuales y disponibilidad de regiones en Azure Kubernetes Service (AKS).

Nota:

Para asegurarse de que el clúster funcione correctamente, debería ejecutar al menos dos nodos.

Para permitir que un clúster de AKS interactúe con otros recursos de Azure, la plataforma Azure crea automáticamente una identidad de clúster. En este ejemplo, la identidad de clúster obtiene el derecho a extraer imágenes de la instancia de ACR que se creó en el tutorial anterior. Para ejecutar el comando correctamente, debe tener el rol Propietario o Administrador de cuentas de Azure en la suscripción de Azure.

  • Cree un clúster de AKS con el comando az aks create. En el ejemplo siguiente se crea un clúster denominado myAKSCluster en el grupo de recursos denominado myResourceGroup. Este grupo de recursos se creó en el tutorial anterior en la región eastus.

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --node-count 2 \
        --generate-ssh-keys \
        --attach-acr <acrName>
    

    Nota:

    Si ya ha generado claves SSH, es posible que encuentre un error similar a linuxProfile.ssh.publicKeys.keyData is invalid. Para continuar, vuelva a intentar ejecutar el comando sin el parámetro --generate-ssh-keys.

Para evitar la necesidad de un rol Propietario o Administrador de cuenta de Azure, también puede configurar una entidad de servicio manualmente para extraer imágenes de ACR. Para más información, consulte Autenticación de ACR con entidades de servicio o Autenticación desde Kubernetes con un secreto de extracción. También puede usar una identidad administrada en lugar de una entidad de servicio para facilitar la administración.

Conexión a un clúster mediante kubectl

  1. Para configurar kubectl para conectarse a su clúster de Kubernetes, use el comando az aks get-credentials. En el ejemplo siguiente, se obtienen las credenciales del clúster de AKS llamado myAKSCluster en myResourceGroup.

    az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
    
  2. Compruebe la conexión al clúster con el comando kubectl get nodes, que devuelve una lista de los nodos del clúster.

    kubectl get nodes
    

    La siguiente salida de ejemplo muestra una lista de los nodos del clúster.

    NAME                                STATUS   ROLES   AGE   VERSION
    aks-nodepool1-19366578-vmss000002   Ready    agent   47h   v1.25.6
    aks-nodepool1-19366578-vmss000003   Ready    agent   47h   v1.25.6
    

Pasos siguientes

En este tutorial, ha implementado un clúster de Kubernetes en AKS y ha configurado kubectl para conectarse al clúster. Ha aprendido a:

  • Implementar un clúster de AKS que pueda autenticarse en una instancia de ACR.
  • Instalar la CLI de Kubernetes: kubectl.
  • Configurar kubectl para conectarse a un clúster de AKS.

En el siguiente tutorial aprenderá a implementar una aplicación en el clúster.