Configura l'accesso a internet per le VM dei carichi di lavoro
Puoi configurare il servizio di rete di accesso a internet per i carichi di lavoro VMware in Google Cloud VMware Engine in base alla regione. Puoi indirizzare il traffico legato a internet dalle VM dei tuoi carichi di lavoro utilizzando il perimetro internet di Google Cloud o una connessione on-premise.
Anche le VM dei carichi di lavoro che possono accedere a internet possono accedere ai servizi Google Cloud tramite l'accesso privato Google. L'accesso ai servizi Google Cloud che utilizza l'accesso privato Google rimane all'interno delle reti Google Cloud e non termina su internet.
Il servizio di rete di accesso a internet supporta quanto segue:
- Fino a 100 indirizzi IP pubblici per ogni regione
- Fino a 300 regole firewall per tabella firewall
- Velocità effettiva fino a 2 Gbit/s su 128.000 connessioni simultanee per ogni regione
- Protocolli TCP, UDP e ICMP
Il servizio di rete di accesso a internet non supporta la funzionalità ALG (Application Level Gateway).
Prima di iniziare
Per apportare modifiche alle impostazioni di accesso a internet del cloud privato, devi disporre dell'accesso amministrativo a VMware Engine.
Per abilitare l'accesso a internet, è necessario un intervallo di indirizzi CIDR per i servizi periferici. Quando abiliti l'accesso a internet o i servizi di rete IP pubblica, i gateway vengono implementati nel contesto del tenant del servizio.
Utilizza l'intervallo di indirizzi CIDR dei servizi periferici per l'indirizzamento di gateway internet e IP pubblici di VMware Engine. L'intervallo di indirizzi deve soddisfare i seguenti requisiti:
- Rispetta lo standard RFC 1918 come intervallo privato.
- Non avere una sovrapposizione con altri intervalli di indirizzi di VMware Engine, ad esempio l'intervallo di indirizzi utilizzato per le appliance di gestione o i segmenti NSX-T.
- Non avere una sovrapposizione con gli intervalli di indirizzi pubblicizzati su VMware Engine, come quelli utilizzati per le subnet di rete Virtual Private Cloud (VPC) o per le reti on-premise.
- Dedica un intervallo di indirizzi IP con 26 bit di subnet mask (/26).
Requisiti delle API e dell'interfaccia a riga di comando di Google Cloud CLI
Per utilizzare lo strumento a riga di comando gcloud
o l'API per gestire le risorse VMware Engine, ti consigliamo di configurare gli strumenti come descritto di seguito.
gcloud
Imposta l'ID progetto predefinito:
gcloud config set project PROJECT_ID
Imposta una regione e una zona predefinite:
gcloud config set compute/region REGION
gcloud config set compute/zone ZONE
Per maggiori informazioni sullo strumento gcloud vmware
, consulta la documentazione di riferimento di Cloud SDK.
API
Gli esempi di API in questo set di documentazione utilizzano lo strumento a riga di comando cURL
per eseguire query sull'API. È necessario un token di accesso valido per la richiesta cURL
. Esistono molti modi per ottenere un token di accesso valido. I passaggi seguenti utilizzano lo strumento gcloud
per generare un token di accesso:
Accedi a Google Cloud:
gcloud auth login
Genera il token di accesso ed esporta in TOKEN:
export TOKEN=`gcloud auth print-access-token`
Verifica che TOKEN sia impostato correttamente:
echo $TOKEN
Ora utilizza il token di autorizzazione nelle richieste all'API. Ad esempio:
curl -X GET -H "Authorization: Bearer \"$TOKEN\"" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations
Python
Gli esempi di codice Python in questa documentazione utilizzano la libreria VMware Engine per comunicare con l'API. Per poter utilizzare questo approccio, è necessario installare la libreria e configurare le Credenziali predefinite dell'applicazione.
Scarica e installa la libreria Python:
pip install google-cloud-vmwareengine
Configura le informazioni ADC eseguendo questi comandi nella shell:
gcloud auth application-default login
In alternativa, utilizza un file di chiavi dell'account di servizio:
export GOOGLE_APPLICATION_CREDENTIALS="FILE_PATH"
Per maggiori informazioni sulla libreria, visita la pagina di riferimento o visualizza gli esempi di codice su GitHub.
Configura il servizio di accesso a internet
Puoi consentire alle VM dei carichi di lavoro di accedere a internet creando o aggiornando un criterio di rete.
Per impostazione predefinita, il servizio di rete di accesso a internet è disattivato.
Attivare il servizio di accesso a internet in una regione
Console
Per abilitare il servizio di accesso a internet in una regione:
- Accedi alla console Google Cloud.
- Nella navigazione principale, vai a Criteri di rete.
- Fai clic su Crea per creare una nuova norma. Se vuoi modificare un criterio di rete esistente, fai clic sull'icona Altro alla fine di una riga e seleziona Modifica.
- Compila i dettagli del criterio di rete, inclusa la scelta della rete e della regione a cui si applica.
Imposta Accesso a internet su Attivato e, facoltativamente, abilita Servizio di indirizzi IP esterni.
Nel campo Credenziale dei servizi Edge, inserisci l'intervallo di indirizzi da utilizzare per gli indirizzi del gateway internet VMware Engine (intervallo di indirizzi /26).
Fai clic su Crea.
Lo stato del servizio cambia in Enabled al termine dell'operazione, in genere dopo diversi minuti.
gcloud
Utilizzando lo strumento gcloud
, esegui questo comando per creare un criterio di rete:
gcloud vmware network-policies create NETWORK_POLICY_NAME \ --vmware-engine-network projects/PROJECT_ID/locations/LOCATIONS/vmwareEngineNetworks/NETWORK_ID \ --edge-services-cidr=IP_RANGE \ --location=LOCATION \ --internet-access
Sostituisci quanto segue:
NETWORK_POLICY_NAME
: il nome del criterio di rete.NETWORK_ID
: la rete a cui si applica questo criterio di reteIP_RANGE
: l'intervallo CIDR da utilizzare per l'accesso a internet e i gateway di accesso IP esterni, in notazione CIDR. È richiesto un blocco CIDR RFC 1918 con prefisso "/26".LOCATION
:global
per reti legacy o nella regione di una rete standard
API
curl -X POST -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/networkPolicies?networkPolicyId=NETWORK_POLICY_NAME '{ "vmwareEngineNetwork":"projects/PROJECT_ID/locations/LOCATION/vmwareEngineNetworks/NETWORK_ID", "edgeServiceCidr":IP_RANGE, "internetAccess: { "enabled": true }, "externalIp": { "enabled": true } }"
Sostituisci quanto segue:
NETWORK_POLICY_NAME
: il nome del criterio di rete. Deve essere nel formatoREGION-default
.PROJECT_ID
: l'ID progetto per questa richiestaLOCATION
:global
per reti legacy o nella regione di una rete standardIP_RANGE
: l'intervallo CIDR da utilizzare per l'accesso a internet e i gateway di accesso IP esterni, in notazione CIDR. È richiesto un blocco CIDR RFC 1918 con prefisso "/26".NETWORK_ID
: la rete per questo criterio di rete
Python
Disattivare il servizio di accesso a internet in una regione
Per disattivare il servizio di accesso a internet in una regione:
Console
- Accedi alla console Google Cloud.
- Nella navigazione principale, vai a Criteri di rete.
- Nella riga corrispondente al criterio di rete pertinente, fai clic sull'icona Altro .
Imposta Accesso a internet su Disattivato.
- Devi disabilitare il servizio IP pubblico prima di poter disabilitare l'accesso a internet.
- Prima di poter disabilitare il servizio IP pubblico, devi eliminare tutti gli indirizzi IP pubblici allocati e i gateway VPN point-to-site.
Fai clic su Salva.
Lo stato del servizio diventa Disattivato al completamento dell'operazione, in genere dopo diversi minuti.
gcloud
Utilizzando lo strumento gcloud
, esegui questo comando per aggiornare il criterio di rete:
gcloud vmware network-policies update NETWORK_POLICY_NAME \ --no-internet-access \ --location LOCATION
Sostituisci quanto segue:
NETWORK_POLICY_NAME
: il nome di questo criterio di reteLOCATION
:global
per reti legacy o nella regione di una rete standard
API
curl -X PATCH -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/networkPolicies/NETWORK_POLICY_NAME?updateMask=internetAccess.enabled,externalIp.enabled -d "{ "internetAccess: { "enabled": false }, "externalIp": { "enabled": false } }"
Sostituisci quanto segue:
PROJECT_ID
: l'ID progetto per questa richiestaLOCATION
:global
per reti legacy o nella regione di una rete standardNETWORK_POLICY_NAME
: il nome di questo criterio di rete
Python
Usa una connessione on-premise per l'accesso a internet dei carichi di lavoro
Facoltativamente, puoi indirizzare il traffico legato a internet dalle VM dei carichi di lavoro in VMware Engine tramite una connessione on-premise. Il traffico viene indirizzato in base allo stato di quanto segue:
- Annuncio di route predefinita (
0.0.0.0/0
) da on-premise - Servizio IP pubblico VMware Engine
- Servizio di accesso a internet di VMware Engine
- Controlli di servizio VPC sulla connessione in peering VPC tra rete VPC e VMware Engine
Abilita il routing del traffico internet tramite una connessione on-premise
Per accedere a internet dalle VM dei carichi di lavoro tramite una connessione on-premise, devi completare due passaggi:
- Pubblicizza la route predefinita (
0.0.0.0/0
) da on-premise su una connessione on-premise (Cloud VPN o Cloud Interconnect). Controlla il gateway Cloud VPN o il router Cloud dove termina la connessione on-premise alla VPN. - Disabilita l'accesso a internet e il servizio IP pubblico per la rete VMware Engine.
Console
- Accedi alla console Google Cloud.
- Nella navigazione principale, vai a Criteri di rete.
- Nella riga corrispondente al criterio di rete pertinente, fai clic sull'icona Altro .
Imposta IP pubblico su Disabilitato.
Imposta Accesso a internet su Disattivato.
Fai clic su Salva.
Se utilizzi una rete VMware Engine legacy: abilita i controlli di servizio VPC sulla connessione in peering VPC tra la rete VPC e VMware Engine utilizzando il comando
gcloud services vpc-peerings enable-vpc-service-controls
:gcloud services vpc-peerings enable-vpc-service-controls \ --network=VPC_NETWORK \ --service=servicenetworking.googleapis.com
gcloud
Utilizzando lo strumento gcloud
, esegui questo comando per aggiornare il criterio di rete:
gcloud vmware network-policies update NETWORK_POLICY_NAME \ --no-internet-access \ --no-external-ip-address \ --location LOCATION
Sostituisci quanto segue:
NETWORK_POLICY_NAME
: il nome di questo criterio di reteLOCATION
:global
per reti legacy o nella regione di una rete standard
Se utilizzi una rete VMware Engine legacy: abilita i controlli di servizio VPC sulla connessione in peering VPC tra la rete VPC e VMware Engine utilizzando il comando gcloud services vpc-peerings enable-vpc-service-controls
:
gcloud services vpc-peerings enable-vpc-service-controls \ --network=VPC_NETWORK \ --service=servicenetworking.googleapis.com
API
curl -X PATCH -H "Authorization: Bearer TOKEN" -H "Content-Type: application/json; charset=utf-8" https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/networkPolicies/NETWORK_POLICY_NAME?updateMask=internetAccess.enabled,externalIp.enabled "{ "internetAccess: { "enabled": false }, "externalIp: { "enabled": false } }"
Se utilizzi una rete VMware Engine legacy: abilita i controlli di servizio VPC sulla connessione in peering VPC tra la rete VPC e VMware Engine utilizzando il comando gcloud services vpc-peerings enable-vpc-service-controls
:
gcloud services vpc-peerings enable-vpc-service-controls \ --network=VPC_NETWORK_NAME \ --service=servicenetworking.googleapis.com
Python
Imposta internet_access e external_ip su False
.
Se utilizzi una rete VMware Engine legacy: abilita i controlli di servizio VPC sulla connessione in peering VPC tra la rete VPC e VMware Engine utilizzando il comando gcloud services vpc-peerings enable-vpc-service-controls
:
gcloud services vpc-peerings enable-vpc-service-controls \ --network=VPC_NETWORK \ --service=servicenetworking.googleapis.com
L'abilitazione dei Controlli di servizio VPC è essenziale per instradare il traffico internet tramite una connessione on-premise o un VPC nel progetto.
Quando i Controlli di servizio VPC sono abilitati, Google Cloud apporta le seguenti modifiche al routing nella rete VPC del producer di servizi (in questo caso, il progetto tenant di servizio ha eseguito il peering con VMware Engine):
- Rimuove la route predefinita IPv4 (destinazione
0.0.0.0/0
, gateway internet predefinito dell'hop successivo). - Inizia a inoltrare il traffico internet utilizzando la route predefinita del peering VPC.
Esempio:
Per abilitare i Controlli di servizio VPC per il peering di una rete denominata "my-network" nel progetto attuale, utilizza il comando gcloud services vpc-peerings enable-vpc-service-controls
:
gcloud services vpc-peerings enable-vpc-service-controls \ --network=my-network \ --service=servicenetworking.googleapis.com
Disabilita il routing del traffico internet tramite una connessione on-premise
Per disabilitare il routing del traffico internet dalle VM dei tuoi carichi di lavoro tramite una connessione on-premise, interrompi la pubblicità della route predefinita (0.0.0.0/0
) e disabilita i Controlli di servizio VPC sulla connessione in peering VPC.
Se utilizzi una rete VMware Engine legacy: disabilita i Controlli di servizio VPC sulla connessione in peering VPC tra la rete VPC e VMware Engine, utilizza il comando gcloud services vpc-peerings disable-vpc-service-controls
:
gcloud services vpc-peerings disable-vpc-service-controls \ --network=VPC_NETWORK_NAME \ --service=servicenetworking.googleapis.com
Passaggi successivi
- Scopri come allocare un indirizzo IP pubblico per una VM nel tuo cloud privato.
- Scopri come le tabelle firewall e le regole firewall filtrano il traffico di rete da e verso le risorse cloud privato.