Concetti di rete per la distribuzione di nodi del servizio Azure Kubernetes

Si applica a: servizio Azure Kubernetes in Azure Stack HCI 22H2, servizio Azure Kubernetes in Windows Server

È possibile scegliere tra due modelli di assegnazione di indirizzi IP per l'architettura di rete per il servizio Azure Kubernetes abilitato da Azure Arc. Il servizio Azure Kubernetes supporta diverse opzioni di distribuzione per servizio Azure Kubernetes (servizio Azure Kubernetes).

  • Rete IP statica: la rete virtuale alloca indirizzi IP statici al server API del cluster Kubernetes, ai nodi Kubernetes, alle macchine virtuali sottostanti, ai servizi di bilanciamento del carico e a tutti i servizi Kubernetes eseguiti sul cluster.
  • Rete DHCP: la rete virtuale alloca indirizzi IP dinamici ai nodi Kubernetes, alle macchine virtuali sottostanti e ai servizi di bilanciamento del carico usando un server DHCP. Il server API del cluster Kubernetes e tutti i servizi Kubernetes eseguiti al di sopra del cluster vengono ancora allocati indirizzi IP statici.

Nota

L'architettura di rete virtuale definita qui per AKS Arc potrebbe essere diversa dall'architettura di rete fisica sottostante in un data center.

Pool di indirizzi IP virtuali

Un pool di indirizzi IP virtuali (VIP) è un set di indirizzi IP obbligatori per qualsiasi distribuzione in AKS Arc. Il pool VIP è un intervallo di indirizzi IP riservati usati per allocare indirizzi IP al server API del cluster Kubernetes. Garantisce che le applicazioni nei servizi Kubernetes siano sempre raggiungibili. Tenere presente che, indipendentemente dal modello di rete virtuale e dal modello di assegnazione degli indirizzi scelto, è necessario fornire un pool VIP per la distribuzione dell'host del servizio Azure Kubernetes.

Il numero di indirizzi IP nel pool VIP dipende dal numero di cluster del carico di lavoro e dai servizi Kubernetes pianificati per la distribuzione.

A seconda del modello di rete, la definizione del pool VIP è diversa nei modi seguenti:

  • IP statico: se si usa l'indirizzo IP statico, assicurarsi che gli indirizzi IP virtuali provenano dalla stessa subnet specificata.
  • DHCP: se la rete è configurata con DHCP, rivolgersi all'amministratore di rete per escludere l'intervallo IP del pool VIP dall'ambito DHCP usato per la distribuzione del servizio Azure Kubernetes in Azure Stack HCI.

Pool IP della macchina virtuale del nodo Kubernetes

I nodi Kubernetes vengono distribuiti come macchine virtuali specializzate in AKS Arc. Il servizio Azure Kubernetes alloca gli indirizzi IP a queste macchine virtuali per abilitare la comunicazione tra i nodi Kubernetes.

  • IP statico: è necessario specificare un intervallo di pool IP della macchina virtuale del nodo Kubernetes. Il numero di indirizzi IP in questo intervallo dipende dal numero totale di nodi Kubernetes che si prevede di usare per la distribuzione tra l'host del servizio Azure Kubernetes e i cluster Kubernetes del carico di lavoro. Tenere presente che gli aggiornamenti utilizzano uno o tre indirizzi IP aggiuntivi durante l'aggiornamento.
  • DHCP: non è necessario specificare un pool di macchine virtuali del nodo Kubernetes, perché gli indirizzi IP dei nodi Kubernetes vengono allocati dinamicamente dal server DHCP nella rete.

Questo modello di rete crea una rete virtuale che alloca gli indirizzi IP da un pool di indirizzi definito in modo statico a tutti gli oggetti nella distribuzione. Un ulteriore vantaggio dell'uso della rete IP statica è che le distribuzioni di lunga durata e i carichi di lavoro delle applicazioni sono sempre raggiungibili.

Specificare i parametri seguenti durante la definizione di una rete virtuale con configurazioni IP statiche:

Importante

