Compartir a través de


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, 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.35.0 o posterior de la CLI de Azure. Compruebe la 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 la 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 la 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.

Este tutorial requiere la versión 2.35.0 o posterior de la CLI de Azure. Compruebe la versión con az --version. Para la instalación o la actualización, consulte Instalación de la CLI de Azure. Si usa el entorno de Bash en Azure Cloud Shell, la versión más reciente ya está instalada.

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).

Importante

En este tutorial se crea un clúster de tres nodos. Para asegurarse de que el clúster funcione correctamente, debería ejecutar al menos dos nodos. Se requiere un mínimo de tres nodos para usar Azure Container Storage. Si recibe un mensaje de error al intentar crear el clúster, es posible que tenga que solicitar un aumento de cuota para la suscripción de Azure o probar otra región de Azure. Como alternativa, puede omitir el parámetro de tamaño de máquina virtual del nodo para usar el tamaño de máquina virtual predeterminado.

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 un rol de administrador de cuenta de Azure o propietario en la suscripción de Azure.

  • Cree un clúster de AKS mediante el az aks create comando. 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 de la región westus2 . Continuaremos usando la variable de entorno , $ACRNAME, que se estableció en el tutorial anterior. Si no tiene establecida esta variable de entorno, establézcala ahora en el mismo valor que usó anteriormente.

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --node-count 3 \
        --node-vm-size standard_l8s_v3 \
        --generate-ssh-keys \
        --attach-acr $ACRNAME
    

    Nota:

    Si ya ha generado claves SSH, podría producirse 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. Configure kubectl para conectarse al clúster de Kubernetes mediante 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
    

    En la salida de ejemplo siguiente se muestra una lista de los nodos del clúster:

    NAME                                STATUS   ROLES   AGE   VERSION
    aks-nodepool1-19366578-vmss000000   Ready    agent   47h   v1.30.9
    aks-nodepool1-19366578-vmss000001   Ready    agent   47h   v1.30.9
    aks-nodepool1-19366578-vmss000002   Ready    agent   47h   v1.30.9
    

Paso siguiente

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 Azure Container Storage en el clúster y a crear un volumen efímero genérico. Si usa la CLI para desarrolladores de Azure o si no pudo usar un tipo de máquina virtual optimizada para almacenamiento debido a problemas de cuota, continúe directamente con el tutorial Implementación de aplicaciones en contenedor .