Crea un collegamento dell'endpoint

Per configurare la connettività privata per Integration Connectors, devi creare una Collegamento PSC (Private Service Connect). Tuttavia, per utilizzare l'allegato PSC, devi anche creare un collegamento endpoint perché non puoi utilizzare direttamente il collegamento PSC. Puoi pensare il collegamento dell'endpoint come interfaccia del collegamento del servizio PSC. Una volta creato, Utilizzare i dettagli del collegamento dell'endpoint quando si configura un connettore per la connettività privata. Questa pagina spiega come creare un collegamento endpoint e presuppone che tu abbia familiarità con i seguenti concetti:

Puoi creare il collegamento dell'endpoint come indirizzo IP o come nome host.

Crea un collegamento dell'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:

  1. Apri la pagina Collegamenti endpoint per Integration Connectors.

    Vai ai collegamenti degli endpoint

  2. Fai clic su + Crea. Si apre la pagina Crea collegamento endpoint.
  3. Inserisci i valori nei seguenti campi:
    • Nome: un nome per il collegamento dell'endpoint. Il nome deve essere univoco. Possono esserci nessun altro collegamento endpoint con lo stesso nome e non potrai 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 del servizio: nome del collegamento del servizio PSC già in tuo possesso è stato creato.
    • (Facoltativo) Descrizione: inserisci una descrizione per il collegamento dell'endpoint.
    • (Facoltativo) Etichette: inserisci le etichette delle risorse come coppie chiave-valore. Per ulteriori informazioni sulle etichette, vedi Che cosa sono le etichette?
    • (Facoltativo) Abilita l'accesso globale agli endpoint: seleziona questa opzione se vuoi per inviare traffico al backend da una connessione presente in qualsiasi regione.

      Per impostazione predefinita, collegamento endpoint richiede che sia la connessione sia il backend nella stessa regione. Pertanto, se abiliti l'accesso globale per l'endpoint, una connessione presente in qualsiasi regione può inviare traffico al tuo backend.

  4. Fai clic su Crea.

La colonna Indirizzo IP specifica l'indirizzo IP del collegamento dell'endpoint. Devi utilizza questo indirizzo IP quando configuri un connettore per la connettività privata.

gcloud

Per creare un collegamento dell'endpoint dalla riga di comando:

  1. Ottieni la risorsa di 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 delle informazioni sul collegamento al servizio nei passaggi successivi.

  2. Richiedi un token di autenticazione prima di eseguire l'API CreateEndpointAttachment:
    TOKEN="$(gcloud auth print-access-token)"
  3. 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 endpoint allegati con lo stesso nome, che non potrai più modificare. Il nome deve iniziare con lettera minuscola seguita da un massimo di 31 lettere minuscole, numeri o trattini, ma non può terminano con un trattino. La lunghezza minima è 2.
    • SERVICE_ATTACHMENT_NAME è il nome del collegamento al servizio. Utilizzare la PSC il nome dell'account di servizio restituito esegui il comando gcloud compute service-attachments list.

    Dopo aver chiamato l'API, Integration Connectors avvia a operazione a lunga esecuzione e il completamento dell'operazione potrebbe richiedere del tempo. L'endpoint verrà creato al termine dell'operazione.

  4. Recupera l'ID progetto della directory dei servizi associato al tuo progetto Google Cloud, quindi autorizza quell'ID progetto nel collegamento al servizio.
  5. Verifica che il collegamento dell'endpoint sia stato 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 questo di esempio, l'indirizzo IP è 10.0.0.0. Usa questo indirizzo IP durante la configurazione 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, simile alla seguente immagine:

allegato-endpoint allegato-endpoint

I passaggi, descritti finora, mostrano come creare un collegamento endpoint come indirizzo IP. Tuttavia, puoi anche creare un collegamento dell'endpoint come nome host e utilizzare il nome host per configurare un connettore per la connettività privata. Per capire come creare un collegamento di endpoint con un nome host, consulta Creare un collegamento dell'endpoint come nome host.

Crea un collegamento dell'endpoint come nome host

