Per configurare l'accesso privato alla rete in modo che il traffico venga eseguito in una rete Google Cloud, devi configurare il progetto proprietario della rete VPC, il progetto Service Directory e il progetto di servizio Google Cloud che sei. Questi tre progetti potrebbero essere uguali o separati.
- Progetto di rete è il progetto della rete VPC.
- Progetto Service Directory è il progetto del servizio Service Directory. Questo progetto potrebbe essere un progetto di servizio nella rete VPC condivisa del progetto di rete.
- Il progetto di servizio Google Cloud è il progetto con la configurazione che richiama l'accesso alla rete privata. Ad esempio, una configurazione del servizio Google Cloud.
Prima di iniziare
Questa procedura presuppone che tu abbia completato i seguenti passaggi.
- Abilita le API a cui vuoi accedere tramite la pagina API e servizi in Google Cloud Console, inclusa l'API Service Directory.
- Le istanze VM in una rete VPC devono avere un indirizzo IP privato.
- Per gli host on-premise, devi disporre di un tunnel Cloud VPN o di una connessione Cloud Interconnect alla rete VPC.
Configurazione del progetto di rete
Segui questi passaggi per configurare il progetto di rete.
- Crea o utilizza una rete VPC esistente. Sono supportate le reti VPC in modalità automatica e personalizzata. Le reti precedenti non sono supportate.
Se la destinazione della destinazione è una VM di Compute Engine o un backend con bilanciamento del carico interno, devi consentire il traffico in entrata attraverso il firewall VPC per l'accesso alla rete privata. Le destinazioni devono consentire il traffico in entrata TCP da
35.199.192.0/19
sulla porta appropriata (porta443
o80
).Concedi al servizio di servizio Google Cloud l'accesso alla rete di Service Directory (IAM, Identity and Access Management). Tieni presente che il progetto Google Cloud deve trovarsi nel perimetro Controlli di servizio VPC del servizio Google Cloud e nel progetto Service Directory per
servicedirectory.googleapis.com
.Per ulteriori informazioni sui controlli di servizio VPC, consulta la Panoramica dei controlli di servizio VPC.
Configurazione del progetto Service Directory
Segui questi passaggi per configurare il progetto Service Directory.
- Crea una macchina virtuale (VM) o un bilanciatore del carico interno nella rete VPC.
- Crea un servizio Service Directory che punta alla VM o al bilanciatore del carico interno che hai creato nella rete VPC.
- Concede all'account di servizio Google Cloud l'accesso alla rete di directory dei servizi IAM. Per ulteriori informazioni su ruoli e autorizzazioni, consulta Autorizzazioni e ruoli di Service Directory.
Creazione di un endpoint con accesso di rete privato
Per creare un endpoint con accesso alla rete privata configurato, procedi nel seguente modo.
Console
- Vai alla pagina degli spazi dei nomi di Service Directory in Google Cloud Console.
Vai alla pagina degli spazi dei nomi di Service Directory - Fai clic su uno spazio dei nomi.
- Fai clic su un servizio.
- Fai clic su more_vert, quindi su Aggiungi endpoint.
- Inserisci un Nome endpoint.
- Inserisci un indirizzo IP IPv4, ad esempio
192.0.2.0/24
. - Inserisci un numero di Porta, ad esempio
443
o80
. - Per consentire l'accesso alla rete privata, fai clic su Scegli dall'elenco per scegliere da un elenco di reti disponibili in Rete VPC associata.
- Puoi anche fornire un ID progetto e il nome di rete specifici scegliendo Specifica per nome del progetto e della rete.
- Fai clic su Crea.
gcloud
Esegui il comando
gcloud beta service-directory endpoints create
con l'ID progetto e il percorso di rete specificato.
gcloud beta service-directory endpoints create ENDPOINT_NAME --project=PROJECT_ID \ --location=REGION \ --namespace=NAMESPACE_NAME \ --service=SERVICE_ID \ --address=IP_ADDRESS \ --port=PORT_NUMBER \ --network=NETWORK_PATH
Sostituisci quanto segue:
ENDPOINT_NAME
: un nome per l'endpoint che stai creando nel servizio, ad esempiomy-endpoint
PROJECT_ID
: l'ID del progettoREGION
: l'area geografica di Google Cloud contenente lo spazio dei nomiNAMESPACE_NAME
: il nome assegnato allo spazio dei nomi, ad esempiomy-namespace
SERVICE_ID
: l'ID del servizioIP_ADDRESS
: l'indirizzo IP dell'endpoint, ad esempio192.0.2.0/24
PORT_NUMBER
: le porte su cui sono in esecuzione gli endpoint, in genere443
o80
NETWORK_PATH
: l'URL della rete, ad esempioprojects/PROJECT_NUMBER/locations/global/networks/NETWORK_NAME
Configurazione del progetto del servizio Google Cloud
- Abilita l'API del servizio Google Cloud.
- Configura il servizio Google Cloud utilizzando il servizio Service Directory che hai creato nel progetto di rete.
- Se utilizzi Controlli di servizio VPC, assicurati che il perimetro dei controlli di servizio VPC consenta a Service Directory di accedere al progetto di rete e al progetto Service Directory.
Casi d'uso
Questa sezione fornisce casi d'uso di esempio per configurare l'accesso privato alla rete.
Chiamata a un endpoint HTTP quando una rete VPC, una VM e un servizio Service Directory si trovano nello stesso progetto
Puoi configurare un prodotto Google Cloud in modo che chiami un endpoint HTTP sulla tua VM. Questo traffico non deve essere trasferito su Internet pubblico.
In questa configurazione, hai un progetto con una rete VPC, una VM, un servizio Service Directory e il servizio Google Cloud nello stesso progetto.
Per configurare il tuo prodotto Google Cloud utilizzando l'accesso privato alla rete, procedi nel seguente modo.
Impostare la rete e la rete di destinazione
- Crea un progetto, ad esempio
my-project
. - Crea una rete VPC, ad esempio
VPC-1
(projects/number-number/locations/global/networks/my-network). - Concedi l'accesso proxy per il traffico in entrata a
VPC-1
o alla subnet o alla VM. - Consenti traffico in entrata da
35.199.192.0/19
. - Crea
VM-1
nell'area geograficaus-central1
inVPC-1
. - Configuralo per l'esecuzione del servizio sulla porta
P
. - Se preferisci utilizzare HTTPS, assicurati di aver installato un certificato TLS (Transport key).
- Crea un servizio Service Directory
SD-1
inREGION-1
. - Crea un endpoint in
SD-1
con l'indirizzo IP interno diVM-1
=10.10.10.10
,P
=443
enetwork
=projects/project-number/global/networks/my-network
. Per istruzioni dettagliate, vedi Creazione di un endpoint con accesso a una rete privata configurato. Concedi all'account di servizio Google Cloud i seguenti ruoli IAM:
servicedirectory.viewer
servicedirectory.pscAuthorizedService
Facoltativamente, puoi configurare
VM-2
e aggiungereEndpoint-2
.
Configurare un prodotto Google Cloud
- Configura la configurazione del prodotto Google Cloud
CONFIG-1
, ad esempio "Cloud Scheduler, chiamami ogni minuto". - Configura una richiesta HTTP.
- Specifica che la richiesta deve essere sottoposta a rete privata, ad esempio tramite
SD-1
. - Configura le impostazioni del servizio di autorità di certificazione. (facoltativo)
Ora il prodotto Google Cloud può richiamare la richiesta HTTP utilizzando SD-1
.
Chiamata a un endpoint HTTP quando una rete VPC, una VM e un servizio Service Directory si trovano in progetti diversi
In questa configurazione di esempio, vuoi configurare un servizio Google Cloud, come Eventi, Attività o Pub/Sub, per chiamare un endpoint HTTP sulla tua VM. In questo esempio, il progetto Service Directory, il progetto di rete e i progetti del servizio Google Cloud sono diversi. Questo traffico non deve essere trasportato attraverso la rete Internet pubblica. In via facoltativa, questa chiamata API deve rispettare il perimetro dei controlli di servizio VPC.
In questo caso, la configurazione del progetto di Google Cloud consente l'accesso a una VM di un progetto di servizio Google Cloud, che si trova nella rete VPC del progetto di rete.
Il progetto di servizio Google Cloud potrebbe essere diverso dal progetto producer. Vengono utilizzati i perimetri Controlli di servizio VPC di entrambi i progetti.
Crea un progetto di rete
Assicurati di disporre delle seguenti autorizzazioni IAM:
servicedirectory.services.resolve
per il servizio di messaggisticaservicedirectory.networks.access
per la rete
Tieni presente quanto segue:
- Il progetto Service Directory e il progetto di rete non devono essere connessi, ma devono essere parte degli stessi Controlli di servizio VPC.
- Per impostazione predefinita, il firewall e IAM sono disabilitati sulla rete e sul servizio.
Per creare il progetto di rete, procedi nel seguente modo.
- Crea una rete VPC, ad esempio
VPC-1
(projects/number-number/locations/global/networks/my-network). Abilita il firewall della rete VPC.
Se utilizzi Controlli di servizio VPC, il perimetro Controlli di servizio VPC permette a Service Directory di connettersi al progetto dei servizi Google Cloud e al progetto Service Directory.
Configura il progetto Service Directory
- Crea una VM o un bilanciatore del carico interno nella rete VPC.
- Crea un servizio di Service Directory che punta sulla VM o sul bilanciatore del carico interno nella rete VPC.
- Concede l'accesso
service read
alla directory dei servizi IAM al servizio di messaggistica del progetto del servizio Google Cloud. - Se utilizzi Controlli di servizio VPC, il perimetro Controlli di servizio VPC permette a Service Directory di connettersi al progetto dei servizi Google Cloud e al progetto Service Directory.
Configurare il progetto del servizio Google Cloud
- Abilita l'API per il servizio di messaggistica in uso.
- Configura il servizio di messaggistica
PUSH
utilizzando il servizio Service Directory dal progetto Service Directory. - Se utilizzi Controlli di servizio VPC, il perimetro dei controlli di servizio VPC permette a Service Directory di connettersi al progetto di rete e al progetto Service Directory.
Passaggi successivi
- Configura un endpoint Service Directory.
- Per una panoramica di Service Directory, consulta la panoramica di Service Directory.
- Per ulteriori informazioni su Private Service Connect, consulta Private Service Connect.
- Per trovare soluzioni per problemi comuni che potresti riscontrare durante l'utilizzo di Service Directory, consulta la sezione Risoluzione dei problemi.