Che cos'è il Controller in ingresso del gateway applicazione?

Il controller di ingresso (AGIC) gateway applicazione è un'applicazione Kubernetes, che consente ai clienti di servizio Azure Kubernetes (AKS) di sfruttare il servizio di bilanciamento del carico nativo di Azure gateway applicazione L7 per esporre il software cloud a Internet. AGIC monitora il cluster Kubernetes ospitato in e aggiorna continuamente un gateway applicazione, in modo che i servizi selezionati vengano esposti a Internet.

Il controller di ingresso viene eseguito nel proprio pod nel servizio Azure Kubernetes del cliente. AGIC esegue il monitoraggio di un subset di risorse Kubernetes per rilevare eventuali modifiche. Lo stato del cluster del servizio Azure Kubernetes viene convertito in gateway applicazione configurazione specifica e applicato ad Azure Resource Manager (ARM).

Suggerimento

Vedere anche Che cos'è gateway applicazione per i contenitori? attualmente in anteprima pubblica.

Vantaggi del controller di ingresso di gateway applicazione

AGIC consente di eliminare la necessità di avere un altro indirizzo IP pubblico o di bilanciamento del carico davanti al cluster del servizio Azure Kubernetes ed evita più hop nel percorso dati prima che le richieste raggiungano il cluster del servizio Azure Kubernetes. gateway applicazione comunica con i pod usando direttamente l'indirizzo IP privato e non richiede i servizi NodePort o KubeProxy. Questa funzionalità offre anche prestazioni migliori per le distribuzioni.

Il controller di ingresso è supportato esclusivamente da SKU Standard_v2 e WAF_v2, che consentono anche i vantaggi della scalabilità automatica. gateway applicazione può reagire in risposta a un aumento o a una riduzione del carico del traffico e della scalabilità di conseguenza, senza usare risorse dal cluster del servizio Azure Kubernetes.

L'uso di gateway applicazione oltre a AGIC consente anche di proteggere il cluster del servizio Azure Kubernetes fornendo funzionalità di web application firewall (WAF) e criteri TLS.

Azure Application Gateway + AKS

AGIC viene configurato tramite la risorsa in ingresso Kubernetes, insieme a Service and Deployments/Pods.AGIC is configured via the Kubernetes Ingress resource, insieme a Service and Deployments/Pods. Offre molte funzionalità, usando il servizio di bilanciamento del carico nativo di Azure gateway applicazione L7. Per denominare alcuni elementi:

  • Routing basato su URL
  • Affinità basata sui cookie
  • Terminazione TLS
  • TLS end-to-end
  • Supporto per siti Web pubblici, privati e ibridi
  • Web application firewall integrato

Differenza tra la distribuzione Helm e il componente aggiuntivo del servizio Azure Kubernetes

Esistono due modi per distribuire AGIC per il cluster del servizio Azure Kubernetes. Il primo modo è attraverso Helm; il secondo consiste nell'usare il servizio Azure Kubernetes come componente aggiuntivo. Il vantaggio principale della distribuzione di AGIC come componente aggiuntivo del servizio Azure Kubernetes è che è più semplice rispetto alla distribuzione tramite Helm. Per una nuova configurazione, è possibile distribuire un nuovo gateway applicazione e un nuovo cluster del servizio Azure Kubernetes con AGIC abilitato come componente aggiuntivo in una riga nell'interfaccia della riga di comando di Azure. Il componente aggiuntivo è anche un servizio completamente gestito, che offre vantaggi aggiuntivi, ad esempio gli aggiornamenti automatici e l'aumento del supporto. Entrambi i modi per distribuire il componente aggiuntivo AGIC (Helm e servizio Azure Kubernetes) sono completamente supportati da Microsoft. Inoltre, il componente aggiuntivo consente una migliore integrazione con il servizio Azure Kubernetes come componente aggiuntivo di prima classe.

Il componente aggiuntivo AGIC viene ancora distribuito come pod nel cluster del servizio Azure Kubernetes del cliente, ma esistono alcune differenze tra la versione di distribuzione Helm e la versione del componente aggiuntivo di AGIC. Di seguito è riportato un elenco delle differenze tra le due versioni:

  • I valori di distribuzione Helm non possono essere modificati nel componente aggiuntivo servizio Azure Kubernetes:
    • verbosityLevel è impostato su 5 per impostazione predefinita
    • usePrivateIp è impostato su false per impostazione predefinita; questa impostazione può essere sovrascritta dall'annotazione use-private-ip
    • shared non è supportato nel componente aggiuntivo
    • reconcilePeriodSeconds non è supportato nel componente aggiuntivo
    • armAuth.type non è supportato nel componente aggiuntivo
  • AGIC distribuito tramite Helm supporta ProhibitedTargets, il che significa che AGIC può configurare il gateway applicazione specificamente per i cluster del servizio Azure Kubernetes senza influire su altri back-end esistenti. Il componente aggiuntivo AGIC attualmente non supporta questa funzionalità.
  • Poiché il componente aggiuntivo AGIC è un servizio gestito, i clienti vengono aggiornati automaticamente alla versione più recente del componente aggiuntivo AGIC, a differenza di AGIC distribuito tramite Helm in cui il cliente deve aggiornare manualmente AGIC.

Nota

I clienti possono distribuire un solo componente aggiuntivo AGIC per ogni cluster del servizio Azure Kubernetes e ogni componente aggiuntivo AGIC attualmente può essere predefinito solo un gateway applicazione. Per le distribuzioni che richiedono più controller AGIC per cluster o più AGIC destinati a un gateway applicazione, continuare a usare AGIC distribuito tramite Helm.

Passaggi successivi

  • Distribuzione del componente aggiuntivo Greenfield del servizio Azure Kubernetes: istruzioni sull'installazione di componenti aggiuntivi AGIC, servizio Azure Kubernetes e gateway applicazione nell'infrastruttura a slate vuota.
  • Distribuzione del componente aggiuntivo Brownfield del servizio Azure Kubernetes: installare il componente aggiuntivo AGIC in un cluster del servizio Azure Kubernetes con un gateway applicazione esistente.
  • Distribuzione Helm Greenfield: installare AGIC tramite Helm, nuovo cluster del servizio Azure Kubernetes e nuove gateway applicazione nell'infrastruttura a slate vuota.
  • Distribuzione Helm Brownfield: distribuire AGIC tramite Helm in un cluster del servizio Azure Kubernetes esistente e gateway applicazione.