Per creare un collegamento dell'endpoint come nome host:

  1. Crea un collegamento dell'endpoint come indirizzo IP. Per ulteriori informazioni, vedi Crea un collegamento dell'endpoint come indirizzo IP.
  2. Creare una zona gestita privata di Cloud DNS in uno dei tuoi progetti Google Cloud.

    In questa zona DNS, devi aggiungere un nome host che desideri utilizzare per la configurazione del connettore e mappare il nome host all'indirizzo IP del collegamento dell'endpoint ottenuto nel passaggio 1. Per informazioni su come creare una zona gestita privata di Cloud DNS, vedi Creare una zona privata e Aggiungi un record.

  3. Crea una zona gestita di Integration Connectors nel progetto Google Cloud che utilizzi per Integration Connectors. Integration Connectors la zona gestita (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 a dell'utente che ha creato la zona gestita di Integration Connectors.

      L'autorizzazione connectors.managedZones.create è disponibile nel ruolo IAM roles/connectors.admin o nel roles/connectors.managedZonesAdmin. Per informazioni sul vari ruoli IAM e le autorizzazioni corrispondenti disponibili per Integration Connectors, consulta Ruoli e autorizzazioni IAM per Integration Connectors.

    • Concedi il ruolo role/dns.peer a Integration Connectors Account di servizio service-PROJECT_NUMBER@gcp-sa-connectors.iam.gserviceaccount.com.

      Se il progetto Google Cloud di Cloud DNS è diverso da Integration Connectors progetto Google Cloud, quindi concedi il ruolo roles/dns.peer al Account di servizio Integration Connectors nel progetto Google Cloud di Cloud DNS. Ad esempio: considera di voler creare la zona gestita Integration Connectors nel progetto Google Cloud 12345 e Cloud DNS fa parte del progetto Google Cloud 67890. In questo caso, devi concedere il ruolo roles/dns.peer Account di servizio service-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, segui questi passaggi:

    1. Vai alla pagina Zone gestite per Integration Connectors.

      Vai a Zone gestite

    2. Inserisci i valori nei seguenti campi:
      1. Nome: il nome della zona gestita.
      2. Nome DNS di destinazione: nome completo di Cloud DNS per il quale stai creando la zona gestita (peering). Ad esempio, server8.stage.user.private.
      3. Progetto di destinazione: nome del progetto Google Cloud che include la zona Cloud DNS privata.
      4. Rete di destinazione: nome della rete VPC in cui è mantenuta la zona Cloud DNS privata.
      5. (Facoltativo) Descrizione: inserisci una descrizione per il collegamento dell'endpoint.
      6. (Facoltativo) Etichette: inserisci le etichette delle risorse come coppie chiave-valore. Per ulteriori informazioni sulle etichette, vedi Che cosa sono le etichette?
    3. Fai clic su Crea.

    gcloud

    Per creare una zona gestita di Integration Connectors dalla riga di comando:

    1. Ottieni un token di autenticazione prima di eseguire l'API CreateManagedZone:
      TOKEN="$(gcloud auth print-access-token)"
    2. 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 della zona gestita.
      • DNS_NAME: nome completo di Cloud DNS per cui stai creando la zona gestita (peering). Ad esempio, server8.stage.user.private.
      • TARGET_PROJECT è il nome del progetto Google Cloud che include la zona Cloud DNS privata.
      • TARGET_NETWORK è il nome della rete VPC in cui è 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 essere altre zone gestite con lo stesso nome e non potrai modificarlo in seguito. Il nome deve iniziare con lettera minuscola seguita da un massimo di 63 lettere minuscole, numeri o trattini, ma non può terminano con un trattino. La lunghezza minima è 2.

      Dopo aver chiamato l'API, Integration Connectors avvia a operazione a lunga esecuzione e il completamento dell'operazione potrebbe richiedere del tempo. Lo strumento verrà creata al termine dell'operazione.

    3. Verifica se la zona gestita viene 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"
      }

Se la creazione della zona gestita ha esito positivo, la zona gestita appena creata viene elencato nella pagina Zone gestite simile alla seguente immagine:

zona-gestita zona-gestita

Verifica 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 Endpoint attachment, quindi seleziona il collegamento dell'endpoint appropriato. Se connessione è riuscita, lo stato della connessione appena creata essere Active nella pagina Connessioni nella console Cloud.