Workloadprofielen beheren met de Azure CLI

Leer hoe u een omgeving met workloadprofielen beheert met behulp van de Azure CLI.

Een container-app maken in een profiel

Uw Container Apps-omgeving wordt standaard gemaakt met een beheerd VNet dat automatisch voor u wordt gegenereerd. Gegenereerde VNets zijn niet toegankelijk voor u terwijl ze worden gemaakt in de tenant van Microsoft.

U kunt ook een omgeving met een aangepast VNet maken als u een van de volgende functies nodig hebt:

Wanneer u een omgeving met een aangepast VNet maakt, hebt u volledige controle over de VNet-configuratie. Deze hoeveelheid beheer biedt u de mogelijkheid om de volgende functies te implementeren:

Gebruik de volgende opdrachten om een omgeving met workloadprofielen te maken.

  1. Maak een VNet.

    az network vnet create \
      --address-prefixes 13.0.0.0/23 \
      --resource-group "<RESOURCE_GROUP>" \
      --location "<LOCATION>" \
      --name "<VNET_NAME>"
    
  2. Maak een subnet dat is gedelegeerd aan 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"
    

    Kopieer de id-waarde en plak deze in de volgende opdracht.

    De Microsoft.App/environments overdracht is vereist om de Container Apps-runtime de vereiste controle over uw VNet te geven om workloadprofielen uit te voeren in de Container Apps-omgeving.

    U kunt zo klein opgeven als een /27 CIDR (32 IP-adressen-8 gereserveerd) voor het subnet. Als u een /27 CIDR wilt opgeven, moet u rekening houden met de volgende items:

    • Er zijn 11 IP-adressen gereserveerd voor de Container Apps-infrastructuur. Daarom heeft een /27 CIDR maximaal 21 beschikbare IP-adressen.

    • IP-adressen worden anders toegewezen tussen alleen Verbruik en Toegewezen abonnementen:

      Alleen verbruik Toegewezen
      Voor elke replica is één IP-adres vereist. Gebruikers kunnen geen apps met meer dan 21 replica's in alle apps hebben. Implementatie zonder downtime vereist dubbele IP-adressen omdat de oude revisie wordt uitgevoerd totdat de nieuwe revisie is geïmplementeerd. Voor elk exemplaar (VM-knooppunt) is één IP-adres vereist. U kunt maximaal 21 exemplaren hebben voor alle workloadprofielen en honderden of meer replica's die worden uitgevoerd op deze workloadprofielen.
  1. Omgeving voor workloadprofielen maken

    Notitie

    U kunt configureren of uw container-app openbaar inkomend verkeer toestaat of alleen inkomend verkeer vanuit uw VNet op omgevingsniveau toestaat. Als u inkomend verkeer wilt beperken tot alleen uw VNet, stelt u de --internal-only vlag in.

    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>"
    

    Het kan tot 10 minuten duren voordat deze opdracht is voltooid.

  2. Controleer de status van uw omgeving. Met de volgende opdracht wordt gerapporteerd of de omgeving is gemaakt.

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

    U provisioningState moet rapporteren Succeeded voordat u verdergaat met de volgende opdracht.

  3. Maak een nieuwe container-app.

    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"
    

    Met deze opdracht wordt de toepassing geïmplementeerd in het ingebouwde workloadprofiel Verbruik. Als u een app in een Dedicated-profiel wilt maken, moet u eerst het profiel toevoegen aan de omgeving.

    Met deze opdracht maakt u de nieuwe toepassing in de omgeving met behulp van een specifiek workloadprofiel.

Profielen toevoegen

Voeg een nieuw workloadprofiel toe aan een bestaande omgeving.

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>

De waarde die u voor de <WORKLOAD_PROFILE_NAME> tijdelijke aanduiding selecteert, is de beschrijvende naam van het workloadprofiel.

Met behulp van beschrijvende namen kunt u meerdere profielen van hetzelfde type toevoegen aan een omgeving. De beschrijvende naam is wat u gebruikt bij het implementeren en onderhouden van een container-app in een workloadprofiel.

Profielen bewerken

U kunt het minimum- en maximum aantal knooppunten wijzigen dat door een workloadprofiel wordt gebruikt via de update opdracht.

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>

Een profiel verwijderen

Gebruik de volgende opdracht om een workloadprofiel te verwijderen.

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

Notitie

Het workloadprofiel Verbruik kan niet worden verwijderd.

Profielen controleren

Met de volgende opdrachten kunt u beschikbare profielen weergeven in uw regio en profielen die in een specifieke omgeving worden gebruikt.

Beschikbare workloadprofielen weergeven

Gebruik de list-supported opdracht om de ondersteunde workloadprofielen voor uw regio weer te geven.

Met de volgende Azure CLI-opdracht worden de resultaten in een tabel weergegeven.

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

Het antwoord lijkt op een tabel die lijkt op het onderstaande voorbeeld:

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

Selecteer een workloadprofiel en gebruik het veld Naam wanneer u deze --workload-profile-type optie uitvoertaz containerapp env workload-profile set.

Een workloadprofiel weergeven

Details weergeven over een workloadprofiel.

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

Volgende stappen