Rete nell'ambiente App contenitore di Azure

App contenitore di Azure opera nel contesto di un ambiente, che usa una propria rete virtuale. Quando si crea un ambiente, alcune considerazioni chiave informano le funzionalità di rete delle app contenitore: tipo di ambiente, tipo di rete virtuale e livello di accessibilità.

Selezione dell'ambiente

Container Apps ha due tipi di ambiente. Condividono molte delle stesse caratteristiche di rete, con alcune differenze chiave.

Tipo di ambiente Tipi di piano supportati Descrizione
Profili del carico di lavoro (impostazione predefinita) A consumo, Dedicato Supporta route definite dall'utente (UDR), uscita tramite Gateway NAT di Azure e creazione di endpoint privati nell'ambiente dell'app contenitore. La dimensione minima richiesta della subnet è /27.
Solo consumo (vecchia versione) Consumo Non supporta UDR, traffico in uscita tramite Gateway NAT di Azure, peering tramite gateway remoto o altre configurazioni di uscita personalizzate. La dimensione minima richiesta della subnet è /23.

Per altre informazioni, vedere Tipi di ambiente.

Tipo di rete virtuale

Per impostazione predefinita, Container Apps è integrato nella rete Azure, che è accessibile pubblicamente via Internet e può comunicare solo con endpoint accessibili da Internet. È anche possibile fornire una rete virtuale esistente durante la creazione dell'ambiente. Dopo aver creato un ambiente con la rete Azure predefinita o una rete virtuale esistente, non è possibile modificare il tipo di rete.

Usare una rete virtuale esistente quando sono necessarie Azure funzionalità di rete, ad esempio:

  • Gruppi di sicurezza di rete.
  • Integrazione con gateway applicazione di Azure.
  • integrazione Firewall di Azure.
  • Controllare il traffico in uscita dall'app contenitore.
  • Accesso alle risorse tramite gli endpoint privati nella tua rete virtuale.

Se si utilizza una rete virtuale esistente, è necessario specificare una subnet dedicata esclusivamente all'ambiente Container Apps che si distribuisce. Questa subnet non è disponibile per altri servizi. Per altre informazioni, vedere Configurazione della rete virtuale.

Livello di accessibilità

È possibile configurare se l'app contenitore consente l'ingresso pubblico o l'ingresso solo dall'interno della rete virtuale a livello di ambiente.

Livello di accessibilità Descrizione
Esterno L'app contenitore può accettare richieste pubbliche. Gli ambienti esterni vengono distribuiti con un indirizzo IP virtuale in un indirizzo IP pubblico esterno.
Interno Gli ambienti interni non hanno endpoint pubblici e vengono distribuiti con un indirizzo IP virtuale mappato a un indirizzo IP interno. L'endpoint interno è un servizio di bilanciamento del carico interno Azure. Gli indirizzi IP vengono emessi dall'elenco di indirizzi IP privati della rete virtuale esistente.

Accesso alla rete pubblica

L'impostazione per l'accesso alla rete pubblica determina se l'ambiente app contenitore è accessibile dalla rete Internet pubblica. L'eventuale modifica di questa impostazione dopo la creazione dell'ambiente dipende dalla configurazione IP virtuale dell'ambiente. La tabella seguente mostra i valori validi per l'accesso alla rete pubblica, a seconda della configurazione IP virtuale dell'ambiente.

IP virtuale Accesso alla rete pubblica supportato Descrizione
Esterno Enabled, Disabled L'ambiente di Container Apps è stato creato con un endpoint accessibile tramite Internet. L'impostazione per l'accesso alla rete pubblica determina se il traffico viene accettato tramite l'endpoint pubblico o solo tramite endpoint privati. È possibile modificare questa impostazione dopo aver creato l'ambiente.
Interno Disabled L'ambiente di App contenitore è stato creato senza un endpoint accessibile tramite Internet. Non è possibile modificare l'impostazione per l'accesso alla rete pubblica per accettare il traffico da Internet.

Per creare endpoint privati nell'ambiente App contenitore, è necessario impostare l'accesso alla rete pubblica su Disabled.

I criteri di rete di Azure sono supportati dal flag per l'accesso alla rete pubblica.

Configurazione dell'ingresso

Nella sezione in ingresso è possibile configurare le impostazioni seguenti:

  • Abilita o disabilita l'accesso in ingresso per la tua app contenitore.

  • Consenti il traffico verso l'app contenitore da ovunque oppure solo dall'interno dello stesso ambiente di Container Apps.

  • Definire regole di suddivisione del traffico tra revisioni dell'applicazione. Per altre informazioni, vedere Suddivisione del traffico.

Per altre informazioni sugli scenari di rete, vedere Ingress in App contenitore di Azure.

Funzionalità in ingresso

Caratteristica / Funzionalità Scopri come
Ingress

Configurare l'ingresso
Controllare il routing del traffico esterno e interno dell'applicazione contenitore.
Ingresso Premium Configurare le impostazioni avanzate per l'ingresso, ad esempio il supporto del profilo di carico di lavoro per l'ingresso e il timeout di inattività.
Restrizioni IP Limitare il traffico in ingresso all'app contenitore in base all'indirizzo IP.
Autenticazione con certificato client Configurare l'autenticazione del certificato client (nota anche come TLS reciproco o mTLS) per l'app container.
Suddivisione del traffico

