Prima di seguire questa guida, familiarizza con la documentazione relativa alla panoramica del NEG su internet, incluse le limitazioni.
Il seguente diagramma dell'architettura mostra il frontend del bilanciatore del carico di rete proxy esterno regionale con un backend esterno.
Autorizzazioni
Per seguire questa guida, devi creare un NEG internet e creare o modificare un bilanciatore del carico di rete proxy in un progetto. Devi essere un proprietario o editor del progetto (roles/owner
o roles/editor
) oppure devi disporre di entrambi i seguenti ruoli IAM di Compute Engine.
Attività | Ruolo richiesto |
---|---|
Creare e modificare i componenti del bilanciatore del carico | Amministratore rete Compute ( roles/compute.networkAdmin )
|
Crea e modifica i NEG | Amministratore di istanze Compute ( roles/compute.instanceAdmin )
|
Configurare l'ambiente di backend esterno al di fuori di Google Cloud
Per configurare l'ambiente di backend esterno, consulta le sezioni seguenti.
Configura gli endpoint di rete
Configura un endpoint di rete per esporre il backend esterno a in Google Cloud. Assicurati che l'endpoint (IP:Port) o un nome di dominio completo (FQDN) e una porta, è raggiungibile. su internet. Successivamente, il NEG internet fa riferimento a questo endpoint.
Per i requisiti di configurazione dettagliati degli endpoint NEG internet, consulta la panoramica dei NEG internet.
Consenti al backend esterno di ricevere traffico da Google Cloud
Questo passaggio può essere completato dopo aver creato la subnet solo proxy e aver impostato il gateway Cloud NAT.
Per consentire alle richieste da Google Cloud di raggiungere il tuo backend esterno, dovrai segui questi passaggi:
- Configura un gateway Cloud NAT con gli indirizzi IP utilizzati per il traffico in uscita da Google Cloud. Il gateway mappa l'intervallo della sottorete solo proxy agli indirizzi IP esterni. Per la procedura, consulta Configurare un gateway Cloud NAT.
- Assicurati che l'ambiente di backend esterno sia configurato in modo da consentire da Google Cloud per raggiungere il backend esterno. Ad esempio: se hai usato indirizzi IP preprenotati per il gateway NAT, inserirai nella lista consentita questi indirizzi IP sul tuo ambiente esterno. Probabilmente dovrai lavorare con l'amministratore di rete o della sicurezza del tuo ambiente esterno per impostare verso l'alto.
Configura il tuo ambiente Google Cloud
È necessaria una rete VPC con due subnet: una per il carico e l'altro per la subnet solo proxy della regione. Poi, creerai il bilanciatore del carico con un backend NEG internet.
crea la rete VPC e la subnet
Questa subnet viene utilizzata per creare i componenti del bilanciatore del carico.
console Cloud
- Nella console Google Cloud, vai alla pagina Reti VPC.
Vai a Reti VPC - Fai clic su Crea rete VPC.
- Inserisci un Nome: LB_NETWORK.
- Nella sezione Subnet:
- Imposta Modalità di creazione subnet su Personalizzata.
- Nella sezione Nuova subnet, inserisci le informazioni seguenti:
- Nome: LB_SUBNET_NAME
- Regione: REGION
- Intervallo di indirizzi IP: LB_SUBNET_RANGE
- Fai clic su Fine.
- Fai clic su Crea.
gcloud
Crea la rete VPC personalizzata utilizzando il comando
gcloud compute networks create
:gcloud compute networks create LB_NETWORK \ --subnet-mode=custom
Crea una subnet nella rete LB_NETWORK.
gcloud compute networks subnets create LB_SUBNET_NAME \ --network=LB_NETWORK \ --range=LB_SUBNET_RANGE \ --region=REGION
Configura la subnet solo proxy
Questa subnet solo proxy viene utilizzata da tutti i bilanciatori del carico basati su Envoy a livello di regione nella regione REGION.
Console
- Nella console Google Cloud, vai alla pagina Reti VPC.
Vai a Reti VPC - Seleziona una Rete dall'elenco.
- Fai clic su Aggiungi subnet.
- Inserisci un Nome: PROXY_ONLY_SUBNET_NAME.
- Seleziona una Regione: REGION.
- Imposta Finalità su Proxy gestito a livello di regione.
- Inserisci un intervallo di indirizzi IP: PROXY_ONLY_SUBNET_RANGE.
- Fai clic su Aggiungi.
gcloud
Crea la subnet solo proxy con il comando gcloud compute networks subnets
create
.
gcloud compute networks subnets create PROXY_ONLY_SUBNET_NAME \ --purpose=REGIONAL_MANAGED_PROXY \ --role=ACTIVE \ --region=REGION \ --network=LB_NETWORK \ --range=PROXY_ONLY_SUBNET_RANGE
Configura un gateway Cloud NAT
Prima di configurare il gateway Cloud NAT, assicurati di aver esaminato le limitazioni associate e le considerazioni sui prezzi. Per maggiori dettagli, consulta NEG regionali: utilizzare un gateway Cloud NAT.I comandi riportati di seguito descrivono come configurare un gateway Cloud NAT. La Il gateway Cloud NAT può essere configurato per utilizzare NAT automatico indirizzi IP esterni, in cui l'allocazione si basa sulla domanda, o per utilizzare un di indirizzi IP esterni preprenotati manualmente. Il gateway mappa l'intervallo di subnet solo proxy agli indirizzi IP esterni.
Configurare gli indirizzi IP allocati automaticamente tramite NAT
Quando crei un gateway Cloud NAT con l'allocazione automatica degli indirizzi IP NAT, puoi specificare i livelli di servizio di rete (livello Premium o livello Standard) da cui il gateway Cloud NAT alloca gli indirizzi IP.
Console
Nella console Google Cloud, vai alla pagina Cloud NAT.
Fai clic su Inizia o Crea gateway Cloud NAT.
Inserisci un nome per il gateway LB_NAT_CONFIG.
Per Tipo NAT, seleziona Pubblico.
Nell'elenco Rete, seleziona LB_NETWORK.
Nell'elenco Regione, seleziona REGION.
Crea un router Cloud nella regione.
In Tipo di endpoint di origine, seleziona Bilanciatori del carico proxy gestiti.
Nell'elenco Origine, seleziona Personalizzato.
- In Subnet, seleziona PROXY_ONLY_SUBNET_NAME.
Nell'elenco Indirizzi IP Cloud NAT, seleziona Automatico (opzione consigliata).
Per Livello di servizio di rete, scegli Premium o Standard.
Fai clic su Crea.
gcloud
Utilizza indirizzi IP allocati dinamicamente se il tuo ambiente di backend esterno non richiede di inserire nella lista consentita indirizzi IP Google Cloud specifici che possono inviare traffico al backend esterno.
Crea un router Cloud:
gcloud beta compute routers create ROUTER_NAME \ --network=LB_NETWORK \ --region=REGION
Configura il gateway Cloud NAT.
gcloud beta compute routers nats create LB_NAT_CONFIG \ --router=ROUTER_NAME \ --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \ --nat-custom-subnet-ip-ranges=PROXY_ONLY_SUBNET_NAME \ --auto-allocate-nat-external-ips \ --region=REGION
Sostituisci quanto segue:
LB_NAT_CONFIG
: il nome della configurazione NAT.ROUTER_NAME
: il nome del tuo router Cloud.REGION
: la regione della NAT da creare. Se non specificato, ti potrebbe essere chiesto di selezionare una regione (solo modalità interattiva).PROXY_ONLY_SUBNET_NAME
: solo il nome del tuo proxy una subnet.
Configurare gli indirizzi IP assegnati manualmente
Utilizza gli indirizzi IP allocati manualmente solo se il backend esterno richiede l'uso di una lista consentita per indirizzi IP Google Cloud specifici indirizzi IP esterni. Se l'ambiente di backend esterno non ha bisogno di una lista consentita, utilizza l'allocazione dinamica come mostrato in precedenza.
Quando crei un gateway Cloud NAT, puoi scegliere di assegnare manualmente NAT indirizzi IP del livello Premium o Standard o di entrambi, in base a determinate condizioni.
Console
Nella console Google Cloud, vai alla pagina Cloud NAT.
Fai clic su Inizia o Crea gateway Cloud NAT.
Inserisci il nome del gateway LB_NAT_CONFIG.
Nell'elenco Rete, seleziona LB_NETWORK.
Nell'elenco Regione, seleziona REGION.
Seleziona o crea un router cloud nella regione.
In Tipo di endpoint di origine, seleziona Bilanciatori del carico proxy gestiti.
Nell'elenco Origine, seleziona Personalizzato.
- In Subnet, seleziona PROXY_ONLY_SUBNET_NAME.
Nell'elenco Indirizzi IP Cloud NAT, seleziona Manuale.
Per Livello di servizio di rete, scegli Premium o Standard.
Seleziona o crea un indirizzo IP esterno statico riservato da utilizzare per NAT.
Se vuoi specificare indirizzi IP aggiuntivi, fai clic su Aggiungi indirizzo IP. e poi selezionare o creare un altro indirizzo IP esterno statico e riservato.
Fai clic su Crea.
gcloud
Crea gli indirizzi IP. Poiché il gateway esegue la richiesta NAT one-to-one devi assicurarti che il pool di indirizzi IP riservati sia abbastanza grande da gestire la quantità di traffico prevista. Indirizzi IP NAT allocati in modo insufficiente potrebbero causare la perdita di traffico.
gcloud compute addresses create IP_ADDRESS_NAME_1 IP_ADDRESS_NAME_2 [IP_ADDRESS_NAME_3 ...] \ --region=REGION
Crea un router Cloud:
gcloud compute routers create ROUTER_NAME \ --network=LB_NETWORK \ --region=REGION
Configura il gateway Cloud NAT.
gcloud beta compute routers nats create LB_NAT_CONFIG \ --router=ROUTER_NAME \ --endpoint-types=ENDPOINT_TYPE_MANAGED_PROXY_LB \ --nat-custom-subnet-ip-ranges=PROXY_ONLY_SUBNET_NAME \ --nat-external-ip-pool=IP_ADDRESS_NAME_1,IP_ADDRESS_NAME_2,[IP_ADDRESS_NAME_3 ...] \ --region=REGION
Sostituisci quanto segue:
LB_NAT_CONFIG
: il nome della configurazione NAT.ROUTER_NAME
: il nome del tuo router Cloud.PROXY_ONLY_SUBNET_NAME
: il nome della sottorete solo del proxy.REGION
: la regione del NAT da creare. Se non specificato, potrebbe esserti chiesto di selezionare una regione (solo modalità interattiva).
Per ulteriori informazioni, vedi Specifica intervalli di subnet per NAT nella documentazione di Cloud NAT.
Assicurati di utilizzare una lista consentita per gli intervalli di indirizzi IP NAT sul tuo ambiente di backend esterno, in modo che il backend esterno possa ricevere traffico di Google Cloud.
Prenota l'indirizzo IP del bilanciatore del carico
Prenota un indirizzo IP statico per il bilanciatore del carico.
Console
Nella console Google Cloud, vai alla pagina Prenota un indirizzo statico.
Scegli un nome per il nuovo indirizzo.
In Network Service Tier (Livello di servizio di rete), seleziona Standard.
Per Versione IP, seleziona IPv4. Gli indirizzi IPv6 possono essere solo globali e possono essere utilizzati solo con bilanciatori del carico globali.
In Tipo, seleziona Regionale.
Seleziona una Regione.
Lascia l'opzione Allegato a impostata su Nessuno. Dopo aver creato il bilanciatore del carico, questo indirizzo IP verrà collegato alla regola di inoltro del bilanciatore del carico.
Fai clic su Prenota per prenotare l'indirizzo IP.
gcloud
Per prenotare un indirizzo IP esterno statico utilizzando
gcloud compute
, utilizza il comandocompute addresses create
.gcloud compute addresses create LB_IP_ADDRESS \ --region=REGION \ --network-tier=STANDARD
Sostituisci quanto segue:
LB_IP_ADDRESS
: il nome che vuoi assegnare a questo indirizzo.REGION
: la regione in cui vuoi prenotare questo indirizzo. Deve essere la stessa regione del bilanciatore del carico. Tutti gli indirizzi IP regionali sonoIPv4
.
Usa il comando
compute addresses describe
per visualizzare il risultato:gcloud compute addresses describe LB_IP_ADDRESS
Configura il NEG internet
Puoi creare un NEG internet utilizzando endpoint INTERNET_FQDN_PORT
o
INTERNET_IP_PORT
.
Console
Crea un NEG con INTERNET_FQDN_PORT
endpoint
Nella console Google Cloud, vai alla pagina Gruppo di endpoint di rete.
Fai clic su Crea gruppo di endpoint di rete.
Specifica un valore INTERNET_NEG_NAME per il tuo NEG internet. Per ulteriori informazioni, consulta la convenzione di denominazione delle risorse.
Nell'elenco Tipo di gruppo di endpoint di rete, seleziona Gruppo di endpoint di rete (internet) e poi procedi nel seguente modo:
- Nell'elenco Ambito, seleziona A livello di regione.
- (Facoltativo) Nell'elenco Regione, modifica il valore REGION per questo NEG.
- Nell'elenco Rete, seleziona LB_NETWORK.
- Nella casella Porta predefinita, inserisci DEFAULT_PORT_NUMBER.
- Nell'elenco Add Endpoints through (Aggiungi endpoint tramite), seleziona Nome di dominio e porta completi.
- Seleziona Crea.
Aggiungi INTERNET_FQDN_PORT
endpoint al NEG
Nella console Google Cloud, vai alla pagina Gruppo di endpoint di rete.
- Fai clic su INTERNET_NEG_NAME.
Inserisci il nome di dominio completo, ad esempio
myorg.example.com
. Devi specificare gli oggetti FQDN in sintassi standard del nome di dominio completo.(Facoltativo) Per Tipo di porta, seleziona Personalizzata. Se il Tipo di porta è
Default
, viene utilizzata la porta predefinita del NEG.- Nella casella Numero porta, inserisci PORT_NUMBER_1.
- Seleziona Crea.
Crea un NEG con INTERNET_IP_PORT
endpoint
Nella console Google Cloud, vai alla pagina Gruppo di endpoint di rete.
Fai clic su Crea gruppo di endpoint di rete.
Specifica un nome INTERNET_NEG_NAME per il NEG di internet. Per ulteriori informazioni, vedi Convenzione di denominazione delle risorse.
Nell'elenco Tipo di gruppo di endpoint di rete, seleziona Gruppo di endpoint di rete (Internet), quindi esegui la seguenti:
- Nell'elenco Ambito, seleziona A livello di regione.
- (Facoltativo) Nell'elenco Regione, modifica il valore REGION per questo NEG.
- Nell'elenco Rete, seleziona LB_NETWORK.
- Nella casella Porta predefinita, inserisci DEFAULT_PORT_NUMBER.
- Nell'elenco Add Endpoints through (Aggiungi endpoint tramite), seleziona IP e porta.
- Seleziona Crea.
Aggiungi endpoint INTERNET_IP_PORT
al NEG
Nella console Google Cloud, vai alla pagina Gruppo di endpoint di rete.
- Fai clic su INTERNET_NEG_NAME.
- Nel campo Indirizzo IP, inserisci IP_ADDRESS_1.
(Facoltativo) Nell'elenco Tipo di porta, seleziona Personalizzata. Se il tipo di porta è
Default
, viene utilizzata la porta predefinita del NEG.- Nel campo Numero porta, inserisci un PORT_NUMBER_1.
- Seleziona Crea.
gcloud
Per creare un NEG con endpoint INTERNET_FQDN_PORT
:
Crea la risorsa NEG.
gcloud beta compute network-endpoint-groups create INTERNET_NEG_NAME \ --network-endpoint-type=INTERNET_FQDN_PORT \ --default-port=DEFAULT_PORT_NUMBER \ --network=LB_NETWORK \ --region=REGION
Aggiungi endpoint al gruppo di endpoint di rete. Se non viene specificata una porta, verrà utilizzata quella predefinita del NEG.
gcloud beta compute network-endpoint-groups update INTERNET_NEG_NAME \ --add-endpoint="fqdn=FULLY_QUALIFIED_DOMAIN_NAME_1,port=PORT_NUMBER_1" \ [--add-endpoint="fqdn=FULLY_QUALIFIED_DOMAIN_NAME_2,port=PORT_NUMBER_2" \] --region=REGION
Sostituisci quanto segue:
FULLY_QUALIFIED_DOMAIN_NAME
: il nome di dominio completamente qualificato per l'endpointPORT_NUMBER
: il numero di porta per endpoint
Puoi aggiungere fino a 256 endpoint per NEG.
Se il tuo dominio è risolvibile tramite internet, non viene scelta nessun'altra configurazione necessari per configurare il DNS. Tuttavia, se utilizzi nomi di dominio completi privati, dovrai configurare Cloud DNS per facilitare la risoluzione DNS. Il nome deve essere ospitato su Cloud DNS o essere risolvibile tramite il reindirizzamento DNS da Cloud DNS a un DNS on-premise.
Per iniziare, crea una zona Cloud DNS per ospitare i record DNS nel tuo progetto. Poi aggiungi i record DNS. Fai riferimento alla documentazione di Cloud DNS per i passaggi di configurazione specifici.
Per creare un NEG con endpoint INTERNET_IP_PORT
:
Crea la risorsa NEG.
gcloud beta compute network-endpoint-groups create INTERNET_NEG_NAME \ --network-endpoint-type=INTERNET_IP_PORT \ --default-port=DEFAULT_PORT_NUMBER \ --network=LB_NETWORK \ --region=REGION
Aggiungi endpoint al gruppo di endpoint di rete. Se non viene specificata una porta, verrà utilizzata quella predefinita del NEG.
gcloud beta compute network-endpoint-groups update INTERNET_NEG_NAME \ --add-endpoint="ip=IP_ADDRESS_1,port=PORT_NUMBER_1" \ [--add-endpoint="ip=IP_ADDRESS_2,port=PORT_NUMBER_2" \] --region=REGION
Sostituisci quanto segue:
IP_ADDRESS
: l'indirizzo IP dell'endpointPORT_NUMBER
: il numero di porta per l'endpoint
Puoi ripetere questo passaggio per aggiungere fino a 256 endpoint per NEG.
Crea il bilanciatore del carico
Console
Avvia la configurazione
Nella console Google Cloud, vai alla pagina Bilanciamento del carico.
- Fai clic su Crea bilanciatore del carico.
- In Tipo di bilanciatore del carico, seleziona Bilanciatore del carico di rete (TCP/UDP/SSL) e fai clic su Avanti.
- Per Proxy o passthrough, seleziona Bilanciatore del carico proxy e fai clic su Avanti.
- In Pubblico o interno, seleziona Pubblico (esterno) e fai clic su Avanti.
- Per Deployment globale o in una regione singola, seleziona Ideale per regione carichi di lavoro e fai clic su Avanti.
- Fai clic su Configura.
Configurazione di base
- Inserisci un Nome bilanciatore del carico.
- In Regione, seleziona REGION.
- In Rete, seleziona LB_NETWORK.
Riserva una subnet solo proxy
Per prenotare una subnet solo proxy:
- Fai clic su Riserva subnet.
- In Nome, inserisci PROXY_ONLY_SUBNET_NAME.
- In Intervallo di indirizzi IP, inserisci PROXY_ONLY_SUBNET_RANGE.
- Fai clic su Aggiungi.
Configurazione frontend
- Fai clic su Configurazione frontend.
- Inserisci un Nome.
- In Subnet, seleziona LB_SUBNET_NAME.
- In Indirizzo IP, seleziona l'indirizzo IP prenotato in precedenza: LB_IP_ADDRESS.
- Per Numero di porta, specifica un singolo numero di porta compreso tra 1 e 65535 La regola di inoltro inoltra solo i pacchetti con una porta di destinazione corrispondente.
- Fai clic su Fine.
Configurazione backend
- Fai clic su Configurazione backend.
- Fai clic su Servizi e bucket di backend.
- Fai clic su Crea un servizio di backend.
- Inserisci un nome.
- In Tipo di backend, seleziona Gruppo di endpoint di rete internet.
- In Protocollo, seleziona TCP.
- Per Backend, nella finestra Nuovo backend, seleziona la casella di controllo Regionale gruppo di endpoint di rete internet creato nel passaggio precedente.
- Fai clic su Fine.
- Configura il controllo di integrità:
- In Controllo di integrità, seleziona Crea un controllo di integrità.
- Imposta il nome del controllo di integrità su TCP_HEALTH_CHECK_NAME.
- In Protocollo, seleziona TCP.
- Imposta Porta su
80
. - Conserva i valori predefiniti rimanenti e fai clic su Salva.
- Fai clic su Crea.
Esamina e finalizza
- Fai clic su Esamina e finalizza.
- Se è tutto a posto, fai clic su Crea.
gcloud
- (Facoltativo) Crea un controllo di integrità. Probe di controllo di integrità per dispositivi esterni
i backend utilizzano lo strumento distribuito
Controlli di integrità di Envoy e poi tradotti da NAT.
gcloud compute health-checks create tcp TCP_HEALTH_CHECK_NAME \ --region=REGION \ --use-serving-port
- Crea un servizio di backend:
gcloud compute backend-services create BACKEND_SERVICE \ --load-balancing-scheme=EXTERNAL_MANAGED \ --health-checks=TCP_HEALTH_CHECK_NAME \ --health-checks-region=REGION \ --region=REGION
- Aggiungi il NEG internet al servizio di backend:
gcloud compute backend-services add-backend BACKEND_SERVICE \ --network-endpoint-group=INTERNET_NEG_NAME \ --network-endpoint-group-region=REGION \ --region=REGION
gcloud compute backend-services add-backend BACKEND_SERVICE \ --network-endpoint-group=INTERNET_NEG_NAME \ --network-endpoint-group-region=REGION \ --region=REGION
Crea un proxy TCP di destinazione per instradare le richieste al servizio di backend.
gcloud compute target-tcp-proxies create TARGET_TCP_PROXY_NAME \ --backend-service=BACKEND_SERVICE \ --region=REGION
Creare una regola di forwarding per instradare le richieste in entrata al proxy. Per "--ports", specifica un singolo numero di porta da 1-65535. La regola di inoltro inoltra solo i pacchetti con una porta di destinazione corrispondente.
gcloud compute forwarding-rules create FORWARDING_RULE_NAME \ --load-balancing-scheme=EXTERNAL_MANAGED \ --network-tier=STANDARD \ --network=LB_NETWORK \ --address=LB_IP_ADDRESS \ --target-tcp-proxy=TARGET_TCP_PROXY_NAME \ --target-tcp-proxy-region=REGION \ --region=REGION \ --ports=PORT_NUMBER
Testa il bilanciatore del carico
Ora che hai configurato il bilanciatore del carico, puoi testare l'invio all'indirizzo IP del bilanciatore del carico.
Ottieni l'indirizzo IP del bilanciatore del carico.
Per ottenere l'indirizzo IPv4, esegui questo comando:
gcloud compute addresses describe LB_IP_ADDRESS
Invia traffico al bilanciatore del carico sull'indirizzo IP e la porta specificata durante la creazione della regola di forwarding del bilanciatore del carico. Il test per verificare se i backend NEG internet rispondono alle richieste dipende dal servizio in esecuzione sugli endpoint esterni.
Passaggi successivi
- Per configurare il logging e il monitoraggio per il bilanciatore del carico, consulta Logging e il bilanciatore del carico di rete proxy e il monitoraggio.
- Per eliminare le risorse che hai creato in modo che non ti vengano addebitate in futuro, consulta Eseguire la pulizia della configurazione del bilanciatore del carico.