Share via


Administración de perfiles de carga de trabajo con la CLI de Azure

Aprenda a administrar un entorno de perfiles de carga de trabajo mediante la CLI de Azure.

Creación de una aplicación de contenedor en un perfil

De forma predeterminada, el entorno de Container Apps se crea con una red virtual administrada que se genera automáticamente. Las redes virtuales generadas son inaccesibles para usted a medida que se crean en el inquilino de Microsoft.

Como alternativa, puede crear un entorno con una red virtual personalizada si necesita alguna de las siguientes características:

  • Rutas definidas por el usuario
  • Integración con Application Gateway
  • Grupos de seguridad de red
  • Comunicación con recursos detrás de puntos de conexión privados en la red virtual

Al crear un entorno con una red virtual personalizada, tiene control total sobre la configuración de la red virtual. Esta cantidad de control le ofrece la opción de implementar las siguientes características:

  • Rutas definidas por el usuario
  • Integración con Application Gateway
  • Grupos de seguridad de red
  • Comunicación con recursos detrás de puntos de conexión privados en la red virtual

Use los comandos siguientes para crear un entorno de perfiles de carga de trabajo.

  1. Crear una red virtual

    az network vnet create \
      --address-prefixes 13.0.0.0/23 \
      --resource-group "<RESOURCE_GROUP>" \
      --location "<LOCATION>" \
      --name "<VNET_NAME>"
    
  2. Cree una subred delegada en Microsoft.App/environments.

    az network vnet subnet create \
      --address-prefixes 13.0.0.0/23 \
      --delegations Microsoft.App/environments \
      --name "<SUBNET_NAME>" \
      --resource-group "<RESOURCE_GROUP>" \
      --vnet-name "<VNET_NAME>" \
      --query "id"
    

    Copie el valor del identificador y péguelo en el comando siguiente.

    La Microsoft.App/environments delegación es necesaria para proporcionar al entorno de ejecución de Container Apps el control necesario sobre la red virtual para ejecutar perfiles de carga de trabajo en el entorno de Container Apps.

    Puede especificar tan pequeño como CIDR /27 (32 DIRECCIONES IP-8 reservadas) para la subred. Si va a especificar un /27 CIDR, tenga en cuenta los siguientes elementos:

    • Hay 11 direcciones IP reservadas para la infraestructura de Container Apps. Por lo tanto, un /27 CIDR tiene un máximo de 21 direcciones IP disponibles.

    • Las direcciones IP se asignan de forma diferente entre los planes de consumo y dedicado:

      Solo consumo Dedicado
      Cada réplica requiere una dirección IP. Los usuarios no pueden tener aplicaciones con más de 21 réplicas en todas las aplicaciones. La implementación de tiempo de inactividad cero requiere duplicar las direcciones IP, ya que la revisión anterior se está ejecutando hasta que la nueva revisión se implemente correctamente. Cada instancia (nodo de máquina virtual) requiere una única dirección IP. Puede tener hasta 21 instancias en todos los perfiles de carga de trabajo y cientos o más réplicas que se ejecutan en estos perfiles de carga de trabajo.
  1. Creación de un entorno de perfiles de carga de trabajo

    Nota:

    Puede configurar si la aplicación contenedora permite la entrada pública o solo la entrada desde dentro de la red virtual en el nivel de entorno. Para restringir la entrada a solo la red virtual, establezca la --internal-only marca .

    az containerapp env create \
      --enable-workload-profiles \
      --resource-group "<RESOURCE_GROUP>" \
      --name "<NAME>" \
      --location "<LOCATION>"
    
    az containerapp env create \
      --enable-workload-profiles \
      --resource-group "<RESOURCE_GROUP>" \
      --name "<NAME>" \
      --location "<LOCATION>"
    

    Este comando puede tardar hasta 10 minutos en completarse.

  2. Compruebe el estado del entorno. El siguiente comando notifica si el entorno se ha creado correctamente.

    az containerapp env show \
      --name "<ENVIRONMENT_NAME>" \
      --resource-group "<RESOURCE_GROUP>"
    

    Debe provisioningState informar Succeeded antes de pasar al comando siguiente.

  3. Cree una nueva aplicación de contenedor.

    az containerapp create \
      --resource-group "<RESOURCE_GROUP>" \
      --name "<CONTAINER_APP_NAME>" \
      --target-port 80 \
      --ingress external \
      --image mcr.microsoft.com/k8se/quickstart:latest \
      --environment "<ENVIRONMENT_NAME>" \
      --workload-profile-name "Consumption"
    

    Este comando implementa la aplicación en el perfil de carga de trabajo consumo integrado. Si desea crear una aplicación en un perfil dedicado, primero debe agregar el perfil al entorno.

    Este comando crea la nueva aplicación en el entorno mediante un perfil de carga de trabajo específico.

