Teilen über


Verwalten von Workloadprofilen mit der Azure CLI

Erfahren Sie, wie Sie eine Workloadprofile-Umgebung mithilfe der Azure CLI verwalten.

Erstellen einer Container-App in einem Profil

Standardmäßig wird Ihre Container-Apps-Umgebung mit einem verwalteten VNet erstellt, das automatisch für Sie generiert wird. Generierte VNets sind nicht auf Sie zugreifen, während sie im Microsoft-Mandanten erstellt werden.

Alternativ können Sie eine Umgebung mit einem benutzerdefinierten VNet erstellen, wenn Sie eines der folgenden Features benötigen:

  • Benutzerdefinierte Routen
  • Integration in Das Anwendungsgateway
  • Netzwerksicherheitsgruppen
  • Kommunikation mit Ressourcen hinter privaten Endpunkten in Ihrem virtuellen Netzwerk

Wenn Sie eine Umgebung mit einem benutzerdefinierten VNet erstellen, haben Sie die vollständige Kontrolle über die VNet-Konfiguration. Diese Steuerungsmenge bietet Ihnen die Möglichkeit, die folgenden Features zu implementieren:

  • Benutzerdefinierte Routen
  • Integration in Das Anwendungsgateway
  • Netzwerksicherheitsgruppen
  • Kommunikation mit Ressourcen hinter privaten Endpunkten in Ihrem virtuellen Netzwerk

Verwenden Sie die folgenden Befehle, um eine Workloadprofile-Umgebung zu erstellen.

  1. Erstellen eines VNET

    az network vnet create \
      --address-prefixes 13.0.0.0/23 \
      --resource-group "<RESOURCE_GROUP>" \
      --location "<LOCATION>" \
      --name "<VNET_NAME>"
    
  2. Erstellen Sie ein Subnetz, das an delegiert wird 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"
    

    Kopieren Sie den ID-Wert , und fügen Sie ihn in den nächsten Befehl ein.

    Die Microsoft.App/environments Delegierung ist erforderlich, um der Container-Apps-Laufzeit die erforderliche Kontrolle über Ihr VNet zu geben, um Workloadprofile in der Container-Apps-Umgebung auszuführen.

    Sie können so klein wie ein /27 CIDR (32 IPs-8 reserviert) für das Subnetz angeben. Wenn Sie einen /27 CIDR angeben möchten, sollten Sie die folgenden Elemente berücksichtigen:

    • Für die Container-Apps-Infrastruktur sind 11 IP-Adressen reserviert. Daher verfügt ein /27 CIDR über maximal 21 verfügbare IP-Adressen.

    • IP-Adressen werden nur zwischen Verbrauch und dedizierten Plänen unterschiedlich zugeordnet:

      Nur Verbrauch Dediziert
      Für jedes Replikat ist eine IP erforderlich. Benutzer können nicht über Apps mit mehr als 21 Replikaten in allen Apps verfügen. Die Bereitstellung von Zero-Ausfallzeiten erfordert doppelte IPs, da die alte Revision ausgeführt wird, bis die neue Revision erfolgreich bereitgestellt wurde. Jede Instanz (VM-Knoten) erfordert eine einzelne IP. Sie können über bis zu 21 Instanzen in allen Workloadprofilen verfügen, und hunderte oder mehr Replikate, die auf diesen Workloadprofilen ausgeführt werden.
  1. Erstellen einer Workloadprofile-Umgebung

    Hinweis

    Sie können konfigurieren, ob Ihre Container-App öffentliches Ein- oder nur Ausgehenden von Ihrem VNet auf Umgebungsebene zulässt. Um den Einstieg auf Ihr VNet einzuschränken, legen Sie das --internal-only Flag fest.

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

    Dieser Befehl kann bis zu 10 Minuten dauern.

  2. Überprüfen Sie den Status Ihrer Umgebung. Der folgende Befehl meldet, ob die Umgebung erfolgreich erstellt wird.

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

    Sie provisioningState müssen berichten Succeeded , bevor Sie mit dem nächsten Befehl fortfahren.

  3. Erstellen Sie eine neue 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"
    

    Mit diesem Befehl wird die Anwendung im integrierten Workloadprofil "Verbrauch" bereitgestellt. Wenn Sie eine App in einem dedizierten Profil erstellen möchten, müssen Sie das Profil zuerst der Umgebung hinzufügen.

    Mit diesem Befehl wird die neue Anwendung in der Umgebung mithilfe eines bestimmten Workloadprofils erstellt.

Hinzufügen von Profilen

Fügen Sie einer vorhandenen Umgebung ein neues Workloadprofil hinzu.

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>

Der Wert, den Sie für den <WORKLOAD_PROFILE_NAME> Platzhalter auswählen, ist der Anzeigename des Workloadprofils.

Mithilfe von Anzeigenamen können Sie einer Umgebung mehrere Profile desselben Typs hinzufügen. Der Anzeigename ist das, was Sie bei der Bereitstellung verwenden und Standard container-Apps in einem Workloadprofil enthalten.

Profile bearbeiten

Sie können die minimale und maximale Anzahl von Knoten ändern, die von einem Workloadprofil über den update Befehl verwendet werden.

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>

Ein Profil löschen

Verwenden Sie den folgenden Befehl, um ein Workloadprofil zu löschen.

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

Hinweis

Das Arbeitsauslastungsprofil "Verbrauch" kann nicht gelöscht werden.

Prüfen von Profilen

Mit den folgenden Befehlen können Sie verfügbare Profile in Ihrer Region und in einer bestimmten Umgebung auflisten.

Auflisten der verfügbaren Workloadprofile

Verwenden Sie den list-supported Befehl, um die unterstützten Workloadprofile für Ihre Region auflisten.

Der folgende Azure CLI-Befehl zeigt die Ergebnisse in einer Tabelle an.

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

Die Antwort ähnelt einer Tabelle, die dem folgenden Beispiel ähnelt:

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

Wählen Sie ein Workloadprofil aus, und verwenden Sie das Feld Name, wenn Sie az containerapp env workload-profile set ausführen, für die Option --workload-profile-type.

Anzeigen eines Workloadprofils

Zeigen Sie Details zu einem Workloadprofil an.

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

Nächste Schritte