Questa versione del servizio Azure Kubernetes non consente modifiche alla configurazione di rete dopo la distribuzione dell'host del servizio Azure Kubernetes o del cluster del carico di lavoro. Per modificare le impostazioni di rete, è necessario iniziare rimuovendo i cluster del carico di lavoro e disinstallando il servizio Azure Kubernetes.

  • Nome: nome della rete virtuale.

  • Prefisso indirizzo: prefisso dell'indirizzo IP da usare per la subnet.

  • Gateway: indirizzo IP del gateway predefinito per la subnet.

  • Server DNS: matrice di indirizzi IP che puntano ai server DNS da usare per la subnet. È possibile specificare almeno uno e un massimo di tre server.

  • Pool di macchine virtuali del nodo Kubernetes: intervallo continuo di indirizzi IP da usare per le macchine virtuali del nodo Kubernetes.

  • Pool ip virtuale: un intervallo continuo di indirizzi IP da usare per il server API del cluster Kubernetes e i servizi Kubernetes.

    Nota

    Il pool VIP deve far parte della stessa subnet del pool di macchine virtuali del nodo Kubernetes.

  • VLAN ID: ID vLAN per la rete virtuale. Se omesso, la rete virtuale non viene contrassegnata.

Rete virtuale con rete DHCP

Questo modello di rete crea una rete virtuale che alloca gli indirizzi IP usando DHCP a tutti gli oggetti nella distribuzione.

È necessario specificare i parametri seguenti durante la definizione di una rete virtuale con configurazioni IP statiche:

Importante

In questa versione del servizio Azure Kubernetes non è possibile modificare la configurazione di rete dopo la distribuzione dell'host del servizio Azure Kubernetes o del cluster del carico di lavoro. L'unico modo per modificare le impostazioni di rete consiste nell'iniziare rimuovendo i cluster del carico di lavoro e disinstallando il servizio Azure Kubernetes.

  • Nome: nome della rete virtuale.

  • Pool di indirizzi IP virtuali: intervallo continuo di indirizzi IP da usare per il server API del cluster Kubernetes e i servizi Kubernetes.

    Nota

    Gli indirizzi del pool VIP devono trovarsi nella stessa subnet dell'ambito DHCP e devono essere esclusi dall'ambito DHCP per evitare conflitti di indirizzi.

  • VLAN ID: ID vLAN per la rete virtuale. Se omesso, la rete virtuale non viene contrassegnata.

Servizio cloud locale Microsoft

Microsoft On-premises Cloud (MOC) è lo stack di gestione che consente la gestione delle macchine virtuali in Azure Stack HCI e SDDC basato su Windows Server nel cloud. MOC è costituito da:

  • Singola istanza di un servizio a disponibilità cloud agent elevata distribuita nel cluster. Questo agente viene eseguito in un nodo qualsiasi nel cluster Azure Stack HCI o Windows Server ed è configurato per il failover in un altro nodo.
  • Oggetto node agent in esecuzione in ogni nodo fisico di Azure Stack HCI.

Per abilitare la comunicazione con MOC, è necessario specificare l'indirizzo IP CIDR da usare per il servizio. -cloudserviceCIDR è un parametro nel Set-AksHciConfig comando usato per assegnare l'indirizzo IP al servizio agente cloud e abilitare la disponibilità elevata del servizio agente cloud.

La scelta di un indirizzo IP per il servizio MOC dipende dal modello di rete sottostante usato dalla distribuzione del cluster in Azure Stack HCI o Windows Server.

Nota

L'allocazione degli indirizzi IP per il servizio MOC è indipendente dal modello di rete virtuale Kubernetes. L'allocazione degli indirizzi IP dipende dalla rete fisica sottostante e dagli indirizzi IP configurati per i nodi del cluster Azure Stack HCI o Windows Server nel data center.

  • Nodi del cluster Azure Stack HCI e Windows Server con una modalità di allocazione degli indirizzi IP basata su DHCP: se ai nodi HCI di Azure Stack viene assegnato un indirizzo IP da un server DHCP presente nella rete fisica, non è necessario fornire in modo esplicito un indirizzo IP al servizio MOC, poiché il servizio MOC riceve anche un indirizzo IP dal server DHCP.

  • Nodi del cluster Azure Stack HCI e Windows Server con un modello di allocazione IP statico: se ai nodi del cluster vengono assegnati indirizzi IP statici, è necessario specificare in modo esplicito un indirizzo IP per il servizio cloud MOC. L'indirizzo IP per il servizio MOC deve trovarsi nella stessa subnet degli indirizzi IP dei nodi del cluster Azure Stack HCI e Windows Server. Per assegnare in modo esplicito un indirizzo IP per il servizio MOC, usare il -cloudserviceCIDRSet-AksHciConfig parametro nel comando . Assicurarsi di immettere un indirizzo IP nel formato CIDR, ad esempio"10.11.23.45/16".

Confrontare i modelli di rete

