Ejercicio: Creación de un clúster de Azure Kubernetes Service

Completado

En este ejercicio, va a crear un clúster de AKS en el que se usan varios nodos para satisfacer la demanda de muchos clientes que usan el servicio. Decide usar la arquitectura de un solo plano de control y varios nodos, porque proporciona la mejor manera de crear y administrar recursos de carga de trabajo.

AKS admite grupos de nodos de Linux y Windows mediante el portal o la CLI de Azure, pero si va a usar grupos de nodos de Windows, el clúster se debe crear con más requisitos previos y comandos. Seleccione un sistema operativo en función del tipo de grupos de nodos que quiera agregar.

Importante

Para realizar este ejercicio, se necesita una suscripción de Azure propia y puede que se apliquen cargos. Si aún no tiene una suscripción de Azure, cree una cuenta gratuita antes de comenzar.

  1. Inicie sesión en Azure Cloud Shell con la cuenta en la que quiera implementar los recursos.

    Importante

    Ejecutaremos todos los scripts con Bash, por lo que, si aún no ha creado una instancia de Cloud Shell, seleccione Bash como shell en ejecución.

  2. Cree variables para los valores de configuración que reutilizará en los ejercicios.

    export RESOURCE_GROUP=rg-contoso-video
    export CLUSTER_NAME=aks-contoso-video
    export LOCATION=eastus
    

    Actualice la variable LOCATION con la región más cercana. En este ejemplo se usa eastus.

  3. Ejecute el comando az group create para crear un grupo de recursos. Implemente todos los recursos en este nuevo grupo de recursos.

    az group create --name=$RESOURCE_GROUP --location=$LOCATION
    
  4. Ejecute el comando az aks create para crear un clúster de AKS.

    az aks create \
        --resource-group $RESOURCE_GROUP \
        --name $CLUSTER_NAME \
        --node-count 2 \
        --generate-ssh-keys \
        --node-vm-size Standard_B2s \
        --network-plugin azure
    

    El comando crea un clúster de AKS denominado aks-contoso-video dentro del grupo de recursos rg-contoso-video. El clúster tiene dos nodos definidos por el parámetro --node-count. En este ejercicio solo se usan dos nodos para reducir costos. El parámetro --node-vm-size configura los nodos de clúster como máquinas virtuales de tamaño Standard_B2s. Estos nodos formarán parte del modo Sistema.

    Importante

    Las máquinas virtuales B2s estándar son necesarias para crear grupos de nodos, pero no están disponibles en suscripciones del nivel gratuito. Si recibe notificaciones sobre los límites, debe actualizar a una actualización estándar.

  5. Ejecute el comando az aks nodepool add para agregar otro grupo de nodos que use el sistema operativo Linux predeterminado.

    az aks nodepool add \
        --resource-group $RESOURCE_GROUP \
        --cluster-name $CLUSTER_NAME \
        --name userpool \
        --node-count 2 \
        --node-vm-size Standard_B2s
    

    El comando agrega un grupo de nodos nuevo (Modo de usuario) al clúster de AKS existente (que se creó en el comando anterior). Este grupo de nodos de Usuario se usa para hospedar aplicaciones y cargas de trabajo, a diferencia del grupo de nodos de Sistema.

  1. Vincule el clúster de Kubernetes con kubectl mediante la ejecución del comando siguiente en Cloud Shell.

    az aks get-credentials --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP
    

    Este comando agrega una entrada al archivo ~/.kube/config, que contiene toda la información para acceder a los clústeres. Kubectl permite administrar varios clústeres desde una única interfaz de la línea de comandos.

  2. Ejecute el comando kubectl get nodes para comprobar que se puede conectar al clúster y confirme su configuración.

    kubectl get nodes
    

    En la salida se deben enumerar cuatro nodos disponibles para dos grupos de nodos.

NAME                                STATUS   ROLES   AGE    VERSION
aks-nodepool1-21895026-vmss000000   Ready    agent   245s   v1.23.12
aks-nodepool1-21895026-vmss000001   Ready    agent   245s   v1.23.12
aks-userpool-21895026-vmss000000    Ready    agent   105s   v1.23.12
aks-userpool-21895026-vmss000001    Ready    agent   105s   v1.23.12