Personalizzare l'uscita del cluster con tipi in uscita in servizio Azure Kubernetes (servizio Azure Kubernetes)

È possibile personalizzare l'uscita per un cluster del servizio Azure Kubernetes in base a scenari specifici. Per impostazione predefinita, il servizio Azure Kubernetes eseguirà il provisioning di un servizio di bilanciamento del carico dello SKU standard da configurare e usare per l'uscita. La configurazione predefinita potrebbe, però, non soddisfare i requisiti di tutti gli scenari se gli indirizzi IP pubblici non sono consentiti o se per l'uscita sono necessari hop aggiuntivi.

Questo articolo illustra i vari tipi di connettività in uscita disponibili nei cluster del servizio Azure Kubernetes.

Nota

È ora possibile aggiornare dopo la outboundType creazione del cluster. Questa funzionalità è in anteprima. Vedere Aggiornamento di 'outboundType dopo la creazione del cluster (anteprima).

Limiti

  • Per impostare outboundType, sono necessari cluster del servizio Azure Kubernetes con vm-set-type impostato su VirtualMachineScaleSets e load-balancer-sku impostato su Standard.

Tipi in uscita nel servizio Azure Kubernetes

È possibile configurare un cluster del servizio Azure Kubernetes usando i tipi in uscita seguenti: bilanciamento del carico, gateway NAT o routing definito dall'utente. Il tipo in uscita influisce solo sul traffico in uscita del cluster. Per altre informazioni, vedere Configurazione dei controller di ingresso.

Nota

È possibile usare la propria [tabella di route][byo-route-table] con la route definita dall'utente e la rete kubenet. Assicurarsi che l'identità del cluster (entità servizio o identità gestita) disponga delle autorizzazioni di Collaboratore per la tabella di route personalizzata.

Tipo in uscita di loadBalancer

Il servizio di bilanciamento del carico viene usato per l'uscita tramite un indirizzo IP pubblico assegnato al servizio Azure Kubernetes. Il tipo in uscita loadBalancer supporta i servizi Kubernetes di tipo loadBalancer, che prevedono l'uscita dal bilanciamento del carico creato dal provider di risorse del servizio Azure Kubernetes.

Se loadBalancer è impostato, il servizio Azure Kubernetes completa automaticamente la configurazione seguente:

  • Viene effettuato il provisioning di un indirizzo IP pubblico per l'uscita del cluster.
  • L'indirizzo IP pubblico viene assegnato alla risorsa del bilanciamento del carico.
  • I pool back-end per il servizio di bilanciamento del carico vengono configurati per i nodi agente nel cluster.

Diagram shows ingress I P and egress I P, where the ingress I P directs traffic to a load balancer, which directs traffic to and from an internal cluster and other traffic to the egress I P, which directs traffic to the Internet, M C R, Azure required services, and the A K S Control Plane.

Per altre informazioni, vedere Uso di un servizio di bilanciamento del carico standard nel servizio Azure Kubernetes.

Tipo in uscita di managedNatGateway o userAssignedNatGateway

Se managedNatGateway o userAssignedNatGateway sono selezionati per outboundType, il servizio Azure Kubernetes si basa sul gateway NAT di rete di Azure per l'uscita del cluster.

  • Selezionare managedNatGateway quando si usano reti virtuali gestite. Il servizio Azure Kubernetes effettua il provisioning di un gateway NAT e lo collega alla subnet del cluster.
  • Selezionare userAssignedNatGateway quando si usa la rete virtuale Bring Your Own. Questa opzione richiede che sia stato effettuato il provisioning di un gateway NAT prima della creazione del cluster.

Per altre informazioni, vedere Uso del gateway NAT con il servizio Azure Kubernetes.

Tipo in uscita di userDefinedRouting

Nota

Il userDefinedRouting tipo in uscita è uno scenario di rete avanzato e richiede una configurazione di rete appropriata.

Se userDefinedRouting è impostato, il servizio Azure Kubernetes non configurerà automaticamente i percorsi in uscita. La configurazione in uscita deve essere eseguita dall'utente.

È necessario distribuire il cluster del servizio Azure Kubernetes in una rete virtuale esistente con una subnet configurata in precedenza. Poiché non si usa un'architettura SLB (Load Balancer Standard), è necessario stabilire un uscita esplicito. Questa architettura richiede l'invio esplicito del traffico in uscita a un'appliance, ad esempio un firewall, un gateway, un proxy o l'autorizzazione NAT a essere eseguita da un indirizzo IP pubblico assegnato al servizio di bilanciamento del carico standard o all'appliance.

Per altre informazioni, vedere Configurazione dell'uscita del cluster tramite il routing definito dall'utente.

Aggiornamento outboundType dopo la creazione del cluster (anteprima)

