Questa pagina mostra la configurazione richiesta per esporre un ambiente flessibile di App Engine solo sul suo indirizzo IP interno.
Per impostazione predefinita, i servizi dell'ambiente flessibile ricevono sia un indirizzo IP interno e un indirizzo IP esterno temporaneo al momento del primo deployment. La un indirizzo IP esterno temporaneo consente al tuo servizio di inviare richieste ai servizi App Engine con domini personalizzati e risorse su internet. Gli indirizzi IP esterni temporanei sono soggetti a costi.
Se il tuo servizio non richiede un indirizzo IP esterno, puoi impedire al servizio di inviare richieste alle risorse su internet e ridurre i costi limitandone l'utilizzo solo al suo indirizzo IP interno. Ciò non impedisce al servizio di ricevere richieste da internet o dai servizi App Engine con domini personalizzati, perché il nome di dominio completo del servizio è ancora visibile esternamente.
Limitazioni
La disabilitazione degli indirizzi IP esterni temporanei presenta le seguenti limitazioni:
- Servizi con domini personalizzati: per inviare richieste ad App Engine. con domini personalizzati, devi configurare Cloud NAT.
- Risorse esterne:per inviare richieste a risorse esterne, devi configurare Cloud NAT.
- Dipendenza dall'accesso privato Google: istanze con modalità IP impostata su
Richiesta di
internal
Accesso privato Google attivo la subnet di destinazione. - Reti legacy: le reti legacy non possono utilizzare l'accesso privato Google, quindi non può disabilitare l'IP esterno temporaneo indirizzi IP esterni.
Prima di iniziare
Per eseguire il deployment di app per ambienti flessibili senza indirizzi IP esterni, devi attivare l'accesso privato Google nella sottorete di destinazione.
- Per saperne di più sull'accesso privato Google, consulta la Panoramica.
- Per istruzioni dettagliate sulla configurazione, consulta Attivazione dell'accesso privato Google
prepara la rete VPC condiviso
Se utilizzi un VPC condiviso, segui questi passaggi per preparare Rete VPC condiviso per ulteriore configurazione.
Verifica di avere una route compatibile con Accesso privato Google. In genere il route predefinita di una rete è compatibili con l'accesso privato Google. Per altri percorsi, conferma la route è configurata come segue.
Network: SHARED_VPC_NETWORK_NAME Destination IP address range: 0.0.0.0/0 Instance tags: INSTANCE_TAGS Next hop: DEFAULT_INTERNET_GATEWAY
Sostituisci quanto segue:
SHARED_VPC_NETWORK_NAME
: il nome del tuo Rete VPC condiviso.INSTANCE_TAGS
: se non utilizzi tag di istanza, non specificare nulla in questo campo. Se utilizzi i tag istanza, includeaef-instances
nell'elenco dei tag istanza.DEFAULT_INTERNET_GATEWAY
: il gateway internet predefinito.
Per scoprire di più sui percorsi compatibili per l'accesso privato Google, consulta la documentazione dell'accesso privato Google sulle opzioni di routing.
Verifica che sia presente una regola firewall compatibile con Accesso privato Google. La regola firewall deve essere configurata come .
Network: SHARED_VPC_NETWORK_NAME Destination IP address range: 0.0.0.0/0 Destination filter: IP ranges Direction of traffic: Egress Attach on match: Allow Instance tags: INSTANCE_TAGS
Sostituisci quanto segue:
SHARED_VPC_NETWORK_NAME
: il nome del tuo Rete VPC condiviso.INSTANCE_TAGS
: se non utilizzi alcuna istanza , non specificare nulla in questo campo. Se usi i tag di istanza, includiaef-instances
nell'elenco dei tag istanza.
Per scoprire di più sulle regole firewall compatibili per Accesso privato Google; consulta l'accesso privato Google documentazione su configurazione firewall.
Configura il servizio in modo che utilizzi solo il suo indirizzo IP interno
Aggiorna Google Cloud CLI. In questo modo ti assicuri di utilizzare una versione gcloud CLI che supporta gli indirizzi IP privati le app in un ambiente flessibile.
gcloud components update
Nel file
app.yaml
, aggiungi il campoinstance_ip_mode
a Sezionenetwork
e impostato suinternal
.Se il file
app.yaml
ha già una sezionenetwork
, aggiungi quanto segue all'interno della sezionenetwork
:instance_ip_mode: internal
Se il file
app.yaml
non ha una sezionenetwork
, crea il e specifica la modalità IP dell'istanza aggiungendo le righe seguenti:network: instance_ip_mode: internal
Salva queste modifiche.
Eseguire il deployment del servizio.
gcloud beta app deploy
Verifica la configurazione controllando la pagina Istanze della console Google Cloud.
Scorri verso il basso fino alla tabella Istanze (sotto il grafico Riepilogo). Nella colonna IP VM, verifica che non sia elencato alcun indirizzo IP. L'assenza di Un indirizzo IP in questa colonna indica che l'istanza non ha un IP esterno . Anche se questo campo è vuoto, l'istanza ha comunque uno spazio Indirizzo IP.
Inviare richieste esterne senza un indirizzo IP esterno
Se il tuo servizio invia richieste a internet, ma vuoi limitarlo all'utilizzo solo il suo indirizzo IP interno, puoi utilizzare Cloud NAT per creare un gateway. Il tuo servizio può inviare richieste esterne tramite Gateway Cloud NAT senza utilizzare gli indirizzi IP esterni temporanei predefiniti.
Segui la procedura descritta nella sezione Configura il servizio in modo che utilizzi solo il suo indirizzo IP interno.
Segui i passaggi per configurare Cloud NAT.
Per saperne di più su questo approccio, visita il Cloud Architecture Center documentazione su Deployment di Cloud NAT per il recupero.