DHCP e IP statico forniscono connettività di rete nel servizio Azure Kubernetes in Azure Stack HCI e nella distribuzione di Windows Server. Tuttavia, vi sono vantaggi e svantaggi per ognuno di essi. A livello generale, si applicano le considerazioni seguenti:

DHCP : non garantisce indirizzi IP di lunga durata per alcuni tipi di risorse in una distribuzione del servizio Azure Kubernetes. - Supporta l'espansione degli indirizzi IP DHCP riservati se la distribuzione diventa più grande del previsto inizialmente.

IP statico : garantisce indirizzi IP di lunga durata per tutte le risorse in una distribuzione del servizio Azure Kubernetes. - Poiché l'espansione automatica del pool IP del nodo Kubernetes non è supportata, potrebbe non essere possibile creare nuovi cluster se è stato esaurito il pool di indirizzi IP del nodo Kubernetes.

La tabella seguente confronta l'allocazione degli indirizzi IP per le risorse tra i modelli di rete IP statici e DHCP:

Funzionalità IP statico DHCP
Server API del cluster Kubernetes Assegnato in modo statico usando il pool VIP. Assegnato in modo statico usando il pool VIP.
Nodi Kubernetes (nelle macchine virtuali) Assegnato usando il pool di indirizzi IP del nodo Kubernetes. Assegnato in modo dinamico.
Servizi Kubernetes Assegnato in modo statico usando il pool VIP. Assegnato in modo statico usando il pool VIP.
MACCHINA virtuale del servizio di bilanciamento del carico HAProxy Assegnato usando il pool di indirizzi IP del nodo Kubernetes. Assegnato in modo dinamico.
Servizio cloud locale Microsoft Dipende dalla configurazione di rete fisica per i nodi del cluster Azure Stack HCI e Windows Server. Dipende dalla configurazione di rete fisica per i nodi del cluster Azure Stack HCI e Windows Server.
Pool VIP Obbligatorio Obbligatorio
Pool IP della macchina virtuale del nodo Kubernetes Obbligatorio Non supportato

Prenotazioni di indirizzi IP minime per una distribuzione del servizio Azure Kubernetes

Indipendentemente dal modello di distribuzione, il numero di indirizzi IP riservati rimane invariato. Questa sezione descrive il numero di indirizzi IP necessari per riservare in base al modello di distribuzione di AKS Arc.

Prenotazione minima dell'indirizzo IP

Almeno, è necessario riservare il numero di indirizzi IP seguenti per la distribuzione:

Tipo di cluster Nodo del piano di controllo Nodo del ruolo di lavoro Per le operazioni di aggiornamento Bilanciamento del carico
Host del servizio Azure Kubernetes Un INDIRIZZO IP ND Due IP ND
Cluster del carico di lavoro Un indirizzo IP per nodo Un indirizzo IP per nodo 5 IP Un INDIRIZZO IP

Inoltre, è necessario riservare il numero di indirizzi IP seguenti per il pool VIP:

Tipo di risorsa Numero di indirizzi IP
Server API cluster 1 per cluster
Servizi Kubernetes 1 per servizio
Servizi per le applicazioni 1 per servizio pianificato

Come si può notare, il numero di indirizzi IP necessari è variabile a seconda dell'architettura della distribuzione del servizio Azure Kubernetes e del numero di servizi eseguiti nel cluster Kubernetes. È consigliabile riservare almeno 256 indirizzi IP (/24 subnet) per la distribuzione.

Informazioni dettagliate su una distribuzione di esempio

Jane è un amministratore IT a partire dal servizio Azure Kubernetes abilitato da Azure Arc. Vuole distribuire due cluster Kubernetes: cluster Kubernetes A e cluster Kubernetes B nel cluster Azure Stack HCI. Vuole anche eseguire un'applicazione di voto nella parte superiore del suo cluster. Questa applicazione include tre istanze dell'interfaccia utente front-end in esecuzione tra i due cluster e un'istanza del database back-end.

  • Il cluster Kubernetes A include 3 nodi del piano di controllo e 5 nodi di lavoro.
  • Il cluster Kubernetes B ha 1 nodo del piano di controllo e 3 nodi di lavoro.
  • 3 istanze dell'interfaccia utente front-end (porta 443).
  • 1 istanza del database back-end (porta 80).