La modifica del tipo in uscita dopo la creazione del cluster distribuirà o rimuoverà le risorse necessarie per inserire il cluster nella nuova configurazione in uscita.

Le tabelle seguenti illustrano i percorsi di migrazione supportati tra i tipi in uscita per le reti virtuali GESTITE e BYO.

Percorsi di migrazione supportati per la rete virtuale gestita

Rete virtuale gestita loadBalancer managedNATGateway userAssignedNATGateway userDefinedRouting
loadBalancer N/D Supportata Non supportato Supportato
managedNATGateway Supportata N/D Non supportato Supportato
userAssignedNATGateway Non supportato Non supportato N/D Non supportato
userDefinedRouting Supportata Supportato Non supportato N/D

Percorsi di migrazione supportati per la rete virtuale BYO

Rete virtuale BYO loadBalancer managedNATGateway userAssignedNATGateway userDefinedRouting
loadBalancer N/D Non supportato Supportata Supportata
managedNATGateway Non supportato N/D Non supportato Non supportato
userAssignedNATGateway Supportato Non supportato N/D Supportata
userDefinedRouting Supportato Non supportato Supportata N/D

La migrazione è supportata solo tra loadBalancer, managedNATGateway (se si usa una rete virtuale gestita) userAssignedNATGateway e userDefinedRouting (se si usa una rete virtuale personalizzata).

Avviso

La migrazione del tipo in uscita ai tipi gestiti dall'utente (userAssignedNATGateway e userDefinedRouting) modificherà gli indirizzi IP pubblici in uscita del cluster. se gli intervalli IP autorizzati sono abilitati, assicurarsi che venga aggiunto un nuovo intervallo ip in uscita all'intervallo ip autorizzato.

Avviso

La modifica del tipo in uscita in un cluster causa un'interruzione della connettività di rete e comporterà una modifica dell'indirizzo IP in uscita del cluster. Se sono state configurate regole del firewall per limitare il traffico dal cluster, è necessario aggiornarle in modo che corrispondano al nuovo indirizzo IP in uscita.

Importante

Le funzionalità di anteprima del servizio Azure Kubernetes sono disponibili in modalità self-service e acconsentono esplicitamente. Le anteprime vengono fornite "così com'è" e "come disponibili" e vengono escluse dai contratti di servizio e dalla garanzia limitata. Le anteprime del servizio Azure Kubernetes sono parzialmente coperte dal supporto tecnico per un'operazione ottimale. Di conseguenza, queste funzionalità non sono destinate all'uso in produzione. Per altre informazioni, vedere gli articoli di supporto seguenti:

Installare l'estensione dell'interfaccia della aks-preview riga di comando di Azure

aks-preview È necessaria la versione 0.5.113.

  • Installare e aggiornare l'estensione aks-preview .
# Install aks-preview extension
az extension add --name aks-preview
# Update aks-preview extension
az extension update --name aks-preview

Registrare il flag di AKS-OutBoundTypeMigrationPreview funzionalità

  1. Registrare il flag di AKS-OutBoundTypeMigrationPreview funzionalità usando il az feature register comando . Sono necessari alcuni minuti per visualizzare lo stato Registered.
az feature register --namespace "Microsoft.ContainerService" --name "AKS-OutBoundTypeMigrationPreview"
  1. Verificare lo stato della registrazione usando il az feature show comando .
az feature show --namespace "Microsoft.ContainerService" --name "AKS-OutBoundTypeMigrationPreview"
  1. Quando lo stato riflette Registered, aggiornare la registrazione del provider di risorse Microsoft.ContainerService usando il az provider register comando .
az provider register --namespace Microsoft.ContainerService

Aggiornare il cluster per usare un nuovo tipo in uscita

  • Aggiornare la configurazione in uscita del cluster usando il az aks update comando .

Aggiornare il cluster da loadbalancer a managedNATGateway

az aks update -g <resourceGroup> -n <clusterName> --outbound-type managedNATGateway --nat-gateway-managed-outbound-ip-count <number of managed outbound ip>

Aggiornare il cluster da managedNATGateway a loadbalancer

az aks update -g <resourceGroup> -n <clusterName> \
--outbound-type loadBalancer \
<--load-balancer-managed-outbound-ip-count <number of managed outbound ip>| --load-balancer-outbound-ips <outbound ip ids> | --load-balancer-outbound-ip-prefixes <outbound ip prefix ids> >

Avviso

Non riutilizzare un indirizzo IP già in uso nelle configurazioni in uscita precedenti.

Aggiornare il cluster da managedNATGateway a userDefinedRouting

az aks update -g <resourceGroup> -n <clusterName> --outbound-type userDefinedRouting

Aggiornare il cluster da loadbalancer a userAssignedNATGateway nello scenario di rete virtuale BYO

az aks update -g <resourceGroup> -n <clusterName> --outbound-type userAssignedNATGateway

Passaggi successivi