Agregar perfiles

Agregue un nuevo perfil de carga de trabajo a un entorno existente.

az containerapp env workload-profile add \
  --resource-group <RESOURCE_GROUP> \
  --name <ENVIRONMENT_NAME> \
  --workload-profile-type <WORKLOAD_PROFILE_TYPE> \
  --workload-profile-name <WORKLOAD_PROFILE_NAME> \
  --min-nodes <MIN_NODES> \
  --max-nodes <MAX_NODES>

El valor que seleccione para el <WORKLOAD_PROFILE_NAME> marcador de posición es el nombre descriptivo del perfil de carga de trabajo.

El uso de nombres descriptivos permite agregar varios perfiles del mismo tipo a un entorno. El nombre descriptivo es lo que se usa al implementar y mantener una aplicación de contenedor en un perfil de carga de trabajo.

Editar perfiles

Puede modificar el número mínimo y máximo de nodos que usa un perfil de carga de trabajo mediante el update comando .

az containerapp env workload-profile update \
  --resource-group <RESOURCE_GROUP> \
  --name <ENV_NAME> \
  --workload-profile-type <WORKLOAD_PROFILE_TYPE> \
  --workload-profile-name <WORKLOAD_PROFILE_NAME> \
  --min-nodes <MIN_NODES> \
  --max-nodes <MAX_NODES>

Eliminar un perfil

Use el siguiente comando para eliminar un perfil de carga de trabajo.

az containerapp env workload-profile delete \
  --resource-group "<RESOURCE_GROUP>" \
  --name <ENVIRONMENT_NAME> \
  --workload-profile-name <WORKLOAD_PROFILE_NAME> 

Nota:

No se puede eliminar el perfil de carga de trabajo consumo .

Inspección de perfiles

Los siguientes comandos le permiten enumerar los perfiles disponibles en su región y los que se usan en un entorno específico.

Enumeración de perfiles de carga de trabajo disponibles

Use el list-supported comando para enumerar los perfiles de carga de trabajo admitidos para su región.

El siguiente comando de la CLI de Azure muestra los resultados en una tabla.

az containerapp env workload-profile list-supported \
  --location <LOCATION>  \
  --query "[].{Name: name, Cores: properties.cores, MemoryGiB: properties.memoryGiB, Category: properties.category}" \
  -o table

La respuesta es similar a una tabla similar al ejemplo siguiente:

Name         Cores    MemoryGiB    Category
-----------  -------  -----------  ---------------
D4           4        16           GeneralPurpose
D8           8        32           GeneralPurpose
D16          16       64           GeneralPurpose
E4           4        32           MemoryOptimized
E8           8        64           MemoryOptimized
E16          16       128          MemoryOptimized
E32          32       256          MemoryOptimized
Consumption  4        8            Consumption

Seleccione un perfil de carga de trabajo y use el campo Nombre al ejecutar az containerapp env workload-profile set para la opción --workload-profile-type.

Mostrar un perfil de carga de trabajo

Mostrar detalles sobre un perfil de carga de trabajo.

az containerapp env workload-profile show \
  --resource-group <RESOURCE_GROUP> \
  --name <ENVIRONMENT_NAME> \
  --workload-profile-name <WORKLOAD_PROFILE_NAME> 

Pasos siguientes