Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Informazioni su come gestire i profili di carico di lavoro nell'ambiente App contenitore usando l'interfaccia della riga di comando di Azure.
Creare un'app contenitore in un profilo
Per impostazione predefinita, l'ambiente di Container Apps viene creato con una rete virtuale gestita che viene generata automaticamente per l'utente. Le reti virtuali generate non sono accessibili perché vengono create nel tenant di Microsoft.
In alternativa, è possibile creare un ambiente con una rete virtuale personalizzata. Usare questa opzione se sono necessarie le funzionalità seguenti:
- Ruoli definiti dall'utente
- Integrazione con il gateway applicazione
- Gruppi di sicurezza di rete
- Comunicazione con le risorse dietro endpoint privati nella rete virtuale
Creare un ambiente App contenitore.
az containerapp env create \ --resource-group "<RESOURCE_GROUP>" \ --name "<NAME>" \ --location "<LOCATION>"L'esecuzione del comando può richiedere fino a 10 minuti.
Controllare lo stato dell'ambiente. Il comando seguente indica se l'ambiente viene creato correttamente.
az containerapp env show \ --name "<ENVIRONMENT_NAME>" \ --resource-group "<RESOURCE_GROUP>"provisioningStatedeve riportareSucceededprima di passare al comando successivo.Creare una nuova app contenitore.
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"
Questo comando distribuisce l'applicazione nel profilo del carico di lavoro a consumo predefinito. Se si vuole creare un'app in un profilo dedicato, è prima necessario aggiungere il profilo all'ambiente.
Questo comando crea la nuova applicazione nell'ambiente usando un profilo del carico di lavoro specifico.
Quando si crea un ambiente con una rete virtuale personalizzata, si ha il controllo completo sulla configurazione della rete virtuale. Questo controllo offre la possibilità di implementare le funzionalità seguenti:
- Ruoli definiti dall'utente
- Integrazione con il gateway applicazione
- Gruppi di sicurezza di rete
- Comunicazione con le risorse dietro endpoint privati nella rete virtuale
Usare i comandi seguenti per creare un ambiente per Container Apps.
Crea una rete virtuale.
az network vnet create \ --address-prefixes 13.0.0.0/23 \ --resource-group "<RESOURCE_GROUP>" \ --location "<LOCATION>" \ --name "<VNET_NAME>"Creare una subnet delegata a
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"Copiare il valore ID e incollarlo nel comando successivo.
La
Microsoft.App/environmentsdelega è necessaria per garantire al runtime di Container Apps il controllo necessario sulla rete virtuale per eseguire i profili di carico di lavoro nell'ambiente Container Apps.È possibile specificare un intervallo CIDR piccolo come
/27(32 indirizzi IP-8 riservati) per la subnet. Se si intende specificare un intervallo CIDR/27, prendere in considerazione gli elementi seguenti:Sono presenti 11 indirizzi IP riservati per l'infrastruttura di App contenitore. Pertanto, un intervallo CIDR
/27ha un massimo di 21 indirizzi IP disponibili.Gli indirizzi IP vengono allocati in modo diverso tra i piani solo a consumo e dedicati:
Solo Consumo Dedicato Ogni replica richiede un indirizzo IP. Gli utenti non possono avere app con più di 21 repliche in tutte le app. La distribuzione senza tempi di inattività richiede il doppio degli indirizzi IP perché la revisione precedente è in esecuzione fino a quando la nuova revisione non viene distribuita. Ogni istanza (nodo della macchina virtuale) richiede un singolo indirizzo IP. È possibile avere fino a 21 istanze in tutti i profili del carico di lavoro e centinaia o più repliche in esecuzione in tali profili.
Creare un ambiente App contenitore.
Note
È possibile configurare se l'app contenitore consente l'ingresso pubblico o solo l'ingresso dall'interno della rete virtuale a livello di ambiente. Per limitare l'ingresso solo alla rete virtuale, impostare il
--internal-onlyflag .az containerapp env create \ --resource-group "<RESOURCE_GROUP>" \ --name "<NAME>" \ --location "<LOCATION>"L'esecuzione del comando può richiedere fino a 10 minuti.
Controllare lo stato dell'ambiente. Il comando seguente indica se l'ambiente viene creato correttamente.
az containerapp env show \ --name "<ENVIRONMENT_NAME>" \ --resource-group "<RESOURCE_GROUP>"provisioningStatedeve segnalareSucceededprima di passare al comando successivo.Creare una nuova app contenitore.
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"
Questo comando distribuisce l'applicazione nel profilo del carico di lavoro a consumo predefinito. Se si vuole creare un'app in un profilo dedicato, è prima necessario aggiungere il profilo all'ambiente.
Questo comando crea la nuova applicazione nell'ambiente usando un profilo del carico di lavoro specifico.
Aggiungere profili
Aggiungere un nuovo profilo del carico di lavoro a un ambiente esistente. È necessario specificare un tipo di profilo di lavoro, come descritto in questa sezione.
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>
Quando si seleziona un profilo di carico di lavoro da aggiungere, assicurarsi la disponibilità a livello di area. Il valore selezionato per il segnaposto <WORKLOAD_PROFILE_NAME> è il nome descrittivo del profilo del carico di lavoro.
L'uso di nomi descrittivi consente di aggiungere più profili dello stesso tipo a un ambiente. Il nome descrittivo è quello usato durante la distribuzione e la gestione di un'app contenitore in un profilo del carico di lavoro.
Il tipo di profilo di lavoro è specifico della regione, non un unico elenco globale codificato in modo statico. Il percorso di individuazione previsto è: az containerapp env workload-profile list-supported -l <REGION>. L'implementazione recupera i valori supportati dall'endpoint del modello ARM per i tipi di profilo di carico di lavoro disponibili in quell'area.
Usare questo comando per visualizzare i tipi di profilo del carico di lavoro validi per l'area:
az containerapp env workload-profile list-supported -l <REGION>
Usare uno dei valori restituiti per --workload-profile-type. Ad esempio, è possibile usare D4 nelle aree in cui tale tipo è disponibile.
Tenere presente il comportamento seguente:
- Il comando modifica il valore del tipo in lettere maiuscole prima di inviarlo.
- Se si omette
--workload-profile-name, il comando usa per impostazione predefinita il valore del tipo come nome del profilo. - L'aggiunta o l'aggiornamento dei profili di carico di lavoro funziona solo per gli ambienti che supportano i profili di carico di lavoro.
Modifica profili
È possibile modificare il numero minimo e massimo di nodi usati da un profilo del carico di lavoro usando il 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>
Eliminare un profilo
Usare il comando seguente per eliminare un profilo del carico di lavoro.
az containerapp env workload-profile delete \
--resource-group "<RESOURCE_GROUP>" \
--name <ENVIRONMENT_NAME> \
--workload-profile-name <WORKLOAD_PROFILE_NAME>
Note
Non è possibile eliminare il profilo del carico di lavoro A consumo.
Esaminare i profili
I comandi seguenti consentono di elencare i profili disponibili nell'area e quelli usati in un ambiente specifico.
Elencare i profili del carico di lavoro disponibili
Usare il comando list-supported per elencare i profili del carico di lavoro supportati per l'area.
Il comando dell'interfaccia della riga di comando di Azure seguente visualizza i risultati in una tabella.
az containerapp env workload-profile list-supported \
--location <LOCATION> \
--query "[].{Name: name, Cores: properties.cores, MemoryGiB: properties.memoryGiB, Category: properties.category}" \
-o table
La risposta è simile a una tabella simile all'esempio seguente:
Name Cores MemoryGiB Category
------------------------- ------- ----------- --------------------
D4 4 16 GeneralPurpose
D8 8 32 GeneralPurpose
D16 16 64 GeneralPurpose
D32 32 128 GeneralPurpose
E4 4 32 MemoryOptimized
E8 8 64 MemoryOptimized
E16 16 128 MemoryOptimized
E32 32 256 MemoryOptimized
Consumption 4 8 Consumption
Consumption-GPU-NC24-A100 24 220 Consumption-GPU-A100
Consumption-GPU-NC8as-T4 8 56 Consumption-GPU-T4
Flex 4 16 Consumption
NC24-A100 24 220 GPU-NC-A100
NC48-A100 48 440 GPU-NC-A100
NC96-A100 96 880 GPU-NC-A100
Selezionare un profilo del carico di lavoro e usare il campo Nome quando si aggiungono o si aggiornano i profili del carico di lavoro con i az containerapp env workload-profile add comandi o az containerapp env workload-profile update per l'opzione --workload-profile-type .
Visualizzare un profilo del carico di lavoro
Visualizzare i dettagli relativi a un profilo del carico di lavoro.
az containerapp env workload-profile show \
--resource-group <RESOURCE_GROUP> \
--name <ENVIRONMENT_NAME> \
--workload-profile-name <WORKLOAD_PROFILE_NAME>