Crea un collegamento dell'endpoint
Per configurare la connettività privata per Integration Connectors, devi creare un collegamento PSC (Private Service Connect). Tuttavia, per utilizzare il collegamento PSC, devi anche creare un collegamento endpoint perché non puoi utilizzare direttamente il collegamento PSC. Il collegamento dell'endpoint può essere considerato come un'interfaccia per il collegamento al servizio PSC. Una volta creato, puoi utilizzare i dettagli del collegamento dell'endpoint quando configuri un connettore per la connettività privata. Questa pagina spiega come creare un collegamento dell'endpoint e presuppone la conoscenza dei seguenti concetti:
- VPC (Virtual Private Cloud) di Google Cloud
- Private Service Connect
- Cloud DNS
- Connettori di integrazione
Puoi creare il collegamento dell'endpoint come indirizzo IP o come nome host.
- Creare un collegamento di endpoint come indirizzo IP
- Creare un collegamento di endpoint come nome host
Creare un collegamento di endpoint come indirizzo IP
Per creare un collegamento di endpoint come indirizzo IP, puoi utilizzare la console Cloud o la riga di comando (gcloud).Console
Per creare un collegamento di endpoint dalla console Cloud, segui questi passaggi:
- Apri la pagina Collegamenti endpoint per Integration Connectors.
- Fai clic su Crea. Viene visualizzata la pagina Crea collegamento endpoint.
- Inserisci i valori per i seguenti campi:
- Nome: un nome per il collegamento dell'endpoint. Il nome deve essere univoco. Non possono esserci altri collegamenti endpoint con lo stesso nome e non è possibile modificare il nome in un secondo momento. Il nome deve iniziare con una lettera minuscola seguita da un massimo di 63 lettere minuscole, numeri o trattini, ma non può terminare con un trattino. La lunghezza minima è 2.
- ID collegamento al servizio: nome del collegamento al servizio PSC che hai già creato.
- (Facoltativo) Descrizione: inserisci una descrizione per il collegamento dell'endpoint.
- (Facoltativo) Etichette: inserisci le etichette delle risorse come coppie chiave-valore. Per maggiori informazioni sulle etichette, consulta Che cosa sono le etichette?
- Fai clic su Crea.
La colonna Indirizzo IP specifica l'indirizzo IP del collegamento dell'endpoint. Devi utilizzare questo indirizzo IP durante la configurazione di un connettore per la connettività privata.
gcloud
Per creare un collegamento endpoint dalla riga di comando:
- Ottieni la risorsa del collegamento al servizio PSC:
gcloud compute service-attachments list
Il comando restituisce l'elenco dei collegamenti ai servizi. Ad esempio:
NAME REGION TARGET_SERVICE CONNECTION_PREFERENCE demo-sa us-west1 k8s2-tcp-tgysilgj-apps-ingressgateway-fzdhwstg ACCEPT_AUTOMATIC
Avrai bisogno di queste informazioni sul collegamento al servizio nei passaggi successivi.
- Richiedi un token di autenticazione prima di eseguire l'API CreateEndpointAttachment:
TOKEN="$(gcloud auth print-access-token)"
- Crea il collegamento dell'endpoint utilizzando l'API CreateEndpointAttachment. Ad esempio:
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{ "name": "projects/PROJECT_ID/locations/LOCATION/endpointAttachments/ENDPOINT_ATTACHMENT_NAME", "serviceAttachment": "projects/demo/serviceAttachments/?SERVICE_ATTACHMENT_NAME" }' \ https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/endpointAttachments?endpointAttachmentId=ENDPOINT_ATTACHMENT_NAME
Dove:
- LOCATION è la regione del collegamento al servizio. Ad esempio,
us-west1
. - PROJECT_ID è il progetto Google Cloud in cui hai creato il collegamento al servizio PSC.
- ENDPOINT_ATTACHMENT_NAME è il nome del collegamento dell'endpoint. Il nome deve essere univoco. Non possono esserci altri collegamenti endpoint con lo stesso nome e non è possibile modificare il nome in un secondo momento. Il nome deve iniziare con una lettera minuscola seguita da un massimo di 31 lettere minuscole, numeri o trattini, ma non può terminare con un trattino. La lunghezza minima è 2.
- SERVICE_ATTACHMENT_NAME è il nome del collegamento al servizio. Utilizza il nome dell'account di servizio PSC restituito dal comando
gcloud compute service-attachments list
eseguito in precedenza.
Dopo aver chiamato l'API, Integration Connectors avvia un'operazione a lunga esecuzione e il completamento dell'operazione potrebbe richiedere un po' di tempo. Il collegamento dell'endpoint verrà creato al termine dell'operazione.
- LOCATION è la regione del collegamento al servizio. Ad esempio,
- Recupera l'ID progetto della directory dei servizi associato al tuo progetto Google Cloud, quindi inserisci l'ID progetto nella lista consentita nel collegamento del servizio.
- Verifica se il collegamento dell'endpoint viene creato utilizzando l'API GetEndpointAttachment.
Ad esempio:
curl -X GET -H "Authorization: Bearer $TOKEN" \ https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/endpointAttachments/ENDPOINT_ATTACHMENT_NAME
L'API restituisce una risposta simile alla seguente:
{ "name": "projects/demo-project/locations/us-central1/endpointAttachments/demo-ea", "createTime": "2023-04-17T04:34:59.569527046Z", "updateTime": "2023-04-17T04:37:25.189074195Z", "description": "demo endpoint attachment", "serviceAttachment": "projects/demo-project/regions/us-central1/serviceAttachments/demo-sa", "endpointIp": "10.0.0.0", "labels": {"team":"sre"}, }
L'indirizzo IP del collegamento dell'endpoint è disponibile nel campo
endpointIp
. In questa risposta di esempio, l'indirizzo IP è10.0.0.0
. Utilizza questo indirizzo IP durante la configurazione di un connettore per la connettività privata.
Se la creazione del collegamento dell'endpoint ha esito positivo, il collegamento appena creato viene elencato nella pagina Allegati endpoint, come nell'immagine seguente:
I passaggi, descritti finora, mostrano come creare un collegamento endpoint come indirizzo IP. Tuttavia, puoi anche creare un collegamento endpoint come nome host e utilizzare il nome host per configurare un connettore per la connettività privata. Per informazioni su come creare un collegamento endpoint con un nome host, consulta Creare un collegamento per endpoint come nome host.
Crea un collegamento di endpoint come nome host
Per creare un collegamento di endpoint come nome host, esegui le seguenti attività:
- Crea un collegamento di endpoint come indirizzo IP. Per maggiori informazioni, consulta Creare un collegamento di endpoint come indirizzo IP.
- Crea una zona gestita privata di Cloud DNS in uno qualsiasi dei tuoi progetti Google Cloud.
In questa zona DNS, devi aggiungere un nome host da utilizzare per la configurazione del connettore e mapparlo all'indirizzo IP del collegamento dell'endpoint ottenuto nel passaggio 1. Per informazioni su come creare una zona gestita privata di Cloud DNS, consulta Creare una zona privata e Aggiungere un record.
- Crea una zona gestita di Integration Connectors nel progetto Google Cloud che utilizzi per Integration Connectors. La zona gestita di Integration Connectors (zona di peering) comunica con la zona gestita privata di Cloud DNS (creata nel passaggio 2) per la risoluzione dei nomi.
Prima di creare la zona gestita, devi concedere i ruoli e le autorizzazioni seguenti:
- Concedi l'autorizzazione
connectors.managedZones.create
all'utente che crea la zona gestita di Integration Connectors.L'autorizzazione
connectors.managedZones.create
è disponibile nel ruolo IAMroles/connectors.admin
o nel ruolo IAMroles/connectors.managedZonesAdmin
. Per informazioni sui vari ruoli IAM e sulle autorizzazioni corrispondenti disponibili per Integration Connectors, consulta Ruoli e autorizzazioni IAM per Integration Connectors. - Concedi il ruolo
role/dns.peer
all'account di servizioservice-PROJECT_NUMBER@gcp-sa-connectors.iam.gserviceaccount.com
di Integration Connectors.Se il progetto Google Cloud di Cloud DNS è diverso dal progetto Google Cloud di Integration Connectors, concedi il ruolo
roles/dns.peer
all'account di servizio di Integration Connectors nel progetto Google Cloud di Cloud DNS. Ad esempio, supponiamo di voler creare la zona gestita di Integration Connectors nel progetto Google Cloud 12345 e che Cloud DNS si trovi nel progetto Google Cloud 67890. In questo caso, devi concedere il ruoloroles/dns.peer
all'account di servizioservice-12345@gcp-sa-connectors.iam.gserviceaccount.com
nel progetto Google Cloud 67890.
Per creare una zona gestita di Integration Connectors, puoi utilizzare la console Cloud o la riga di comando (gcloud).
Console
Per creare una zona gestita di Integration Connectors dalla console Cloud:
- Vai alla pagina Zone gestite per Integration Connectors.
- Inserisci i valori nei seguenti campi:
- Nome: il nome della zona gestita.
- Nome DNS di destinazione: il nome Cloud DNS per il quale stai creando la zona gestita (peering).
- Progetto di destinazione: nome del progetto Google Cloud che include la zona Cloud DNS privata.
- Rete di destinazione: nome della rete VPC in cui viene mantenuta la zona Cloud DNS privata.
- (Facoltativo) Descrizione: inserisci una descrizione per il collegamento dell'endpoint.
- (Facoltativo) Etichette: inserisci le etichette delle risorse come coppie chiave-valore. Per maggiori informazioni sulle etichette, consulta Che cosa sono le etichette?
- Fai clic su Crea.
gcloud
Per creare una zona gestita di Integration Connectors dalla riga di comando:
- Richiedi un token di autenticazione prima di eseguire l'API CreateManagedZone:
TOKEN="$(gcloud auth print-access-token)"
- Crea la zona gestita utilizzando l'API CreateManagedZone. Ad esempio:
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{ "description": "DESCRIPTION", "dns": "DNS_NAME", "target_project": "TARGET_PROJECT", "target_vpc": "TARGET_VPC" }' \ https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/global/managedZones?managedZoneId=MANAGED_ZONE_NAME
Dove:
- DESCRIPTION è una descrizione facoltativa per la zona gestita.
- DNS_NAME è il nome Cloud DNS per il quale stai creando la zona gestita (peering).
- TARGET_PROJECT è il nome del progetto Google Cloud che include la zona Cloud DNS privata.
- TARGET_NETWORK è il nome della rete VPC in cui viene mantenuta la zona Cloud DNS privata.
- PROJECT_ID è il progetto Google Cloud che stai utilizzando per Integration Connectors.
- MANAGED_ZONE_NAME è il nome della zona gestita. Il nome deve essere univoco. Non possono esistere altre zone gestite con lo stesso nome e non è possibile modificarne il nome in un secondo momento. Il nome deve iniziare con una lettera minuscola seguita da un massimo di 63 lettere minuscole, numeri o trattini, ma non può terminare con un trattino. La lunghezza minima è 2.
Dopo aver chiamato l'API, Integration Connectors avvia un'operazione a lunga esecuzione e il completamento dell'operazione potrebbe richiedere un po' di tempo. La zona gestita verrà creata al termine dell'operazione.
- Verifica se la zona gestita è stata creata utilizzando l'API GetManagedZone.
Ad esempio:
curl -X GET -H "Authorization: Bearer $TOKEN" \ https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/global/managedZones/MANAGED_ZONE_NAME
L'API restituisce una risposta simile alla seguente:
{ "name": "projects/demo-project/locations/global/managedZones/demo-mz", "createTime": "2023-04-17T04:34:59.569527046Z", "updateTime": "2023-04-17T04:37:25.189074195Z", "description": "demo managed zone", "dns": "api.private.service.com.", "targetVpc": "target-project-vpc", "targetProject": "target-project" }
- Concedi l'autorizzazione
Se la creazione della zona gestita ha esito positivo, la zona gestita appena creata viene elencata nella pagina Zone gestite, simile alla seguente immagine:
Verificare la configurazione del collegamento dell'endpoint
Puoi verificare la connettività dell'endpoint creando una connessione al tuo sistema di backend. Quando crei la connessione, nella sezione Destinations
seleziona Destination type
come Hostname
, quindi inserisci l'indirizzo IP o il nome host dell'endpoint appropriato. Se la creazione della connessione ha esito positivo, lo stato
della connessione appena creata sarà Active
nella pagina Connessioni
della console Cloud.