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 convm-set-type
impostato suVirtualMachineScaleSets
eload-balancer-sku
impostato suStandard
.
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.
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à
- Registrare il flag di
AKS-OutBoundTypeMigrationPreview
funzionalità usando ilaz feature register
comando . Sono necessari alcuni minuti per visualizzare lo stato Registered.
az feature register --namespace "Microsoft.ContainerService" --name "AKS-OutBoundTypeMigrationPreview"
- Verificare lo stato della registrazione usando il
az feature show
comando .
az feature show --namespace "Microsoft.ContainerService" --name "AKS-OutBoundTypeMigrationPreview"
- 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
- Aggiungere route
0.0.0.0/0
alla tabella di route predefinita. Fare riferimento a Personalizzare l'uscita del cluster con una tabella di routing definita dall'utente in servizio Azure Kubernetes (servizio Azure Kubernetes)
az aks update -g <resourceGroup> -n <clusterName> --outbound-type userDefinedRouting
Aggiornare il cluster da loadbalancer a userAssignedNATGateway nello scenario di rete virtuale BYO
- Associare il gateway NAT alla subnet a cui è associato il carico di lavoro. Fare riferimento a Creare un gateway NAT gestito o assegnato dall'utente
az aks update -g <resourceGroup> -n <clusterName> --outbound-type userAssignedNATGateway
Passaggi successivi
- Configurare il bilanciamento del carico standard in un cluster del servizio Azure Kubernetes
- Configurare il gateway NAT in un cluster del servizio Azure Kubernetes
- Configurare il routing definito dall'utente in un cluster del servizio Azure Kubernetes
- Documentazione del gateway NAT
- Panoramica della route definita dall'utente di rete di Azure
- Gestire le tabelle di route