In base alla tabella precedente, deve riservare:

  • 3 Indirizzi IP per l'host del servizio Azure Kubernetes (un INDIRIZZO IP per il nodo del piano di controllo e due indirizzi IP per l'esecuzione delle operazioni di aggiornamento).
  • 3 Indirizzi IP per i nodi del piano di controllo nel cluster A (un INDIRIZZO IP per ogni nodo del piano di controllo).
  • 5 indirizzi IP per i nodi di lavoro nel cluster A (un IP per nodo di lavoro).
  • 6 Indirizzi IP aggiuntivi per cluster A (cinque INDIRIZZI IP per l'esecuzione di operazioni di aggiornamento e 1 IP per il servizio di bilanciamento del carico).
  • 1 Indirizzi IP per i nodi del piano di controllo nel cluster B (un IP per ogni nodo del piano di controllo).
  • 3 Indirizzi IP per i nodi di lavoro nel cluster B (un IP per nodo di lavoro).
  • 6 indirizzi IP aggiuntivi per cluster B (cinque INDIRIZZI IP per l'esecuzione di operazioni di aggiornamento e 1 IP per il servizio di bilanciamento del carico).
  • 2 indirizzi IP per i server API del cluster Kubernetes (un IP per cluster Kubernetes).
  • 3 Indirizzi IP per il servizio Kubernetes (un indirizzo IP per istanza dell'interfaccia utente front-end, poiché usano tutte la stessa porta. Il database back-end può usare uno dei tre indirizzi IP purché usi una porta diversa.

Come illustrato in precedenza, Jane richiede un totale di 32 indirizzi IP per distribuire il cluster. Jane dovrebbe quindi riservare una subnet /26 per la sua rete virtuale.

Suddividere gli indirizzi IP riservati in base a un modello di rete IP statico

Mentre il numero totale di indirizzi IP riservati rimane lo stesso, il modello di distribuzione determina la modalità di divisione di questi indirizzi IP tra i gruppi IP. Il modello di rete IP statico ha due pool IP:

  • Pool IP della macchina virtuale del nodo Kubernetes: per le macchine virtuali del nodo Kubernetes e la macchina virtuale del servizio di bilanciamento del carico. Questo pool IP include anche l'indirizzo IP necessario per l'esecuzione delle operazioni di aggiornamento.
  • Pool IP virtuale: per il server API Kubernetes e i servizi Kubernetes.

Con questo esempio Jane deve dividere ulteriormente questi indirizzi IP tra pool VIP e pool IP del nodo Kubernetes:

  • 5 (due per il server API del cluster Kubernetes e tre per i servizi Kubernetes) fuori dai 32 indirizzi IP per il pool VIP.
  • 27 (tutti gli indirizzi IP per i nodi Kubernetes e le macchine virtuali sottostanti, le macchine virtuali del servizio di bilanciamento del carico e le operazioni di aggiornamento) per il pool IP del nodo Kubernetes.

Suddividere gli indirizzi IP riservati in base a un modello di rete DHCP

Mentre il numero totale di indirizzi IP riservati rimane lo stesso, il modello di distribuzione determina come questi indirizzi IP vengono divisi tra i gruppi IP. Come illustrato nella sezione precedente, il modello di rete DHCP ha un ambito IP:

  • Pool IP virtuale: per il server API Kubernetes e i servizi Kubernetes

Uso dell'esempio precedente:

  • Jane deve riservare un totale di 32 indirizzi IP o una subnet /26 nel server DHCP.
  • Deve escludere 5 (due per il server API del cluster Kubernetes e tre per i servizi Kubernetes) dall'ambito DHCP di 32 indirizzi IP per il pool VIP.

Controller in ingresso

Durante la distribuzione di un cluster di destinazione viene creata una HAProxyrisorsa del servizio di bilanciamento del carico basata su . Il servizio di bilanciamento del carico viene configurato per distribuire il traffico ai pod nel servizio su una porta specifica. Il servizio di bilanciamento del carico funziona solo al livello 4, che indica che il servizio non è a conoscenza dell'applicazione effettiva; ad esempio, non può apportare considerazioni aggiuntive sul routing.

I controller in ingresso funzionano al livello 7 e sono in grado di usare regole più intelligenti per distribuire il traffico dell'applicazione. Un uso comune di un controller in ingresso consiste nel indirizzare il traffico HTTP a diverse applicazioni in base all'URL in ingresso.

Diagramma che mostra il flusso del traffico in ingresso in un cluster del servizio Azure Kubernetes in Azure Stack HCI.

Passaggi successivi

Questo articolo illustra alcuni concetti di rete per la distribuzione dei nodi del servizio Azure Kubernetes in Azure Stack HCI. Per altre informazioni, vedere gli articoli seguenti: