Panoramica dei gruppi di endpoint di rete a livello di zona

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Un gruppo di endpoint di rete (NEG) è un oggetto di configurazione che specifica un gruppo di endpoint o servizi di backend. I NEG di zona sono risorse a livello di zona che rappresentano raccolte di indirizzi IP o combinazioni di indirizzo IP/porta per le risorse Google Cloud all'interno di una singola subnet.

I NEG sono utili perché consentono di creare raggruppamenti logici di indirizzi IP e porte che rappresentano servizi software anziché intere VM. Gli indirizzi IP per i microservizi (in esecuzione nelle VM Google Cloud) gestiti da altri orchestratori come Apache Mesos o Cloud Foundry possono essere endpoint.

Per informazioni su altri tipi di NEG, consulta:

Esistono due tipi di NEG di zona, a seconda del tipo di endpoint di rete che compongono il NEG. I due tipi di NEG di zona supportano diversi casi d'uso e tipi di bilanciatore del carico.

NEG con GCE_VM_IP endpoint

Questi NEG di zona contengono uno o più endpoint di rete interni che si risolvono in un indirizzo IP principale di una VM di Compute Engine. Non puoi specificare una porta con questo tipo di NEG di zona.

Con i NEG GCE_VM_IP, puoi collegare solo endpoint che appartengono a un indirizzo IP interno principale di una VM nella rete VPC di NEG. Gli indirizzi IP interni principali di qualsiasi NIC di una VM multi-NIC possono essere aggiunti a un NEG finché il NEG utilizza la stessa rete VPC del NIC.

Questi tipi di endpoint possono essere utilizzati solo come backend nei servizi di backend per i bilanciatori del carico TCP/UDP interni.

NEG con GCE_VM_IP_PORT endpoint

Questi NEG di zona contengono uno o più endpoint di rete interni che si risolvono in un indirizzo IP interno principale di una VM o in un indirizzo IP in uno degli intervalli IP alias. Ad esempio, GKE utilizza NEG di questo tipo, i cui endpoint sono un indirizzo IP dall'intervallo IP alias del nodo più una porta, ovvero un indirizzo IP del pod e una porta del container. Ogni endpoint di rete viene specificato utilizzando una combinazione di indirizzo IP e porta.

Poiché questi backend NEG di zona consentono di specificare indirizzi IP e porte, puoi distribuire il traffico in modo granulare tra applicazioni o container in esecuzione all'interno delle istanze VM.

Per creare un endpoint di rete GCE_VM_IP_PORT univoco per un container o un'applicazione in esecuzione in una VM, devi utilizzare l'indirizzo IP principale della VM o un IP secondario assegnato alla VM tramite la funzionalità indirizzo IP alias. Il software in esecuzione nel container o l'applicazione in esecuzione nella VM deve essere configurato per l'associazione all'indirizzo IP utilizzato dall'endpoint di rete.

I NEG di GCE_VM_IP_PORT sono particolarmente utili per GKE. Per informazioni sull'utilizzo dei NEG di zona con GKE, consulta Utilizzo del bilanciamento del carico nativo del container.

Relazioni con gli endpoint

Quando crei un NEG, seleziona una zona, una rete e una subnet. Ogni indirizzo IP di endpoint deve trovarsi nella stessa subnet del NEG di zona.

Se la rete selezionata è una rete in modalità automatica, puoi omettere di specificare la subnet. Tuttavia, una subnet è ancora associata al NEG di zona. Se specifichi una rete in modalità automatica ma non specifichi una subnet quando crei un NEG di zona, questa verrà creata automaticamente nella regione che contiene la zona selezionata per il NEG di zona.

Il tipo di NEG di zona creato viene specificato al momento della creazione del NEG (GCE_VM_IP o GCE_VM_IP_PORT). In questo modo vengono determinati i tipi di endpoint supportati dal NEG.

Per i NEG di zona GCE_VM_IP e GCE_VM_IP_PORT:

  • Devi specificare il nome per ciascun endpoint VM.

  • Ogni VM endpoint deve trovarsi nella stessa zona del NEG.

  • Ogni endpoint nel NEG deve essere una combinazione di indirizzo IP e porta univoci. È possibile fare riferimento a più combinazioni di indirizzi IP e porte di endpoint univoci tramite più NEG.

  • Ogni VM endpoint deve avere un'interfaccia di rete (NIC) nella stessa rete VPC del NEG. Gli indirizzi IP degli endpoint devono essere associati alla stessa subnet specificata nel NEG.

  • Ogni NEG supporta fino al numero massimo di endpoint per NEG. Gli endpoint possono essere distribuiti tra molte VM univoche o tutte su una VM.

Per i NEG GCE_VM_IP_PORT, quando aggiungi un endpoint puoi scegliere di specificare un indirizzo IP e una porta, solo un indirizzo IP o nessuno dei due:

  • Se specifichi un indirizzo IP e una porta, l'indirizzo IP può essere l'indirizzo IP interno principale della VM NIC o un IP alias sul NIC. La porta è una scelta.

  • Se specifichi solo un indirizzo IP, l'indirizzo IP può essere l'indirizzo IP interno principale della VM NIC o un IP alias sul NIC. La porta utilizzata è la porta predefinita del NEG.

  • Se ometti entrambi, Google Cloud seleziona l'indirizzo IP interno principale di NIC e utilizza la porta predefinita del NEG.

Bilanciamento del carico con NEG di zona

I NEG di zona possono essere utilizzati come backend per i servizi di backend in un bilanciatore del carico. Quando utilizzi un NEG di zona come backend per un servizio di backend, tutti gli altri backend del servizio di backend devono anche essere NEG di zona dello stesso tipo (tutti con GCE_VM_IP o GCE_VM_IP_PORT). Non puoi utilizzare gruppi di istanze e NEG di zona come backend nello stesso servizio di backend.

Puoi aggiungere lo stesso endpoint di rete a più di un NEG di zona. Puoi utilizzare lo stesso NEG di zona di un backend per più di un servizio di backend.

I NEG di zona GCE_VM_IP_PORT possono utilizzare la RATEmodalità di bilanciamento o la CONNECTION modalità di bilanciamento, a seconda del protocollo del servizio di backend. I bilanciatori del carico supportati richiedono la definizione di una capacità di destinazione.

I NEG di zona GCE_VM_IP devono utilizzare la modalità di bilanciamento CONNECTION e non puoi definire una capacità target perché i bilanciatori del carico TCP/UDP interni non supportano l'impostazione della capacità di destinazione.

Non puoi usare la modalità di bilanciamento di UTILIZATION con backend NEG di zona.

Bilanciamento del carico TCP/UDP interno

I NEG di zona con endpoint GCE_VM_IP possono essere utilizzati come backend per i servizi di backend solo per i bilanciatori del carico TCP/UDP interni.

I casi d'uso principali per i NEG con GCE_VM_IP endpoint sono:

Gestione semplificata delle VM per i bilanciatori del carico TCP/UDP interni

Come per i gruppi di istanze, puoi utilizzare lo stesso NEG di un backend per più bilanciatori del carico TCP/UDP interni. A differenza dei gruppi di istanze, un endpoint VM può essere membro di più NEG e ciascuno di questi NEG può essere utilizzato come backend per uno o più bilanciatori del carico TCP/UDP interni.

Bilanciatori del carico TCP/UDP interni con NEG di zona "GCE_VM_IP" sovrapposti
Bilanciatori del carico TCP/UDP interni con NEG di zona che si sovrappongono

Impostazione secondaria GKE

GKE utilizza i NEG di zona GCP_VM_IP e le impostazioni secondarie per migliorare la scalabilità dei bilanciatori del carico TCP/UDP interni nel modo seguente:

Senza impostazione secondaria, GKE crea un gruppo di istanze non gestito per zona, composto dai nodi del cluster di tutti i pool di nodi della zona. Questi gruppi di istanze a livello di zona vengono utilizzati come backend per uno o più servizi LoadBalancer interni (e per le risorse Ingress esterne che non utilizzano i NEG stessi).

Con il sottoinsieme, GKE crea NEG di zona GCE_VM_IP per ogni servizio LoadBalancer interno. Lo stesso endpoint può essere membro di più di un NEG di zona. A differenza dei gruppi di istanze, Google Cloud può bilanciare il carico in più NEG di zona che contengono lo stesso endpoint.

L'impostazione secondaria distribuisce il traffico in modo più efficiente ai servizi interni LoadBalancer in cluster con più di 250 nodi. Ad esempio, un cluster GKE a 300 nodi potrebbe avere un servizio LoadBalancer interno con 25 nodi in un NEG, perché quel servizio contiene 25 pod. Non tutti i 300 nodi devono essere aggiunti al backend di un gruppo di istanze per questo servizio.

Tieni presente che si applicano ancora le quote per NEG, regole di forwarding, servizi di backend e altre risorse di rete Google Cloud.