Distribuzione blu/verde
Suddividere il traffico in ingresso tra le revisioni attive dell'app di contenitore.
Affinità di sessione Instradare tutte le richieste da un client alla stessa replica dell'app contenitore.
Condivisione delle risorse tra origini diverse (CORS) Abilitare CORS per l'app contenitore, che consente le richieste effettuate tramite il browser a un dominio che non corrisponde all'origine della pagina.
Routing basato sul percorso Usare le regole per instradare le richieste a app contenitore diverse nell'ambiente, a seconda del percorso di ogni richiesta.
Reti virtuali Configurare la rete virtuale per l'ambiente di Container Apps.
DNS Configura il DNS per la rete virtuale dell'ambiente Container Apps.
Endpoint privato Usare un endpoint privato per accedere in modo sicuro all'app contenitore senza esponerla a Internet pubblico.
Integrazione con Frontdoor di Azure Connettersi direttamente da Frontdoor di Azure a un'app contenitore usando un collegamento privato anziché la rete Internet pubblica.

Funzionalità in uscita

Caratteristica / Funzionalità Scopri come
Uso di Firewall di Azure Usare Firewall di Azure per controllare il traffico in uscita dall'app contenitore.
Reti virtuali Configurare la rete virtuale per l'ambiente di app contenitore.
Protezione di una rete virtuale esistente con un gruppo di sicurezza di rete Contribuisci a proteggere la rete virtuale dell'ambiente Container Apps usando un gruppo di sicurezza di rete.
integrazione con il gateway NAT di Azure Usare Gateway NAT di Azure per semplificare la connettività Internet in uscita nella rete virtuale in un ambiente del profilo del carico di lavoro.

Articoli di istruzioni

Articolo Scopri come
Fornire una rete virtuale a un ambiente di App Azure Container Usare una rete virtuale.
Proteggi App contenitore di Azure con il Web application firewall in Application Gateway Configurare Web application firewall di Azure in gateway applicazione di Azure.
Controlre il traffico in uscita in App contenitore di Azure con route definite dall'utente Abilita UDR.
Use mTLS in App contenitore di Azure Creare un'applicazione mTLS in Container Apps.
Usare un endpoint privato con un ambiente App contenitore di Azure Usare un endpoint privato per accedere in modo sicuro all'app contenitore senza esponerla a Internet pubblico.
Creare un collegamento privato a un'app contenitore con Frontdoor di Azure Connettersi direttamente da Frontdoor di Azure a un'app contenitore usando un collegamento privato anziché la rete Internet pubblica.

Sicurezza dell'ambiente

Diagramma che mostra come contribuire a proteggere la tua rete per Container Apps.

È possibile contribuire a proteggere l'ambiente del profilo del carico di lavoro relativo al traffico di rete in entrata e in uscita adottando le azioni seguenti:

Comportamento del proxy perimetrale HTTP

App contenitore di Azure usa un proxy HTTP perimetrale che termina TLS e instrada le richieste a ogni applicazione.

Le applicazioni HTTP si ridimensionano in base al numero di richieste e connessioni HTTP. Envoy instrada il traffico interno all'interno dei cluster.

Le connessioni downstream supportano HTTP/1.1 e HTTP/2. Envoy rileva e aggiorna automaticamente le connessioni se la connessione client richiede un aggiornamento.

È possibile definire le connessioni upstream impostando la proprietà transport sull'oggetto ingress.

Dipendenze del portale

Per ogni app in App contenitore sono disponibili due URL.

Il runtime di Container Apps genera inizialmente un nome di dominio completo (FQDN) utilizzato per accedere alla tua app. Per ottenere l'FQDN della tua app contenitore, vai alla tua app contenitore nel portale di Azure. Nel riquadro Panoramica, l'FQDN è il valore URL dell'applicazione.

Viene generato automaticamente anche un secondo URL. Questa posizione consente l'accesso al servizio di streaming dei log e alla console. Se necessario, aggiungere https://azurecontainerapps.dev/ all'elenco consenti del firewall o del proxy.

Porte e indirizzi IP

Per le connessioni in ingresso vengono esposte le porte seguenti:

Protocollo Porte
HTTP/HTTPS 80, 443

Gli indirizzi IP hanno i tipi seguenti:

Tipo Descrizione
Indirizzo IP pubblico in ingresso Usato per il traffico dell'applicazione in una distribuzione esterna e per il traffico di gestione sia nelle distribuzioni interne che esterne.
Indirizzo IP pubblico in uscita Usato come IP di origine per le connessioni in uscita che lasciano la rete virtuale. Queste connessioni non vengono instradate verso un VPN. Gli indirizzi IP in uscita potrebbero cambiare nel tempo. L'uso di Gateway NAT di Azure o di un altro proxy per il traffico in uscita da un ambiente di Container Apps è supportato solo in un ambiente con profilo di carico di lavoro.
IP bilanciamento del carico interno IP Esiste solo in un ambiente interno.