Configurare servizi privati solo per uso interno

Questa pagina mostra la configurazione richiesta per esporre un servizio di ambiente flessibile di App Engine solo sul suo indirizzo IP interno.

Per impostazione predefinita, i servizi di ambienti flessibili ricevono sia un indirizzo IP interno sia un indirizzo IP esterno temporaneo al 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 disattivazione 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 Accesso Google privato e, di conseguenza, non possono disattivare gli indirizzi IP esterni temporanei.

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.

Prepara la rete VPC condivisa

Se utilizzi un VPC condiviso, segui questi passaggi per preparare Rete VPC condiviso per ulteriore configurazione.

  1. Verifica di avere un percorso compatibile con Accesso privato Google. In genere il route predefinita di una rete compatibili con l'accesso privato Google. Per gli altri percorsi, verifica che il percorso sia configurato 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 della rete VPC condivisa.
    • INSTANCE_TAGS: se non utilizzi alcuna istanza , non specificare nulla in questo campo. Se utilizzi i tag istanza, include aef-instances nell'elenco dei tag istanza.
    • DEFAULT_INTERNET_GATEWAY: il gateway internet predefinito.

    Per scoprire di più sulle route compatibili per l'accesso privato Google, vedi la documentazione relativa all'accesso privato Google opzioni di routing.

  2. Verifica di avere 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 della rete VPC condivisa.
    • INSTANCE_TAGS: se non utilizzi tag di istanza, non specificare nulla in questo campo. Se utilizzi i tag istanza, include aef-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

  1. 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
  2. Nel file app.yaml, aggiungi il campo instance_ip_mode alla sezione network e impostalo su internal.

    • Se il file app.yaml ha già una sezione network, aggiungi quanto segue all'interno della sezione network:

      instance_ip_mode: internal

    • Se il file app.yaml non ha una sezione network, crea il e specifica la modalità IP dell'istanza aggiungendo le righe seguenti:

      network:
       instance_ip_mode: internal

    Salva queste modifiche.

  3. Eseguire il deployment del servizio.

    gcloud beta app deploy
  4. Verifica la configurazione controllando la pagina Istanze della console Google Cloud.

    Vai a Istanze

    Scorri verso il basso fino alla tabella Istanze (sotto il grafico Riepilogo). Nella colonna IP esterno, verifica che non sia elencato alcun indirizzo IP. La l'assenza di un indirizzo IP in questa colonna indica che l'istanza non ha all'indirizzo IP esterno. Anche se questo campo è vuoto, l'istanza ha comunque un indirizzo IP interno.

Invia 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.

  1. Segui i passaggi indicati nella sezione Configura il servizio in modo che utilizzi solo il suo indirizzo IP interno.

  2. Segui i passaggi per configurare Cloud NAT.

Per saperne di più su questo approccio, consulta la documentazione del Cloud Architecture Center sul deployment di Cloud NAT per il recupero.