Per maggiori dettagli, consulta la sezione Utilizzo dell'impostazione secondaria del bilanciatore del carico TCP/UDP interno.

Bilanciamento del carico HTTP(S), HTTP(S) interno, proxy TCP/SSL esterno e proxy TCP interno

Le illustrazioni che seguono mostrano i componenti di configurazione per i bilanciatori del carico in cui i NEG di zona con endpoint GCE_VM_IP_PORT sono i backend:

Gruppi di endpoint di rete a livello di zona nel bilanciamento del carico (fai clic per ingrandire)
Gruppi di endpoint di rete a livello di area geografica nel bilanciamento del carico (fai clic per ingrandire)

Per saperne di più sui requisiti architettonici di questi bilanciatori del carico, consulta: * Panoramica del bilanciatore del carico HTTP(S) esterno * Panoramica del bilanciatore del carico HTTP(S) interno * Panoramica del bilanciatore del carico proxy TCP esterno * Panoramica del bilanciatore del carico proxy interno TCP * Panoramica del bilanciatore del carico del proxy SSL esterno

Il caso d'uso principale per i NEG di zona a livello di NEG di GCE_VM_IP_PORT è il bilanciamento del carico nativo del container, che ti consente di distribuire il traffico direttamente ai container in esecuzione sulle VM, ad esempio negli indirizzi IP dei pod nei cluster GKE.

Il bilanciamento del carico nativo del container consente ai bilanciatori del carico di scegliere direttamente i pod come target e prendere decisioni di distribuzione del carico a livello di pod anziché a livello di VM.

L'esempio seguente mostra come i bilanciatori del carico distribuiscono il traffico tra i microservizi in esecuzione nei container sulle tue VM. Le VM sono configurate per utilizzare gli intervalli IP alias dalle loro subnet, che sono gli indirizzi utilizzati dai container.

Gruppi di endpoint di rete a livello di zona con bilanciamento del carico con container (fai clic per ingrandire)
Bilanciamento del carico dei gruppi di endpoint di rete a livello di zona con container (fai clic per ingrandire)

Esistono due modi per configurare il bilanciamento del carico nativo del container: utilizzare NEG gestiti da GKE Ingress o NEG autonomi.

  • Ingress di Kubernetes con NEG (consigliato)

    Quando vengono utilizzati i NEG con Ingress, il controller Ingress facilita la creazione di tutti gli aspetti di un bilanciatore del carico HTTP(S). Questo include la creazione dell'indirizzo IP virtuale, delle regole di forwarding, dei controlli di integrità, delle regole firewall e molto altro ancora. Per scoprire come configurare questa opzione, consulta Bilanciamento del carico nativo del container tramite Ingress.

    Ingress è il metodo consigliato per l'utilizzo dei NEG per il bilanciamento del carico nativo del container, in quanto dispone di molte funzionalità che semplificano la gestione dei NEG. In alternativa, puoi creare un bilanciatore del carico proxy manualmente, ma fare in modo che GKE gestisca l'appartenenza agli endpoint NEG, come descritto nel prossimo punto (NEG autonomi).

    Per istruzioni su come configurare un bilanciatore del carico tramite Ingress, consulta Bilanciamento del carico nativo del container tramite Ingress.

  • NEG NEG autonomi

    I NEG autonomi forniscono al cluster GKE un modo per creare NEG di zona con endpoint GCE_VM_IP_PORT che rappresentano indirizzi IP del pod e porte del container, offrendoti al contempo la flessibilità di configurare i componenti del bilanciatore del carico al di fuori di GKE.

    Per esempi di utilizzo dei NEG di zona autonomi con GKE, consulta:

Limitazioni

  • Non è possibile utilizzare NEG di zona con reti legacy.
  • Un servizio di backend che utilizza NEG come backend non può utilizzare anche i gruppi di istanze come backend.
  • Non puoi utilizzare i NEG di zona come backend per il bilanciamento del carico di rete TCP/UDP esterno.

Limitazioni per i NEG di zona GCE_VM_IP:

  • I NEG di zona con endpoint GCE_VM_IP sono supportati solo con bilanciatori del carico TCP/UDP interni.
  • La proprietà default-port non è supportata per i NEG di zona GCE_VM_IP.
  • Non puoi utilizzare Google Cloud Console per creare o gestire i NEG GCE_VM_IP. Utilizza gcloud o l'API REST.

Quote

Passaggi successivi