App Azure Container in Azure Arc (anteprima)
È possibile eseguire app contenitore in un cluster del servizio Azure Kubernetes abilitato per Azure Arc o del servizio Azure Kubernetes-HCI.
L'esecuzione in un cluster Kubernetes abilitato per Azure Arc consente:
- Agli sviluppatori, di sfruttare le funzionalità delle app contenitore
- Agli Amministratori IT, di mantenere la conformità aziendale ospitando app contenitore nell'infrastruttura interna.
Informazioni su come configurare il cluster Kubernetes per le app contenitore tramite Configurazione di un cluster Kubernetes abilitato per Azure Arc per eseguire App Contenitore di Azure
Durante la configurazione del cluster, eseguire queste azioni:
Il cluster connesso, ovvero una proiezione di Azure dell'infrastruttura Kubernetes. Per altre informazioni, vedere Che cos'è Kubernetes abilitato per Azure Arc?
Un'estensione del cluster, ossia una risorsa secondaria della risorsa cluster connessa. L'estensione App contenitore di installare le risorse necessarie nel cluster connesso. Per altre informazioni sulle estensioni del cluster, vedere estensioni del cluster in Kubernetes con abilitazione di Azure Arc.
Una posizione personalizzata, che raggruppa un gruppo di estensioni e le esegue il mapping a uno spazio dei nomi per le risorse create. Per altre informazioni, vedere Percorsi personalizzati in Azure Arc abilitato per Kubernetes.
Un ambiente connesso ad App contenitore, che consente la configurazione comune tra le app, ma non correlate alle operazioni del cluster. Concettualmente, viene distribuita nella risorsa percorso personalizzata e gli sviluppatori di app creano app in questo ambiente.
Limiti dell'anteprima pubblica
Le limitazioni dell'anteprima pubblica seguenti si applicano alle app Azure Container in Kubernetes con abilitazione di Azure Arc.
Limitazione | Dettagli |
---|---|
Aree di Azure supportate | Stati Uniti orientali, Europa occidentale, Asia orientale |
Requisito di rete del cluster | Deve supportare il tipo di servizio LoadBalancer |
Requisito del sistema operativo del nodo | Solo Linux. |
Funzionalità: Identità gestite | Non disponibile |
Funzionalità: eseguire il pull di immagini da Registro Azure Container con identità gestita | Non disponibile (dipende dalle identità gestite) |
Registri | Log Analytics deve essere configurato con l'estensione del cluster; non per applicazione |
Importante
Se si esegue la distribuzione in AKS-HCI, assicurarsi di avere configurato HAProxy come servizio di bilanciamento del carico prima di provare a installare l'estensione.
Risorse create dall'estensione App contenitore
Quando l'estensione App contenitore viene installata nel cluster Kubernetes abilitato per Azure Arc, vengono create diverse risorse nello spazio dei nomi della versione specificato. Queste risorse consentono al cluster di essere un'estensione del provider di risorse Microsoft.App
per supportare la gestione e il funzionamento delle app.
Facoltativamente, è possibile scegliere di installare l'estensione KEDA per il ridimensionamento basato su eventi. Tuttavia, nel cluster è consentita solo un'installazione KEDA. Se si dispone di un'installazione esistente, disabilitare l'installazione di KEDA durante l'installazione dell'estensione del cluster.
La tabella seguente descrive il ruolo di ogni revisione creata automaticamente:
Pod | Descrizione | Numero di istanze | CPU | Memoria | Type |
---|---|---|---|---|---|
<extensionName>-k8se-activator |
Usato come parte della pipeline di ridimensionamento | 2 | 100 millicpu | 500 MB | ReplicaSet |
<extensionName>-k8se-billing |
Generazione di record di fatturazione: le app contenitore di Azure in Kubernetes con abilitazione di Azure Arc sono gratuite durante l'anteprima | 3 | 100 millicpu | 100 MB | ReplicaSet |
<extensionName>-k8se-containerapp-controller |
Pod dell'operatore principale che crea risorse nel cluster e mantiene lo stato dei componenti. | 2 | 100 millicpu | 1 GB | ReplicaSet |
<extensionName>-k8se-envoy |
Livello proxy front-end per tutte le richieste HTTP del piano dati. Instrada il traffico in ingresso alle app corrette. | 3 | 1 core | 1.536 MB | ReplicaSet |
<extensionName>-k8se-envoy-controller |
Operatore, che genera la configurazione Envoy | 2 | 200 millicpu | 500 MB | ReplicaSet |
<extensionName>-k8se-event-processor |
Destinazione di routing alternativa per aiutare le app con scalabilità orizzontale a zero mentre il sistema ottiene la prima istanza disponibile. | 2 | 100 millicpu | 500 MB | ReplicaSet |
<extensionName>-k8se-http-scaler |
Monitora il volume delle richieste in ingresso per fornire informazioni di ridimensionamento per KEDA. | 1 | 100 millicpu | 500 MB | ReplicaSet |
<extensionName>-k8se-keda-cosmosdb-scaler |
KEDA Cosmos DB Scaler | 1 | 10 m | 128 MB | ReplicaSet |
<extensionName>-k8se-keda-metrics-apiserver |
Server delle metriche KEDA | 1 | 1 core | 1.000 MB | ReplicaSet |
<extensionName>-k8se-keda-operator |
Ridimensiona i carichi di lavoro da 0/1 a N istanze | 1 | 100 millicpu | 500 MB | ReplicaSet |
<extensionName>-k8se-log-processor |
Raccoglie i log dalle app e da altri componenti e li invia a Log Analytics. | 2 | 200 millicpu | 500 MB | DaemonSet |
<extensionName>-k8se-mdm |
Agente metriche e log | 2 | 500 millicpu | 500 MB | ReplicaSet |
dapr-metrics | Pod delle metriche Dapr | 1 | 100 millicpu | 500 MB | ReplicaSet |
dapr-operator | Gestisce gli aggiornamenti dei componenti e gli endpoint di servizio per Dapr | 1 | 100 millicpu | 500 MB | ReplicaSet |
dapr-placement-server | Usato solo per Actors: crea tabelle di mapping che eseguono il mapping delle istanze dell'attore ai pod | 1 | 100 millicpu | 500 MB | StatefulSet |
dapr-sentry | Gestisce mTLS tra i servizi e funge da CA | 2 | 800 millicpu | 200 MB | ReplicaSet |
Domande frequenti sulle app di Azure Container in Azure Arc (anteprima)
- Quanto costa?
- Quali funzionalità di App contenitore sono supportate?
- Le identità gestite sono supportate?
- Esistono limiti di scalabilità?
- Quali log vengono raccolti?
- Cosa fare se viene visualizzato un errore di registrazione del provider?
- L'estensione può essere installata nei nodi Windows?
- È possibile distribuire l'estensione App contenitore in un cluster basato su Arm64?
Quanto costa?
Le app azure Container in Kubernetes abilitate per Azure Arc sono gratuite durante l'anteprima pubblica.
Quali funzionalità di App contenitore sono supportate?
Durante il periodo di anteprima, alcune funzionalità dell'app Azure Container vengono convalidate. Quando sono supportate, le opzioni di spostamento a sinistra nel portale di Azure verranno attivate. Le funzionalità non ancora supportate rimangono disattivate.
Le identità gestite sono supportate?
Le identità gestite non sono supportate. Le app non possono essere assegnate alle identità gestite durante l'esecuzione in Azure Arc. Se l'app necessita di un'identità per l'uso di un'altra risorsa di Azure, prendere in considerazione l'uso di un'entità servizio dell'applicazione.
Esistono limiti di scalabilità?
Tutte le applicazioni distribuite con app Azure Container in Kubernetes abilitate per Azure Arc possono essere ridimensionate entro i limiti del cluster Kubernetes sottostante. Se il cluster esaurisce le risorse di calcolo disponibili (CPU e memoria principalmente), le applicazioni vengono ridimensionate fino al numero di istanze dell'applicazione che Kubernetes può pianificare con la risorsa disponibile.
Quali log vengono raccolti?
I log per i componenti di sistema e le applicazioni vengono scritti nell'output standard.
Entrambi i tipi di log possono essere raccolti per l'analisi usando gli strumenti standard di Kubernetes. È anche possibile configurare l'estensione del cluster dell'ambiente dell'applicazione con un'area di lavoro Log Analytics e invia tutti i log a tale area di lavoro.
Per impostazione predefinita, i log dei componenti di sistema vengono inviati al team di Azure. I log dell'applicazione non vengono inviati. È possibile impedire il trasferimento dei log impostando logProcessor.enabled=false
come impostazione di configurazione dell'estensione. Questa impostazione di configurazione disabilita l'inoltro dell'applicazione all'area di lavoro Log Analytics. La disabilitazione del processore di log potrebbe influire sul tempo necessario per tutti i casi di supporto e verrà chiesto di raccogliere i log dall'output standard tramite altri mezzi.
Cosa fare se viene visualizzato un errore di registrazione del provider?
Quando si crea una risorsa di ambiente connesso di App Azure Container, alcune sottoscrizioni potrebbero visualizzare l'errore "Nessun provider di risorse registrato trovato". I dettagli dell'errore possono includere un set di posizioni e versioni api considerate valide. Se viene restituito questo messaggio di errore, la sottoscrizione deve essere nuovamente registrata con il provider Microsoft.App
. La ripetizione della registrazione del provider non ha alcun effetto sulle applicazioni o sulle API esistenti. Per ripetere la registrazione, usare l'interfaccia della riga di comando di Azure per eseguire az provider register --namespace Microsoft.App --wait
. Ripetere quindi il comando dell'ambiente connesso.
L'estensione può essere installata nei nodi Windows?
No, l'estensione non può essere installata nei nodi Windows. L'estensione supporta l'installazione solo in nodi Linux.
È possibile distribuire l'estensione App contenitore in un cluster basato su Arm64?
I cluster basati su Arm64 non sono attualmente supportati.
Note sulla versione dell'estensione
Estensione App contenitore v1.0.46 (dicembre 2022)
- Versione di anteprima pubblica iniziale dell'estensione App contenitore
Estensione App contenitore v1.0.47 (gennaio 2023)
- Aggiornamento di Envoy alla versione 1.0.24
Estensione App contenitore v1.0.48 (febbraio 2023)
- Aggiungere probe a contenitori EasyAuth
- Aumento del limite di memoria per dapr-operator
- Aggiunta della prevenzione della sovrascrittura dell'intestazione della piattaforma
Estensione App contenitore v1.0.49 (febbraio 2023)
- Aggiornamento di KEDA alla versione 2.9.1 e di Dapr alla versione 1.9.5
- Aumentare i limiti delle risorse del controller Envoy a 200 m CPU
- Aumentare i limiti delle risorse di Controller app contenitore a 1 GB di memoria
- Ridurre i limiti delle risorse sidecar EasyAuth a 50 m CPU
- Risolvere la registrazione degli errori KEDA per i valori delle metriche mancanti
Estensione App contenitore v1.0.50 (marzo 2023)
- Aggiornamento delle immagini di registrazione sincronizzate con il cloud pubblico
Estensione App contenitore v1.5.1 (aprile 2023)
- Nuovo formato numero di controllo delle versioni
- Aggiornamento di Dapr alla versione 1.10.4
- Mantenere la scalabilità di Envoy dopo le distribuzioni di nuove revisioni
- Passare a quando i probe di avvio predefiniti vengono aggiunti a un contenitore, se lo sviluppatore non definisce probe di avvio e preparazione, vengono aggiunti probe di avvio predefiniti
- Aggiunge la variabile di ambiente CONTAINER_APP_REPLICA_NAME a contenitori personalizzati
- Miglioramento delle prestazioni quando vengono arrestate più revisioni
Estensione App contenitore v1.12.8 (giugno 2023)
- Aggiornare OSS Fluent Bit a 2.1.2 e Dapr a 1.10.6
- Supporto per i registri contenitori esposti sulla porta personalizzata
- Abilitare l'attivazione/disattivazione della revisione quando un'app contenitore viene arrestata
- Correzione dell'elenco revisioni che non restituisce contenitori init
- Per impostazione predefinita, consente l'aggiunta di intestazioni per i criteri CORS
Estensione App contenitore v1.12.9 (luglio 2023)
- Aggiornamenti secondari ai contenitori sidecar EasyAuth
- Aggiornamento degli agenti di monitoraggio delle estensioni
Estensione App contenitore v1.17.8 (agosto 2023)
- Aggiornare EasyAuth alla versione 1.6.16, Dapr a 1.10.8 ed Envoy a 1.25.6
- Aggiungere il supporto per il montaggio dei volumi per i processi dell'app Azure Container
- Aggiunta di restrizioni IP per le applicazioni con tipo di ingresso TCP
- Aggiunta del supporto per app contenitore con più porte esposte
Estensione App contenitore v1.23.5 (dicembre 2023)
- Aggiornare Envoy alla versione 1.27.2, da KEDA alla versione 2.10.0, da EasyAuth a 1.6.20 e Dapr a 1.11
- Impostare Envoy su max TLS 1.3
- Correzione per risolvere gli arresti anomali nei pod del processore di log
- Correzione dei problemi di recupero dei segreti pull dell'immagine
- Aggiornare il posizionamento di Envoy per la distribuzione tra i nodi disponibili, dove possibile
- Quando il provisioning delle app contenitore non riesce a causa di conflitti di revisione, impostare lo stato di provisioning su non riuscito
Estensione App contenitore v1.30.6 (gennaio 2024)
- Aggiornare KEDA alla versione 2.12, l'immagine Envoy SC alla versione 1.0.4 e l'immagine Dapr alla versione 1.11.6
- Aggiunta del timeout di risposta predefinito per le route Envoy a 1.800 secondi
- Modifica del livello di log predefinito del bit Fluent per avvisare
- Ritardare l'eliminazione dei pod di processo per garantire l'emissione di log
- Correzione del problema relativo all'eliminazione del pod del processo per le esecuzioni di processi non riuscite
- Verificare che i processi in stato sospeso abbiano eliminato pod non riusciti
- Aggiornamento per non risolvere HTTPOptions per le applicazioni TCP
- Consentire alle applicazioni di rimanere in ascolto su HTTP o HTTPS
- Aggiungere la possibilità di sospendere i processi
- Correzione del problema per cui lo scaler KEDA non è riuscito a creare un processo dopo l'arresto dell'esecuzione del processo
- Aggiungere startingDeadlineSeconds al processo dell'app contenitore se è presente un riavvio del cluster
- Rimozione della registrazione pesante nel server di log di accesso Envoy
- Versione aggiornata della configurazione di monitoraggio per le app di Azure Container in Kubernetes con abilitazione di Azure Arc
Estensione App contenitore v1.36.15 (aprile 2024)
- Aggiornare Dapr a v1.12 e Dapr Metrics a v0.6 (Dapr a v1.12 e Dapr Metrics a v0.6)
- Consentire ai clienti di abilitare la registrazione di debug di Azure SDK in Dapr
- Ridimensionare Envoy in risposta all'utilizzo della memoria
- Modifica del formato del log Envoy in Json
- Esportare metriche Envoy aggiuntive
- Troncare il log di Envoy ai primi 1.024 caratteri quando il contenuto del log non è stato analizzato
- Gestire SIGTERM normalmente nel proxy locale
- Possibilità di usare spazi dei nomi diversi con KEDA
- Convalida aggiunta per il nome della regola di scalabilità
- GC revisione abilitata per impostazione predefinita
- Abilitazione dell'emissione di metriche per sidecar
- Aggiunta di volumiMount alle esecuzioni dei processi
- Aggiunta della convalida agli endpoint del webhook per i processi
Estensione App contenitore v1.37.1 (luglio 2024)
- Aggiornare EasyAuth per supportare MISE
Estensione App contenitore v1.37.2 (settembre 2024)
- Aggiornamento dell'immagine Dapr-Metrics alla versione 0.6.8 per risolvere il problema di timeout di rete
- Risoluzione del problema del processore di log che impediva l'avvio del contenitore MDSD quando il cluster è connesso dietro un proxy
Estensione App contenitore v1.37.7 (ottobre 2024)
- Problema risolto con il contenitore MDM Init che causava l'arresto anomalo del contenitore nel caso in cui non fosse stato possibile eseguire il pull
- Aggiunta del supporto per il modello di distribuzione ibrida di App per la logica (anteprima pubblica)
Passaggi successivi
Creare un ambiente connesso ad App contenitore di Azure (anteprima)