Connettiti a un'istanza utilizzando Private Service Connect

Questa pagina descrive come utilizzare Private Service Connect per connettersi a un'istanza Cloud SQL.

Puoi utilizzare Private Service Connect per connetterti a un'istanza Cloud SQL principale o a una delle relative repliche di lettura da più reti Virtual Private Cloud (VPC) appartenenti a gruppi, team, progetti o organizzazioni diversi.

Prima di iniziare

Il supporto per l'utilizzo di Private Service Connect con un'istanza Cloud SQL è disponibile per le versioni 416.0.0 e successive di gcloud CLI.

Ruoli utente

La seguente tabella fornisce informazioni sui ruoli necessari per utilizzare Private Service Connect con un'istanza Cloud SQL:

Ruolo Descrizione
compute.networkAdmin

Concede il controllo completo della rete VPC che avvia una connessione a un'istanza Cloud SQL. Puoi creare e gestire indirizzi IP, regole firewall, criteri di connessione al servizio ed endpoint Private Service Connect.

Se utilizzi Private Service Connect per connetterti a un'istanza Cloud SQL da più reti VPC, ogni rete ha il proprio amministratore.

dns.admin Concede il controllo completo delle risorse Cloud DNS, incluse zone e record DNS.
cloudsql.admin Fornisce il controllo completo di un'istanza Cloud SQL e la controlla durante il suo ciclo di vita.
cloudsql.instanceUser Fornisce l'accesso all'istanza Cloud SQL. Se ti connetti tramite il client Cloud SQL Auth Proxy, devi disporre del ruolo Client Cloud SQL. Se ti connetti direttamente, non hai bisogno di ruoli e autorizzazioni Identity and Access Management (IAM).

Crea un endpoint Private Service Connect

Gli endpoint di Private Service Connect sono indirizzi IP interni in una rete VPC consumer a cui i client in quella rete possono accedere direttamente. I client possono utilizzare questi endpoint per connettersi alle istanze Cloud SQL.

Puoi fare in modo che Cloud SQL crei automaticamente un endpoint Private Service Connect nel tuo VPC oppure puoi creare l'endpoint manualmente.

Per fare in modo che Cloud SQL crei automaticamente l'endpoint Private Service Connect:

  1. Crea un criterio di connessione del servizio nelle tue reti VPC. Con questa policy, puoi eseguire il provisioning automatico degli endpoint Private Service Connect.
  2. Crea un'istanza Cloud SQL con Private Service Connect abilitato per l'istanza e configura l'istanza per creare automaticamente endpoint Private Service Connect.
  3. Recupera l'endpoint per l'istanza. In questo modo puoi utilizzare l'endpoint per connetterti all'istanza.

Per creare manualmente l'endpoint Private Service Connect:

  1. Crea un'istanza Cloud SQL con Private Service Connect abilitato per l'istanza.
  2. Recupera l'URI del collegamento al servizio. Utilizzi questo URI per creare l'endpoint Private Service Connect.
  3. Riserva un indirizzo IP interno per l'endpoint Private Service Connect e crea un endpoint con questo indirizzo.

Crea automaticamente l'endpoint

Le sezioni successive spiegano come configurare l'istanza per consentire a Cloud SQL di creare automaticamente l'endpoint Private Service Connect.

Crea una policy di connessione al servizio

Una policy di connessione al servizio consente di autorizzare una classe di servizi specificata a creare un endpoint Private Service Connect nella tua rete VPC consumer. Puoi utilizzare il criterio di connessione al servizio per consentire a Cloud SQL di creare automaticamente endpoint Private Service Connect.

Puoi creare una policy di connessione del servizio utilizzando la Google Cloud console, gcloud CLI o l'API.

Console

  1. Nella console Google Cloud , vai alla pagina Private Service Connect.

    Vai a Private Service Connect

  2. Fai clic sulla scheda Norme di connessione.

  3. Fai clic su Crea criterio di connessione.

  4. Inserisci un nome per la policy di connessione.

  5. Specifica la classe di servizio nel seguente modo:

    1. Per Classe di servizio di origine, seleziona Servizi Google.
    2. Nel menu Classe di servizio, seleziona google-cloud-sql perché Cloud SQL è il servizio gestito per il criterio di connessione.
  6. Nella sezione Ambito degli endpoint di destinazione, seleziona una rete e una regione a cui si applica questo criterio.

  7. Nella sezione Policy, seleziona una o più subnet dal menu Subnet. Le subnet vengono utilizzate per allocare indirizzi IP per gli endpoint.

  8. (Facoltativo) Specifica un limite di connessioni per la policy. Il limite determina il numero di endpoint che possono essere creati utilizzando questa policy di connessione. Se non specifichi un limite di connessione, non ce n'è nessuno.

  9. Fai clic su Crea criterio.

gcloud

Per creare una policy di connessione al servizio, utilizza il comando service-connection-policies create.

gcloud network-connectivity service-connection-policies create POLICY_NAME \
    --network=NETWORK \
    --project=PROJECT_ID \
    --region=REGION \
    --service-class=SERVICE_CLASS \
    --subnets=https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/subnetworks/SUBNETS \
    --psc-connection-limit=LIMIT \
    --description="DESCRIPTION" \
    --producer-instance-location=PRODUCER_INSTANCE_LOCATION \
    --allowed-google-producers-resource-hierarchy-level=RESOURCE_HIERARCHY_LEVEL

Sostituisci quanto segue:

  • POLICY_NAME: il nome del criterio di connessione del servizio.
  • NETWORK: la rete a cui si applica questo criterio.
  • PROJECT_ID: l'ID o il numero del progetto della rete VPC. Per le reti VPC condivise, devi implementare le norme di connessione al servizio nel progetto host perché queste norme non sono supportate nei progetti di servizio.
  • REGION: la regione a cui si applica questa norma. Devono esistere le stesse norme per ogni regione in cui vuoi automatizzare la connettività dei servizi.
  • SERVICE_CLASS: l'identificatore della risorsa fornito dal produttore della classe di servizio. Per Cloud SQL, la classe di servizio è google-cloud-sql.
  • SUBNETS: una o più subnet consumer regolari utilizzate per allocare indirizzi IP per gli endpoint Private Service Connect. Questi indirizzi IP vengono allocati automaticamente e restituiti al pool della subnet man mano che le istanze del servizio gestito vengono create ed eliminate. Le subnet devono trovarsi nella stessa regione della policy di connessione al servizio. Se più policy di connessione condividono la stessa regione, puoi riutilizzare la stessa subnet in queste policy. Puoi inserire più subnet in un elenco separato da virgole.
  • LIMIT: il numero massimo di endpoint che puoi creare utilizzando questa policy. Se non specifichi un limite, non ce n'è.
  • DESCRIPTION: una descrizione facoltativa del criterio di connessione al servizio.
  • PRODUCER_INSTANCE_LOCATION: utilizza questo flag facoltativo per specificare se autorizzare una gerarchia personalizzata delle località per un'istanza Cloud SQL. Puoi impostare il valore di PRODUCER_INSTANCE_LOCATION su uno solo dei seguenti valori:

    • custom-resource-hierarchy-levels: l'istanza deve trovarsi in uno dei progetti, delle cartelle o delle organizzazioni che fornisci come valore per il parametro allowed-google-producers-resource-hierarchy-level.
    • none: l'istanza si trova nello stesso progetto della policy di connessione al servizio.
  • RESOURCE_HIERARCHY_LEVEL: un elenco di progetti, cartelle o organizzazioni in cui si trova l'istanza. Questo elenco è in formato projects/PROJECT_ID, folders/FOLDER_ID o organizations/ORGANIZATION_ID.

Ad esempio, il seguente comando crea un criterio di connessione di servizio per la classe di servizio
google-cloud-sql che alloca indirizzi IP dalla subnet managed-services. Utilizzando questa policy è possibile creare un massimo di 10 endpoint Private Service Connect. Gli endpoint devono essere creati in progetti che si trovano nella stessa organizzazione dell'istanza di servizio gestita. L'istanza Cloud SQL si trova nel progetto myproject.

gcloud network-connectivity service-connection-policies create cloud-sql-policy \
    --network=default \
    --project=my-project \
    --region=us-central1 \
    --service-class=google-cloud-sql \
    --subnets=managed-service-subnet \
    --psc-connection-limit=10 \
    --producer-instance-location=custom-resource-hierarchy-levels \
    --allowed-google-producers-resource-hierarchy-level=projects/myproject

REST

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • PROJECT_ID: l'ID progetto.
  • REGION: la regione della policy di connessione al servizio.
  • POLICY_NAME: il nome della policy di connessione al servizio.
  • DESCRIPTION: una descrizione facoltativa della tua policy di connessione al servizio.
  • NETWORK: la rete della policy di connessione al servizio.
  • LIMIT: il numero massimo di endpoint che puoi creare utilizzando questa policy. Se non specifichi un limite, non ce n'è.
  • SUBNETS: una o più subnet consumer regolari utilizzate per allocare indirizzi IP per gli endpoint Private Service Connect. Questi indirizzi IP vengono allocati automaticamente e restituiti al pool della subnet man mano che vengono create ed eliminate le istanze del servizio gestito. Le subnet devono trovarsi nella stessa regione della policy di connessione al servizio. Se più criteri di connessione condividono la stessa regione, puoi riutilizzare la stessa subnet in questi criteri. Puoi inserire più subnet in un elenco separato da virgole.
  • SERVICE_CLASS: l'identificatore della risorsa fornito dal produttore della classe di servizio.

Metodo HTTP e URL:

POST https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/serviceConnectionPolicies?serviceConnectionPolicyId=POLICY_NAME

Corpo JSON della richiesta:

{
  "description": "DESCRIPTION",
  "network": "projects/PROJECT_ID/global/networks/NETWORK",
  "pscConfig": {
    "limit": "LIMIT",
    "subnetworks": [
      "projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET"
    ]
  },
  "serviceClass": "SERVICE_CLASS"
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "name": "projects/PROJECT_ID/locations/REGION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.networkconnectivity.v1.OperationMetadata",
    "createTime": "2023-08-15T16:59:29.236110917Z",
    "target": "projects/PROJECT_ID/locations/REGION/serviceConnectionPolicies/POLICY_NAME",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Crea un'istanza Cloud SQL

Puoi creare un'istanza con Private Service Connect abilitato per l'istanza e configurare l'istanza in modo che crei automaticamente gli endpoint utilizzando gcloud CLI o l'API.

gcloud

Per creare un'istanza con Private Service Connect abilitato per l'istanza, utilizza il comando gcloud sql instances create:

gcloud sql instances create INSTANCE_NAME \
--project=PROJECT_ID \
--region=REGION_NAME \
--enable-private-service-connect \
--allowed-psc-projects=ALLOWED_PROJECTS \
--availability-type=AVAILABILITY_TYPE \
--no-assign-ip \
--tier=MACHINE_TYPE \
--database-version=DATABASE_VERSION \
--psc-auto-connections=network=CONSUMER_NETWORK,project=CONSUMER_PROJECT

Effettua le seguenti sostituzioni:

  • INSTANCE_NAME: il nome dell'istanza
  • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'istanza.
  • REGION_NAME: il nome della regione per l'istanza.
  • ALLOWED_PROJECTS: un elenco separato da virgole di ID o numeri di progetto consentiti da cui gli endpoint Private Service Connect possono connettersi alle istanze Cloud SQL.

    Se un progetto non è incluso in questo elenco, non puoi creare endpoint Private Service Connect nel progetto per connetterti all'istanza.

  • AVAILABILITY_TYPE: attiva l'alta disponibilità per l'istanza. Per questo parametro, specifica uno dei seguenti valori:
    • REGIONAL: attiva l'alta disponibilità ed è consigliato per le istanze di produzione. L'istanza esegue il failover a un'altra zona all'interno della regione selezionata.
    • ZONAL: non fornisce funzionalità di failover. Questo è il valore predefinito.

    Per saperne di più su come impostare e rimuovere l'alta disponibilità per le istanze, consulta Configurare un'istanza esistente per l'alta disponibilità e Disattivare l'alta disponibilità per un'istanza.

  • MACHINE_TYPE: il tipo di macchina per l'istanza
  • DATABASE_VERSION: la versione del database per l'istanza (ad esempio, POSTGRES_13).
  • CONSUMER_NETWORK: il percorso della rete VPC da cui devono essere creati gli endpoint Private Service Connect. Ad esempio:
    projects/my-host-project/global/networks/default.
  • CONSUMER_PROJECT: il progetto in cui viene creato l'endpoint Private Service Connect. Se utilizzi una rete VPC condiviso, può trattarsi del progetto host o del progetto di servizio.

    I progetti specificati nei parametri di connessione automatica vengono aggiunti automaticamente ai progetti consentiti. Se vuoi creare manualmente endpoint Private Service Connect per alcuni progetti, puoi aggiungerli all'elenco dei progetti consentiti.

REST

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'istanza.
  • INSTANCE_NAME: il nome dell'istanza
  • REGION_NAME: il nome della regione per l'istanza.
  • AVAILABILITY_TYPE: attiva l'alta disponibilità per l'istanza. Per questo parametro, specifica uno dei seguenti valori:
    • REGIONAL: attiva l'alta disponibilità ed è consigliato per le istanze di produzione. L'istanza esegue il failover a un'altra zona all'interno della regione selezionata.
    • ZONAL: non fornisce funzionalità di failover. Questo è il valore predefinito.

    Per saperne di più su come impostare e rimuovere l'alta disponibilità per le istanze, consulta Configurare un'istanza esistente per l'alta disponibilità e Disattivare l'alta disponibilità per un'istanza.

  • ALLOWED_PROJECTS: un elenco separato da virgole di ID o numeri di progetto consentiti da cui gli endpoint Private Service Connect possono connettersi alle istanze Cloud SQL.

    Se un progetto non è incluso in questo elenco, non puoi creare endpoint Private Service Connect nel progetto per connetterti all'istanza.

  • MACHINE_TYPE: il tipo di macchina per l'istanza
  • CONSUMER_NETWORK: la rete VPC in cui vuoi consentire la creazione automatica di endpoint Private Service Connect.
  • PARENT_PROJECT: il progetto che contiene la rete CONSUMER_NETWORK. Se non specifichi un progetto diverso in CONSUMER_PROJECT, gli endpoint vengono creati automaticamente in PARENT_PROJECT
  • CONSUMER_PROJECT: (Facoltativo). Specifica questo valore solo se CONSUMER_NETWORK è una rete VPC condiviso e vuoi consentire la creazione automatica di endpoint Private Service Connect in un progetto di servizio.

    I progetti specificati nei parametri di connessione automatica vengono aggiunti automaticamente ai progetti consentiti. Se vuoi creare manualmente endpoint Private Service Connect per alcuni progetti, puoi aggiungerli all'elenco dei progetti consentiti.

Metodo HTTP e URL:

POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances

Corpo JSON della richiesta:

{
  "name": "INSTANCE_NAME",
  "project": PROJECT_ID",
  "region": "REGION_NAME",
  "databaseVersion": "POSTGRES_13",
  "kind": "sql#instance",
  "settings": {
    "availabilityType": "AVAILABILITY_TYPE",
    "ipConfiguration": {
      "ipv4Enabled": false,
      "pscConfig": {
        "allowedConsumerProjects": [
          "ALLOWED_PROJECTS"
        ],
        "pscAutoConnections": [
          {
            "consumerProject":"CONSUMER_PROJECT",
            "consumerNetwork":"projects/PARENT_PROJECT/global/networks/CONSUMER_NETWORK"
          }
        ],
        "pscEnabled": true
      }
    },
    "kind": "sql#settings",
    "pricingPlan": "PER_USE",
    "replicationType": "SYNCHRONOUS",
    "tier": "MACHINE_TYPE"
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME",
  "status": "RUNNING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "startTime": "2023-06-14T18:48:35.499Z",
  "operationType": "CREATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_NAME",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

Recupera l'endpoint

Recuperando l'indirizzo IP interno, ovvero l'endpoint Private Service Connect per un'istanza, puoi utilizzare questo endpoint per connetterti all'istanza.

gcloud

Per visualizzare informazioni su un'istanza, incluso l'indirizzo IP che è l'endpoint Private Service Connect per l'istanza, utilizza il comando gcloud sql instances describe:

gcloud sql instances describe INSTANCE_NAME \
--project=PROJECT_ID \
--format='json(settings.ipConfiguration.pscConfig.pscAutoConnections)'

Effettua le seguenti sostituzioni:

Nella risposta, annota il valore visualizzato accanto al campo pscConfig:pscAutoConnections:ipAddress. Questo valore è l'indirizzo IP interno che è anche l'endpoint Private Service Connect per l'istanza.

REST

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

Metodo HTTP e URL:

GET https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "kind": "sql#instance",
  "state": "RUNNABLE",
  "databaseVersion": "POSTGRES_13",
  "settings": {
    "authorizedGaeApplications": [],
    "tier": "db-custom-2-7680",
    "kind": "sql#settings",
    "availabilityType": "REGIONAL",
    "pricingPlan": "PER_USE",
    "replicationType": "SYNCHRONOUS",
    "activationPolicy": "ALWAYS",
    "ipConfiguration": {
      "authorizedNetworks": [],
      "pscConfig": {
        "allowedConsumerProjects": [
          "ALLOWED_PROJECTS"
        ],
      "pscAutoConnections": {
        consumerNetwork:"projects/PARENT_PROJECT/global/networks/CONSUMER_NETWORK",
        consumerNetworkStatus:"CONSUMER_NETWORK_STATUS",
        consumerProject:"CONSUMER_PROJECT",
        ipAddress:"IP_ADDRESS",
        status:"STATUS"
        },
        "pscEnabled": true
      },
      "ipv4Enabled": false
    },
}

Per le istanze per cui è abilitato Private Service Connect, esistono i seguenti campi:

  • allowedConsumerProjects: un elenco dei progetti consentiti per l'istanza. Puoi creare endpoint Private Service Connect da qualsiasi rete VPC in questi progetti al collegamento al servizio dell'istanza.
  • pscAutoConnections: la rete VPC consentita, lo stato del criterio di connessione del servizio e lo stato dell'indirizzo IP che è l'endpoint per l'istanza.
  • pscEnabled: indica se Private Service Connect è abilitato per un'istanza.

Per scoprire come creare la richiesta API REST sottostante per questa attività, consulta la pagina instances:get.

Crea l'endpoint manualmente

Le sezioni successive spiegano come creare manualmente un endpoint Private Service Connect.

Crea un'istanza Cloud SQL

Puoi creare un'istanza con Private Service Connect abilitato per l'istanza utilizzando gcloud CLI, Terraform o l'API.

gcloud

Per creare un'istanza con Private Service Connect abilitato per l'istanza, utilizza il comando gcloud sql instances create:

gcloud sql instances create INSTANCE_NAME \
--project=PROJECT_ID \
--region=REGION_NAME \
--enable-private-service-connect \
--allowed-psc-projects=ALLOWED_PROJECTS \
--availability-type=AVAILABILITY_TYPE \
--no-assign-ip \
--tier=MACHINE_TYPE \
--database-version=DATABASE_VERSION

Effettua le seguenti sostituzioni:

  • INSTANCE_NAME: il nome dell'istanza
  • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'istanza.
  • REGION_NAME: il nome della regione per l'istanza.
  • ALLOWED_PROJECTS: un elenco separato da virgole di ID o numeri di progetto consentiti da cui gli endpoint Private Service Connect possono connettersi alle istanze Cloud SQL.

    Se un progetto non è incluso in questo elenco, non puoi creare endpoint Private Service Connect nel progetto per connetterti all'istanza.

  • AVAILABILITY_TYPE: attiva l'alta disponibilità per l'istanza. Per questo parametro, specifica uno dei seguenti valori:
    • REGIONAL: attiva l'alta disponibilità ed è consigliato per le istanze di produzione. L'istanza esegue il failover a un'altra zona all'interno della regione selezionata.
    • ZONAL: non fornisce funzionalità di failover. Questo è il valore predefinito.

    Per saperne di più su come impostare e rimuovere l'alta disponibilità per le istanze, consulta Configurare un'istanza esistente per l'alta disponibilità e Disattivare l'alta disponibilità per un'istanza.

  • MACHINE_TYPE: il tipo di macchina per l'istanza
  • DATABASE_VERSION: la versione del database per l'istanza (ad esempio, POSTGRES_13).

Terraform

Per creare un'istanza con Private Service Connect abilitato, utilizza la risorsa Terraform google_sql_database_instance.

resource "google_sql_database_instance" "default" {
  name             = "postgres-instance"
  region           = "us-central1"
  database_version = "POSTGRES_14"
  settings {
    tier              = "db-custom-2-7680"
    availability_type = "REGIONAL"
    backup_configuration {
      enabled = true
    }
    ip_configuration {
      psc_config {
        psc_enabled               = true
        allowed_consumer_projects = []
      }
      ipv4_enabled = false
    }
  }
}

Per applicare la configurazione di Terraform in un progetto Google Cloud , completa i passaggi nelle sezioni seguenti.

Prepara Cloud Shell

  1. Avvia Cloud Shell.
  2. Imposta il progetto Google Cloud predefinito in cui vuoi applicare le configurazioni Terraform.

    Devi eseguire questo comando una sola volta per progetto e puoi eseguirlo in qualsiasi directory.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Le variabili di ambiente vengono sostituite se imposti valori espliciti nel file di configurazione Terraform.

Prepara la directory

Ogni file di configurazione di Terraform deve avere la propria directory (chiamata anche modulo radice).

  1. In Cloud Shell, crea una directory e un nuovo file al suo interno. Il nome file deve avere l'estensione .tf, ad esempio main.tf. In questo tutorial, il file viene denominato main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Se stai seguendo un tutorial, puoi copiare il codice campione in ogni sezione o passaggio.

    Copia il codice campione nel file main.tf appena creato.

    (Facoltativo) Copia il codice da GitHub. Questa operazione è consigliata quando lo snippet Terraform fa parte di una soluzione end-to-end.

  3. Rivedi e modifica i parametri di esempio da applicare al tuo ambiente.
  4. Salva le modifiche.
  5. Inizializza Terraform. Devi effettuare questa operazione una sola volta per directory.
    terraform init

    (Facoltativo) Per utilizzare l'ultima versione del provider Google, includi l'opzione -upgrade:

    terraform init -upgrade

Applica le modifiche

  1. Rivedi la configurazione e verifica che le risorse che Terraform creerà o aggiornerà corrispondano alle tue aspettative:
    terraform plan

    Apporta le correzioni necessarie alla configurazione.

  2. Applica la configurazione di Terraform eseguendo il comando seguente e inserendo yes al prompt:
    terraform apply

    Attendi che Terraform visualizzi il messaggio "Apply complete!" (Applicazione completata).

  3. Apri il tuo Google Cloud progetto per visualizzare i risultati. Nella console Google Cloud , vai alle risorse nell'interfaccia utente per assicurarti che Terraform le abbia create o aggiornate.

REST

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'istanza.
  • INSTANCE_NAME: il nome dell'istanza
  • REGION_NAME: il nome della regione per l'istanza.
  • AVAILABILITY_TYPE: attiva l'alta disponibilità per l'istanza. Per questo parametro, specifica uno dei seguenti valori:
    • REGIONAL: attiva l'alta disponibilità ed è consigliato per le istanze di produzione. L'istanza esegue il failover a un'altra zona all'interno della regione selezionata.
    • ZONAL: non fornisce funzionalità di failover. Questo è il valore predefinito.

    Per saperne di più su come impostare e rimuovere l'alta disponibilità per le istanze, consulta Configurare un'istanza esistente per l'alta disponibilità e Disattivare l'alta disponibilità per un'istanza.

  • ALLOWED_PROJECTS: un elenco separato da virgole di ID o numeri di progetto consentiti da cui gli endpoint Private Service Connect possono connettersi alle istanze Cloud SQL.

    Se un progetto non è incluso in questo elenco, non puoi creare endpoint Private Service Connect nel progetto per connetterti all'istanza.

  • MACHINE_TYPE: il tipo di macchina per l'istanza

Metodo HTTP e URL:

POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances

Corpo JSON della richiesta:

{
  "name": "INSTANCE_NAME",
  "project": PROJECT_ID",
  "region": "REGION_NAME",
  "databaseVersion": "POSTGRES_13",
  "kind": "sql#instance",
  "settings": {
    "availabilityType": "AVAILABILITY_TYPE",
    "ipConfiguration": {
      "ipv4Enabled": false,
      "pscConfig": {
        "allowedConsumerProjects": [
          "ALLOWED_PROJECTS"
        ],
        "pscEnabled": true
      }
    },
    "kind": "sql#settings",
    "pricingPlan": "PER_USE",
    "replicationType": "SYNCHRONOUS",
    "tier": "MACHINE_TYPE"
  }
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "kind": "sql#operation",
  "targetLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME",
  "status": "RUNNING",
  "user": "user@example.com",
  "insertTime": "2020-01-16T02:32:12.281Z",
  "startTime": "2023-06-14T18:48:35.499Z",
  "operationType": "CREATE",
  "name": "OPERATION_ID",
  "targetId": "INSTANCE_NAME",
  "selfLink": "https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/operations/OPERATION_ID",
  "targetProject": "PROJECT_ID"
}

Recupera il collegamento del servizio

Dopo aver creato un'istanza Cloud SQL con Private Service Connect abilitato, recupera l'URI del collegamento al servizio e utilizzalo per creare l'endpoint Private Service Connect.

gcloud

Per visualizzare le informazioni di riepilogo su un'istanza con Private Service Connect abilitato, ad esempio il campo pscServiceAttachmentLink che mostra l'URI che punta al collegamento al servizio dell'istanza, utilizza il comando gcloud sql instances describe:

gcloud sql instances describe INSTANCE_NAME \
--project=PROJECT_ID

Effettua le seguenti sostituzioni:

  • INSTANCE_NAME: il nome dell'istanza Cloud SQL a cui possono connettersi gli endpoint Private Service Connect nelle reti VPC
  • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'istanza

L'esempio seguente mostra un output di esempio per questo comando:

gcloud sql instances describe myinstance \
--project=12345

...
pscServiceAttachmentLink: projects/45678/regions/myregion/serviceAttachments/myserviceattachment

Terraform

Per ottenere l'URI del collegamento al servizio, utilizza la risorsa Terraform google_compute_address.

resource "google_compute_address" "default" {
  name         = "psc-compute-address"
  region       = "us-central1"
  address_type = "INTERNAL"
  subnetwork   = "default"     # Replace value with the name of the subnet here.
  address      = "10.128.0.42" # Replace value with the IP address to reserve.
}

data "google_sql_database_instance" "default" {
  name = resource.google_sql_database_instance.default.name
}

resource "google_compute_forwarding_rule" "default" {
  name                    = "psc-forwarding-rule-${google_sql_database_instance.default.name}"
  region                  = "us-central1"
  network                 = "default"
  ip_address              = google_compute_address.default.self_link
  load_balancing_scheme   = ""
  target                  = data.google_sql_database_instance.default.psc_service_attachment_link
  allow_psc_global_access = true
}

Per applicare la configurazione di Terraform in un progetto Google Cloud , completa i passaggi nelle sezioni seguenti.

Prepara Cloud Shell

  1. Avvia Cloud Shell.
  2. Imposta il progetto Google Cloud predefinito in cui vuoi applicare le configurazioni Terraform.

    Devi eseguire questo comando una sola volta per progetto e puoi eseguirlo in qualsiasi directory.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Le variabili di ambiente vengono sostituite se imposti valori espliciti nel file di configurazione Terraform.

Prepara la directory

Ogni file di configurazione di Terraform deve avere la propria directory (chiamata anche modulo radice).

  1. In Cloud Shell, crea una directory e un nuovo file al suo interno. Il nome file deve avere l'estensione .tf, ad esempio main.tf. In questo tutorial, il file viene denominato main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Se stai seguendo un tutorial, puoi copiare il codice campione in ogni sezione o passaggio.

    Copia il codice campione nel file main.tf appena creato.

    (Facoltativo) Copia il codice da GitHub. Questa operazione è consigliata quando lo snippet Terraform fa parte di una soluzione end-to-end.

  3. Rivedi e modifica i parametri di esempio da applicare al tuo ambiente.
  4. Salva le modifiche.
  5. Inizializza Terraform. Devi effettuare questa operazione una sola volta per directory.
    terraform init

    (Facoltativo) Per utilizzare l'ultima versione del provider Google, includi l'opzione -upgrade:

    terraform init -upgrade

Applica le modifiche

  1. Rivedi la configurazione e verifica che le risorse che Terraform creerà o aggiornerà corrispondano alle tue aspettative:
    terraform plan

    Apporta le correzioni necessarie alla configurazione.

  2. Applica la configurazione di Terraform eseguendo il comando seguente e inserendo yes al prompt:
    terraform apply

    Attendi che Terraform visualizzi il messaggio "Apply complete!" (Applicazione completata).

  3. Apri il tuo Google Cloud progetto per visualizzare i risultati. Nella console Google Cloud , vai alle risorse nell'interfaccia utente per assicurarti che Terraform le abbia create o aggiornate.

REST

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'istanza
  • INSTANCE_NAME: il nome dell'istanza

Metodo HTTP e URL:

GET https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  ...
  pscServiceAttachmentLink: "projects/PROJECT_ID/regions/REGION_NAME/serviceAttachments/SERVICE_ATTACHMENT_NAME"
}

Il campo pscServiceAttachmentLink mostra l'URI che punta al collegamento del servizio dell'istanza.

Crea un endpoint Private Service Connect

Puoi prenotare un indirizzo IP interno per l'endpoint Private Service Connect e creare un endpoint con quell'indirizzo. Per creare l'endpoint, devi disporre dell'URI del collegamento del servizio e dei progetti consentiti per l'istanza.

gcloud

  1. Per prenotare un indirizzo IP interno per l'endpoint Private Service Connect, utilizza il comando
    gcloud compute addresses create:

    gcloud compute addresses create ADDRESS_NAME \
    --project=PROJECT_ID \
    --region=REGION_NAME \
    --subnet=SUBNET_NAME \
    --addresses=INTERNAL_IP_ADDRESS

    Effettua le seguenti sostituzioni:

    • ADDRESS_NAME: il nome dell'indirizzo IP interno.
    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud per l'endpoint.
    • REGION_NAME: il nome della regione per l'endpoint.
    • SUBNET_NAME: il nome della subnet per l'indirizzo IP.
    • INTERNAL_IP_ADDRESS: l'indirizzo IP da prenotare. Questo indirizzo IP deve rientrare nell'intervallo IP principale della subnet. L'indirizzo IP può essere un indirizzo RFC 1918 o una subnet con intervalli non RFC.
  2. Per verificare che l'indirizzo IP sia riservato, utilizza il comando gcloud compute addresses list:

    gcloud compute addresses list ADDRESS_NAME \
    --project=PROJECT_ID

    Nella risposta, verifica che per l'indirizzo IP venga visualizzato lo stato RESERVED.

  3. Per creare l'endpoint Private Service Connect e indirizzarlo al collegamento al servizio Cloud SQL, utilizza il comando gcloud compute forwarding-rules create:

    gcloud compute forwarding-rules create ENDPOINT_NAME \
    --address=ADDRESS_NAME \
    --project=PROJECT_ID \
    --region=REGION_NAME \
    --network=NETWORK_NAME \
    --target-service-attachment=SERVICE_ATTACHMENT_URI \
    --allow-psc-global-access

    Effettua le seguenti sostituzioni:

    • ENDPOINT_NAME: il nome dell'endpoint
    • NETWORK_NAME: il nome della rete VPC per l'endpoint
    • SERVICE_ATTACHMENT_URI: l'URI del collegamento al servizio
  4. Per verificare che l'allegato del servizio accetti l'endpoint, utilizza il comando
    gcloud compute forwarding-rules describe:

    gcloud compute forwarding-rules describe ENDPOINT_NAME \
    --project=PROJECT_ID \
    --region=REGION_NAME

    Nella risposta, verifica che venga visualizzato lo stato ACCEPTED per il campo pscConnectionStatus. L'endpoint può connettersi al collegamento al servizio.

Terraform

Per creare un endpoint Private Service Connect, utilizza la risorsa Terraform google_sql_database_instance.

resource "google_compute_address" "default" {
  name         = "psc-compute-address"
  region       = "us-central1"
  address_type = "INTERNAL"
  subnetwork   = "default"     # Replace value with the name of the subnet here.
  address      = "10.128.0.42" # Replace value with the IP address to reserve.
}

data "google_sql_database_instance" "default" {
  name = resource.google_sql_database_instance.default.name
}

resource "google_compute_forwarding_rule" "default" {
  name                    = "psc-forwarding-rule-${google_sql_database_instance.default.name}"
  region                  = "us-central1"
  network                 = "default"
  ip_address              = google_compute_address.default.self_link
  load_balancing_scheme   = ""
  target                  = data.google_sql_database_instance.default.psc_service_attachment_link
  allow_psc_global_access = true
}

Per applicare la configurazione di Terraform in un progetto Google Cloud , completa i passaggi nelle sezioni seguenti.

Prepara Cloud Shell

  1. Avvia Cloud Shell.
  2. Imposta il progetto Google Cloud predefinito in cui vuoi applicare le configurazioni Terraform.

    Devi eseguire questo comando una sola volta per progetto e puoi eseguirlo in qualsiasi directory.

    export GOOGLE_CLOUD_PROJECT=PROJECT_ID

    Le variabili di ambiente vengono sostituite se imposti valori espliciti nel file di configurazione Terraform.

Prepara la directory

Ogni file di configurazione di Terraform deve avere la propria directory (chiamata anche modulo radice).

  1. In Cloud Shell, crea una directory e un nuovo file al suo interno. Il nome file deve avere l'estensione .tf, ad esempio main.tf. In questo tutorial, il file viene denominato main.tf.
    mkdir DIRECTORY && cd DIRECTORY && touch main.tf
  2. Se stai seguendo un tutorial, puoi copiare il codice campione in ogni sezione o passaggio.

    Copia il codice campione nel file main.tf appena creato.

    (Facoltativo) Copia il codice da GitHub. Questa operazione è consigliata quando lo snippet Terraform fa parte di una soluzione end-to-end.

  3. Rivedi e modifica i parametri di esempio da applicare al tuo ambiente.
  4. Salva le modifiche.
  5. Inizializza Terraform. Devi effettuare questa operazione una sola volta per directory.
    terraform init

    (Facoltativo) Per utilizzare l'ultima versione del provider Google, includi l'opzione -upgrade:

    terraform init -upgrade

Applica le modifiche

  1. Rivedi la configurazione e verifica che le risorse che Terraform creerà o aggiornerà corrispondano alle tue aspettative:
    terraform plan

    Apporta le correzioni necessarie alla configurazione.

  2. Applica la configurazione di Terraform eseguendo il comando seguente e inserendo yes al prompt:
    terraform apply

    Attendi che Terraform visualizzi il messaggio "Apply complete!" (Applicazione completata).

  3. Apri il tuo Google Cloud progetto per visualizzare i risultati. Nella console Google Cloud , vai alle risorse nell'interfaccia utente per assicurarti che Terraform le abbia create o aggiornate.

REST

  1. Riserva un indirizzo IP interno per l'endpoint Private Service Connect.

  2. Verifica che l'indirizzo IP sia riservato.

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'endpoint Private Service Connect
    • REGION_NAME: il nome della regione
    • ADDRESS_NAME: il nome dell'indirizzo IP

    Metodo HTTP e URL:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/addresses/ADDRESS_NAME

    Per inviare la richiesta, espandi una di queste opzioni:

    Dovresti ricevere una risposta JSON simile alla seguente:

    {
      "kind": "compute#address",
      "id": "ADDRESS_ID",
      "creationTimestamp": "2024-05-09T11:20:50.114-07:00",
      "name": "ADDRESS_NAME",
      "description": "This is the name of the internal IP address.",
      "address": "IP_ADDRESS",
      "status": "RESERVED",
      "region": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/addresses/ADDRESS_NAME",
      "networkTier": "PREMIUM",
      "labelFingerprint": "LABEL_FINGERPRINT_ID",
      "addressType": "EXTERNAL"
    }
    

    Nella risposta, verifica che per l'indirizzo IP venga visualizzato lo stato RESERVED.

  3. Crea l'endpoint Private Service Connect e indirizzalo al collegamento al servizio Cloud SQL.

  4. Verifica che l'allegato del servizio accetti l'endpoint.

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'endpoint Private Service Connect
    • REGION_NAME: il nome della regione
    • ENDPOINT_NAME: il nome dell'endpoint

    Metodo HTTP e URL:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/forwardingRules/ENDPOINT_NAME

    Per inviare la richiesta, espandi una di queste opzioni:

    Dovresti ricevere una risposta JSON simile alla seguente:

    {
      "kind": "compute#forwardingRule",
      "id": "ENDPOINT_ID",
      "creationTimestamp": "2024-05-09T12:03:21.383-07:00",
      "name": "ENDPOINT_NAME",
      "region": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME",
      "IPAddress": "IP_ADDRESS",
      "target": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/serviceAttachments/SERVICE_ATTACHMENT_NAME",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/forwardingRules/ENDPOINT_NAME",
      "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/default",
      "serviceDirectoryRegistrations": [
        {
          "namespace": "goog-psc-default"
        }
      ],
      "networkTier": "PREMIUM",
      "labelFingerprint": "LABEL_FINGERPRINT_ID",
      "fingerprint": "FINGERPRINT_ID",
      "pscConnectionId": "CONNECTION_ID",
      "pscConnectionStatus": "ACCEPTED",
      "allowPscGlobalAccess": true
    }
    

    Nella risposta, verifica che venga visualizzato lo stato ACCEPTED per il campo pscConnectionStatus. L'endpoint può connettersi al collegamento al servizio.

Connettiti a un'istanza Cloud SQL

Puoi connetterti a un'istanza Cloud SQL con Private Service Connect abilitato utilizzando un indirizzo IP interno, un record DNS, il proxy di autenticazione Cloud SQL, i connettori dei linguaggi Cloud SQL o altre applicazioni Google Cloud .

Configura una zona gestita DNS e un record DNS

Cloud SQL non crea automaticamente record DNS. La risposta dell'API di ricerca delle istanze fornisce invece un nome DNS suggerito. Ti consigliamo di creare il record DNS in una zona DNS privata nella rete VPC corrispondente. In questo modo, puoi utilizzare il proxy di autenticazione Cloud SQL in modo coerente per connetterti da reti diverse.

gcloud

  1. Per visualizzare le informazioni di riepilogo su un'istanza Cloud SQL, incluso il nome DNS dell'istanza, utilizza il comando gcloud sql instances describe:

    gcloud sql instances describe INSTANCE_NAME \
    --project=PROJECT_ID

    Effettua le seguenti sostituzioni:

    • INSTANCE_NAME: il nome dell'istanza Cloud SQL
    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'istanza

    Nella risposta, verifica che venga visualizzato il nome DNS. Questo nome ha il seguente pattern: INSTANCE_UID.PROJECT_DNS_LABEL.REGION_NAME.sql.goog.. Ad esempio: 1a23b4cd5e67.1a2b345c6d27.us-central1.sql.goog..

    Se vuoi utilizzare un nome DNS personalizzato per connetterti a un'istanza Cloud SQL anziché utilizzare il nome DNS predefinito in questa sezione, configura l'impostazione del nome alternativo del soggetto (SAN) personalizzato durante la creazione dell'istanza. Il nome DNS personalizzato che inserisci nell'impostazione SAN personalizzata viene aggiunto al campo SAN del certificato server dell'istanza. In questo modo puoi utilizzare il nome DNS personalizzato con la convalida del nome host in modo sicuro.

    Per ulteriori informazioni sulla configurazione dell'impostazione SAN personalizzata, consulta Creare istanze.

  2. Per creare una zona DNS privata, utilizza il comando gcloud dns managed-zones create. Questa zona è associata alla rete VPC utilizzata per connettersi all'istanza Cloud SQL tramite l'endpoint Private Service Connect.

    gcloud dns managed-zones create ZONE_NAME \
    --project=PROJECT_ID \
    --description="DESCRIPTION" \
    --dns-name=DNS_NAME \
    --networks=NETWORK_NAME \
    --visibility=private

    Effettua le seguenti sostituzioni:

    • ZONE_NAME: il nome della zona DNS
    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene la zona
    • DESCRIPTION: una descrizione della zona (ad esempio, una zona DNS per l'istanza Cloud SQL)
    • DNS_NAME: il nome del suffisso DNS per la zona, ad esempio REGION_NAME.sql.goog. (dove REGION_NAME è il nome della regione per la zona)
    • NETWORK_NAME: il nome della rete VPC
  3. Dopo aver creato l'endpoint Private Service Connect, per creare un record DNS nella zona, utilizza il comando gcloud dns record-sets create:

    gcloud dns record-sets create DNS_RECORD \
    --project=PROJECT_ID \
    --type=RRSET_TYPE \
    --rrdatas=RR_DATA \
    --zone=ZONE_NAME

    Effettua le seguenti sostituzioni:

    • DNS_RECORD: il nome del record DNS. Questo record è impostato sul nome DNS che hai recuperato dall'istanza Cloud SQL in precedenza in questa procedura (ad esempio, 1a23b4cd5e67.1a2b345c6d27.us-central1.sql.goog.).
    • RRSET_TYPE: il tipo di record di risorse del set di record DNS (ad esempio, A).
    • RR_DATA: l'indirizzo IP allocato per l'endpoint Private Service Connect (ad esempio, 198.51.100.5). Puoi anche inserire più valori, ad esempio rrdata1 rrdata2 rrdata3 (ad esempio, 10.1.2.3 10.2.3.4 10.3.4.5).

REST

  1. Recupera il nome DNS di un'istanza Cloud SQL.
  2. Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'istanza
    • INSTANCE_NAME: il nome dell'istanza

    Metodo HTTP e URL:

    GET https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

    Per inviare la richiesta, espandi una di queste opzioni:

    Dovresti ricevere una risposta JSON simile alla seguente:

    {
      ...
      "dnsName": "INSTANCE_ID.PROJECT_DNS_LABEL.REGION_NAME.sql.goog."
    }
    

    Il campo dnsName mostra il nome DNS dell'istanza Cloud SQL. I nomi DNS terminano sempre con un punto (.).

  3. Crea una zona DNS privata. Questa zona è associata alla rete VPC utilizzata per connettersi all'istanza Cloud SQL tramite l'endpoint Private Service Connect.
  4. Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene la zona DNS
    • ZONE_NAME: il nome della zona
    • DESCRIPTION: una descrizione della zona (ad esempio, una zona DNS per l'istanza Cloud SQL)
    • DNS_NAME: il nome del suffisso DNS per la zona, ad esempio REGION_NAME.sql.goog. (dove REGION_NAME è il nome della regione per la zona)
    • NETWORK_NAME: il nome della rete VPC

    Metodo HTTP e URL:

    POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones

    Corpo JSON della richiesta:

    {
      "name": "ZONE_NAME",
      "description": "DESCRIPTION",
      "dnsName": "DNS_NAME",
      "visibility": "private",
      "privateVisibilityConfig": {
        "kind": "dns#managedZonePrivateVisibilityConfig",
        "networks": [
          {
            "kind": "dns#managedZonePrivateVisibilityConfigNetwork",
            "networkUrl": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK_NAME"
          }
        ]
      }
    }
    

    Per inviare la richiesta, espandi una di queste opzioni:

    Dovresti ricevere una risposta JSON simile alla seguente:

    {
      "name": "ZONE_NAME",
      "dnsName": "DNS_NAME",
      "description": "DESCRIPTION",
      "id": "ID",
      "nameServers": [
        "ns-gcp-private.googledomains.com."
      ],
      "creationTime": "2024-05-10T17:05:34.607Z",
      "visibility": "private",
      "privateVisibilityConfig": {
        "networks": [
          {
            "networkUrl": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK_NAME",
            "kind": "dns#managedZonePrivateVisibilityConfigNetwork"
          }
        ],
        "gkeClusters": [],
        "kind": "dns#managedZonePrivateVisibilityConfig"
      },
      "cloudLoggingConfig": {
        "kind": "dns#managedZoneCloudLoggingConfig"
      },
      "kind": "dns#managedZone"
    }
    
  5. Dopo aver creato l'endpoint Private Service Connect, crea un record DNS nella zona.
  6. Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene la zona DNS.
    • ZONE_NAME: il nome della zona.
    • DNS_RECORD: il nome del record DNS. Questo record è impostato sul nome DNS che hai recuperato dall'istanza Cloud SQL in precedenza in questa procedura (ad esempio, 1a23b4cd5e67.1a2b345c6d27.us-central1.sql.goog.).
    • RRSET_TYPE: il tipo di record set (ad esempio, A).
    • TTL: il durata (TTL) per il record impostato in secondi (ad esempio, 300).
    • RR_DATA: l'indirizzo IP allocato per l'endpoint Private Service Connect (ad esempio, 198.51.100.5). Puoi anche inserire più valori, ad esempio rrdata1 rrdata2 rrdata3 (ad esempio, 10.1.2.3 10.2.3.4 10.3.4.5).

    Metodo HTTP e URL:

    POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/ZONE_NAME

    Corpo JSON della richiesta:

    {
      "deletions": []
      "additions": [
        {
          "name": "DNS_RECORD",
          "type": "RRSET_TYPE",
          "ttl": TTL,
          "rrdatas": [
            "RR_DATA"
          ]
        }
      ]
    }
    

    Per inviare la richiesta, espandi una di queste opzioni:

    Dovresti ricevere una risposta JSON simile alla seguente:

    {
      "additions": [
        {
          "name": "DNS_RECORD",
          "type": "RRSET_TYPE",
          "ttl": TTL,
          "rrdatas": [
            "RR_DATA"
          ],
          "signatureRrdatas": [],
          "kind": "dns#resourceRecordSet"
        }
      ],
      "deletions": [],
      "startTime": "2024-05-10T17:29:44.375Z",
      "id": "CHANGE_ID",
      "status": "pending",
      "kind": "dns#change"
    }
    

Connessione diretta tramite un record DNS

Prima di connetterti a un'istanza Cloud SQL utilizzando un record DNS, procedi nel seguente modo:

  1. Crea un endpoint Private Service Connect.
  2. Verifica che l'allegato di servizio dell'istanza accetti l'endpoint. Per verificare che lo stato dell'endpoint sia ACCEPTED, controlla lo stato.
  3. Configura una zona gestita DNS e un record DNS.

Una volta soddisfatte queste condizioni, utilizza il record DNS per connetterti all'istanza da qualsiasi rete VPC in cui hai creato l'endpoint.

psql "sslmode=disable dbname=DATABASE_NAME user=USERNAME host=DNS_RECORD"

Effettua le seguenti sostituzioni:

  • DATABASE_NAME: il nome del database Cloud SQL per PostgreSQL contenuto nell'istanza
  • USERNAME: il nome dell'utente che si connette all'istanza
  • DNS_RECORD: il record DNS dell'endpoint

Connettiti direttamente tramite un indirizzo IP interno

Prima di connetterti a un'istanza Cloud SQL con Private Service Connect abilitato, procedi nel seguente modo:

  1. Crea un endpoint Private Service Connect.
  2. Verifica che l'allegato di servizio dell'istanza accetti l'endpoint. Per verificare che lo stato dell'endpoint sia ACCEPTED, controlla lo stato.

Una volta soddisfatte queste condizioni, utilizza l'indirizzo IP dell'endpoint per accedere all'istanza da qualsiasi rete VPC in cui hai creato l'endpoint.

  1. Recupera l'indirizzo IP interno dell'endpoint Private Service Connect utilizzando il nome dell'indirizzo IP dell'endpoint.

    gcloud

    Per recuperare l'indirizzo IP, utilizza il comando gcloud compute addresses describe:

    gcloud compute addresses describe ADDRESS_NAME \
    --project=PROJECT_ID \
    --region=REGION_NAME

    Effettua le seguenti sostituzioni:

    • ADDRESS_NAME: il nome dell'indirizzo IP dell'endpoint
    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'endpoint
    • REGION_NAME: il nome della regione per l'endpoint

    Nella risposta, verifica che venga visualizzato un indirizzo IP per il campo address. Questo è l'indirizzo IP interno.

    REST

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'endpoint
    • REGION_NAME: il nome della regione per l'endpoint
    • ADDRESS_NAME: il nome dell'indirizzo IP dell'endpoint

    Metodo HTTP e URL:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/addresses/ADDRESS_NAME

    Per inviare la richiesta, espandi una di queste opzioni:

    Dovresti ricevere una risposta JSON simile alla seguente:

    {
      "kind": "compute#address",
      "id": "ADDRESS_ID",
      "creationTimestamp": "2024-05-09T11:20:50.114-07:00",
      "name": "ADDRESS_NAME",
      "description": "This is the name of the internal IP address.",
      "address": "IP_ADDRESS",
      "status": "RESERVED",
      "region": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/addresses/ADDRESS_NAME",
      "networkTier": "PREMIUM",
      "labelFingerprint": "LABEL_FINGERPRINT_ID",
      "addressType": "EXTERNAL"
    }
    

    L'indirizzo IP interno è il valore associato al campo address.

  2. In alternativa, recupera l'indirizzo IP interno dell'endpoint Private Service Connect utilizzando il collegamento al servizio dell'istanza Cloud SQL.

    gcloud

    Per recuperare l'indirizzo IP, utilizza il comando gcloud compute forwarding-rules list:

    gcloud compute forwarding-rules list \
    --filter="TARGET:REGION_NAME/serviceAttachments/SERVICE_ATTACHMENT_NAME" \
    --project=PROJECT_ID

    Effettua le seguenti sostituzioni:

    • REGION_NAME: il nome della regione per l'endpoint
    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'endpoint
    • SERVICE_ATTACHMENT_NAME: il nome del collegamento del servizio per l'istanza Cloud SQL

    Nella risposta, verifica che venga visualizzato un indirizzo IP. Questo è l'indirizzo IP interno.

    Di seguito è riportato un esempio di risposta:

    NAME REGION IP_ADDRESS TARGET
    myInstance us-central1 10.10.10.10 us-central1/serviceAttachments/a-123456789e0a-psc-service-attachment-abc123d4e5f67gh8

    REST

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'endpoint
    • REGION_NAME: il nome della regione per l'endpoint
    • SERVICE_ATTACHMENT_PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'allegato del servizio
    • SERVICE_ATTACHMENT_NAME: il nome del collegamento del servizio per l'istanza Cloud SQL

    Metodo HTTP e URL:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/forwardingRules?target="https://www.googleapis.com/compute/v1/projects/SERVICE_ATTACHMENT_PROJECT_ID/regions/REGION_NAME/serviceAttachments/SERVICE_ATTACHMENT_NAME"

    Per inviare la richiesta, espandi una di queste opzioni:

    Dovresti ricevere una risposta JSON simile alla seguente:

    {
      "kind": "compute#forwardingRuleList",
      "id": "projects/PROJECT_ID/regions/REGION_NAME/forwardingRules",
      "items": [
        {
          "kind": "compute#forwardingRule",
          "id": "FORWARDING_RULE_ID",
          "creationTimestamp": "2023-10-31T13:04:37.168-07:00",
          "name": "FORWARDING_RULE_NAME",
          "region": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME",
          "IPAddress": "IP_ADDRESS",
          "target": "https://www.googleapis.com/compute/v1/projects/SERVICE_ATTACHMENT_PROJECT_ID/regions/REGION_NAME/serviceAttachments/SERVICE_ATTACHMENT_NAME",
          "selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/forwardingRules/FORWARDING_RULE_NAME",
          "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/VPC_NETWORK_NAME",
          "serviceDirectoryRegistrations": [
            {
              "namespace": "goog-psc-default"
            }
          ],
          "networkTier": "PREMIUM",
          "labelFingerprint": "LABEL_FINGERPRINT_ID",
          "fingerprint": "FINGERPRINT_ID",
          "pscConnectionId": "PSC_CONNECTION_ID",
          "pscConnectionStatus": "CLOSED",
          "allowPscGlobalAccess": true
        }
      ],
      "selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/forwardingRules"
    }
    

    L'indirizzo IP interno è il valore associato al campo IPAddress.

  3. Per connetterti all'istanza Cloud SQL, utilizza l'indirizzo IP interno.

    psql "sslmode=disable dbname=DATABASE_NAME user=USERNAME hostaddr=IP_ADDRESS"

    Effettua le seguenti sostituzioni:

    • DATABASE_NAME: il nome del database Cloud SQL per PostgreSQL contenuto nell'istanza
    • USERNAME: il nome dell'utente che si connette all'istanza
    • IP_ADDRESS: l'indirizzo IP dell'endpoint

Connessione tramite il proxy di autenticazione Cloud SQL

Il proxy di autenticazione Cloud SQL è un connettore che fornisce accesso sicuro a un'istanza con Private Service Connect abilitato senza la necessità di reti autorizzate o di configurare SSL.

Per consentire le connessioni client del proxy di autenticazione Cloud SQL, configura un record DNS che corrisponda al nome DNS consigliato fornito per l'istanza. Il record DNS è una mappatura tra una risorsa DNS e un nome di dominio.

Se ti connetti tramite Private Service Connect, è richiesta la versione v2.5.0 o successive del proxy di autenticazione Cloud SQL.

Scarica e installa il proxy di autenticazione Cloud SQL

Per connetterti alle istanze con Private Service Connect abilitato, devi scaricare e installare il file binario per il proxy di autenticazione Cloud SQL. Il file binario che scarichi dipende dal sistema operativo e dal fatto che utilizzi un kernel a 32 o 64 bit. La maggior parte dell'hardware più recente utilizza un kernel a 64 bit.

Se non sai se la tua macchina esegue un kernel a 32 bit o a 64 bit, utilizza il comando uname -a per Linux o macOS. Per Windows, consulta la documentazione di Windows.

Avvia il proxy di autenticazione Cloud SQL

Il proxy di autenticazione Cloud SQL supporta le connessioni alle istanze con Private Service Connect abilitato. Per saperne di più, vedi Avviare il proxy di autenticazione Cloud SQL.

  1. Visualizza le informazioni di riepilogo su un'istanza Cloud SQL, incluso il nome della connessione dell'istanza.

    gcloud

    Per visualizzare le informazioni di riepilogo su un'istanza Cloud SQL, utilizza il comando
    gcloud sql instances describe.

    gcloud sql instances describe INSTANCE_NAME \
    --project=PROJECT_ID \
    --format='value(connectionName)'

    Effettua le seguenti sostituzioni:

    • INSTANCE_NAME: il nome dell'istanza Cloud SQL
    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'istanza

    Il nome della connessione è nel formato PROJECT_ID:REGION_NAME:INSTANCE_NAME.

    REST

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'istanza
    • INSTANCE_NAME: il nome dell'istanza

    Metodo HTTP e URL:

    GET https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_NAME

    Per inviare la richiesta, espandi una di queste opzioni:

    Dovresti ricevere una risposta JSON simile alla seguente:

    {
      ...
      "connectionName": "PROJECT_ID:REGION_NAME:INSTANCE_NAME"
    }
    

    Il nome della connessione è nel formato PROJECT_ID:REGION_NAME:INSTANCE_NAME.

  2. Copia il nome di connessione istanza.
  3. Avvia il proxy di autenticazione Cloud SQL:

    ./cloud-sql-proxy INSTANCE_CONNECTION_NAME --psc 

    Sostituisci INSTANCE_CONNECTION_NAME con il nome connessione dell'istanza che hai copiato nel passaggio precedente.

Connessione tramite i connettori di linguaggio Cloud SQL

I connettori dei linguaggi di Cloud SQL sono librerie che forniscono accesso sicuro a un'istanza Cloud SQL con Private Service Connect abilitato senza la necessità di reti autorizzate o di configurare SSL.

Per consentire le connessioni con i connettori di linguaggio Cloud SQL, configura un record DNS che corrisponda al nome DNS consigliato fornito per l'istanza. Il record DNS è una mappatura tra una risorsa DNS e un nome di dominio.

I connettori di linguaggio Cloud SQL supportano le connessioni Private Service Connect tramite il tipo di IP PSC all'interno delle rispettive librerie.

Connessione da App Engine Standard, Cloud Run o Cloud Run Functions

Per connetterti alle istanze Cloud SQL con Private Service Connect abilitato, puoi utilizzare App Engine Standard o Cloud Run.

In questi ambienti serverless supportati, sono supportati sia i connettori dei linguaggi Cloud SQL sia le connessioni TCP dirette utilizzando un indirizzo IP e un numero di porta. Per le connessioni TCP dirette, questo è l'indirizzo IP che riservi quando crei l'endpoint Private Service Connect. Puoi specificare l'indirizzo IP come indirizzo dell'host del database.

Se crei un record DNS per l'endpoint, puoi specificare questo record per l'host.

Connettersi da BigQuery

Per accedere ai dati in Cloud SQL ed eseguire query su questi dati tramite una connessione IP interna, utilizza il parametro
--enable-google-private-path . Questo parametro è valido solo se:

  • Utilizzi il parametro --no-assign-ip.
  • Utilizza il parametro --network per specificare il nome della rete VPC che vuoi utilizzare per creare una connessione interna.

Testa la connettività

Per testare la connettività in entrata a un'istanza Cloud SQL con Private Service Connect abilitato, imposta l'indirizzo IP dell'endpoint Private Service Connect come indirizzo IP di destinazione.

gcloud

Per creare un test di connettività per un'istanza Cloud SQL con Private Service Connect abilitato, utilizza il comando gcloud network-management connectivity-tests create:

gcloud network-management connectivity-tests create CONNECTIVITY_TEST_NAME \
--source-instance=SOURCE_INSTANCE \
--destination-cloud-sql-instance=DESTINATION_CLOUD_SQL_INSTANCE \
--destination-network=DESTINATION_NETWORK \
--destination-port=DESTINATION_PORT \
--protocol=tcp

Effettua le seguenti sostituzioni:

  • CONNECTIVITY_TEST_NAME: il nome del test di connettività.
  • SOURCE_INSTANCE: l'URI dell'istanza di Compute Engine in cui si trova l'indirizzo IP di origine (ad esempio, projects/myproject/zones/myzone/instances/myinstance).
  • DESTINATION_CLOUD_SQL_INSTANCE: l'URL dell'istanza Cloud SQL (ad esempio, projects/myproject/instances/myinstance).
  • DESTINATION_NETWORK: l'URI della rete VPC in cui si trova l'indirizzo IP di destinazione (ad esempio, projects/myproject/global/networks/mynetwork).
  • DESTINATION_PORT: il numero di porta riservato all'istanza. Per le istanze Cloud SQL per PostgreSQL, il numero di porta è 5432.

REST

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'istanza.
  • CONNECTIVITY_TEST_NAME: il nome del test di connettività.
  • SOURCE_IP_ADDRESS: l'indirizzo IP dell'istanza Compute Engine di origine.
  • SOURCE_INSTANCE: l'URI dell'istanza di Compute Engine in cui si trova l'indirizzo IP di origine (ad esempio, projects/myproject/zones/myzone/instances/myinstance).
  • SOURCE_NETWORK: l'URI della rete VPC in cui si trova l'indirizzo IP di origine (ad esempio, projects/myproject/global/networks/mynetwork).
  • DESTINATION_IP_ADDRESS: l'indirizzo IP dell'istanza Cloud SQL di destinazione.
  • DESTINATION_PORT: il numero di porta riservato all'istanza. Per le istanze Cloud SQL per PostgreSQL, il numero di porta è 5432.
  • DESTINATION_NETWORK: l'URI della rete VPC in cui si trova l'indirizzo IP di destinazione (ad esempio, projects/myproject/global/networks/mynetwork).

Metodo HTTP e URL:

POST https://networkmanagement.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/connectivityTests?testId=CONNECTIVITY_TEST_NAME

Corpo JSON della richiesta:

{
  "source": {
    "ipAddress": "SOURCE_IP_ADDRESS",
    "instance": "SOURCE_INSTANCE",
    "network": "SOURCE_NETWORK"
  },
  "destination": {
    "ipAddress": "DESTINATION_IP_ADDRESS",
    "port": DESTINATION_PORT,
    "network": "DESTINATION_NETWORK",
    "projectId": "PROJECT_ID"
  },
  "protocol": "TCP"
}

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "name": "projects/PROJECT_ID/locations/global/operations/operation-OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.networkmanagement.v1.OperationMetadata",
    "createTime": "2024-05-23T16:43:49.313981473Z",
    "target": "projects/PROJECT_ID/locations/global/connectivityTests/CONNECTIVITY_TEST_NAME",
    "verb": "create",
    "cancelRequested": false,
    "apiVersion": "v1"
  },
  "done": false
}

Limitazioni

  • Puoi configurare fino a 20 endpoint Private Service Connect che si connettono al collegamento al servizio di un'istanza Cloud SQL con Private Service Connect abilitato.
  • Puoi avere fino a 64.512 connessioni simultanee con Private Service Connect a un'istanza Cloud SQL.
  • I seguenti flag non sono validi o sono interessati:
    • --no-assign-ip: utilizza questo flag perché le istanze con Private Service Connect abilitato non sono supportate per l'utilizzo di altri tipi di connettività, come le connessioni IP esterne
    • --authorized-networks: non puoi utilizzare questo flag per aggiungere reti autorizzate
    • --network: non puoi utilizzare questo flag perché è associato all'accesso ai servizi privati
    • --allocated-ip-range-name: non puoi utilizzare questo flag perché i nomi degli intervalli IP consentiti non sono supportati
  • Non puoi creare una replica esterna di un'istanza con Private Service Connect abilitato.
  • Non puoi configurare un'istanza con Private Service Connect abilitato per utilizzare l'accesso privato ai servizi o le connessioni IP esterne.
    • Non puoi abilitare le connessioni IP esterni su un'istanza con Private Service Connect abilitato.
    • Non puoi attivare l'accesso ai servizi privati o aggiungere reti autorizzate all'istanza.
    • Non puoi modificare il tipo di connettività dell'istanza.
  • Non puoi utilizzare il comando gcloud sql connect, Cloud Shell, Cloud Build o Datastream per connetterti alle istanze Cloud SQL con Private Service Connect abilitato.
  • Se esegui migrazioni omogenee a Cloud SQL, non puoi utilizzare Database Migration Service per connetterti alle istanze Cloud SQL con Private Service Connect abilitato.
  • Quando testi la connettività a un'istanza Cloud SQL con Private Service Connect abilitato, non puoi impostare i seguenti elementi:
    • L'indirizzo IP interno o il nome DNS dell'istanza come destinazione direttamente
    • L'istanza come origine
    • L'indirizzo IP dell'endpoint Private Service Connect come origine
  • L'inserimento nella lista consentita basato sull'IP tramite le reti autorizzate non è supportato.
  • Le estensioni pglogical, pl/proxy, dblink e postgres_fdw non sono supportate.
  • Il controllo, la registrazione e le metriche basati sull'IP client non sono supportati per Query Insights e System Insights. Tuttavia, VPN e Interconnect sono supportati.
  • Se il tuo progetto di rete contiene istanze che utilizzano la vecchia architettura di rete Cloud SQL, non puoi creare un'istanza Private Service Connect. Cloud SQL fornisce strumenti per aiutarti a eseguire l'upgrade delle istanze dalla vecchia architettura di rete alla nuova architettura di rete. Per ulteriori informazioni o per controllare l'architettura di rete delle istanze Cloud SQL nel tuo progetto ed eseguire gli upgrade necessari, consulta Eseguire l'upgrade di un'istanza alla nuova architettura di rete.

Risoluzione dei problemi

Questa sezione contiene informazioni sui problemi associati alle istanze Cloud SQL con Private Service Connect abilitato, nonché i passaggi per la risoluzione dei problemi.

Problema Risoluzione dei problemi
Il collegamento del servizio dell'istanza non accetta l'endpoint Private Service Connect.
  1. Controlla lo stato dell'endpoint.

    gcloud

    Per controllare lo stato, utilizza il comando
    gcloud compute forwarding-rules describe.

    gcloud compute forwarding-rules describe ENDPOINT_NAME \
    --project=PROJECT_ID \
    --region=REGION_NAME \
    | grep pscConnectionStatus

    Effettua le seguenti sostituzioni:

    • ENDPOINT_NAME: il nome dell'endpoint
    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'endpoint
    • REGION_NAME: il nome della regione per l'endpoint

    REST

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID o il numero di progetto del progetto Google Cloud che contiene l'endpoint Private Service Connect
    • REGION_NAME: il nome della regione
    • ENDPOINT_NAME: il nome dell'endpoint

    Metodo HTTP e URL:

    GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/forwardingRules/ENDPOINT_NAME

    Per inviare la richiesta, espandi una di queste opzioni:

    Dovresti ricevere una risposta JSON simile alla seguente:

    {
      "kind": "compute#forwardingRule",
      "id": "ENDPOINT_ID",
      "creationTimestamp": "2024-05-09T12:03:21.383-07:00",
      "name": "ENDPOINT_NAME",
      "region": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME",
      "IPAddress": "IP_ADDRESS",
      "target": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/serviceAttachments/SERVICE_ATTACHMENT_NAME",
      "selfLink": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/forwardingRules/ENDPOINT_NAME",
      "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/default",
      "serviceDirectoryRegistrations": [
        {
          "namespace": "goog-psc-default"
        }
      ],
      "networkTier": "PREMIUM",
      "labelFingerprint": "LABEL_FINGERPRINT_ID",
      "fingerprint": "FINGERPRINT_ID",
      "pscConnectionId": "CONNECTION_ID",
      "pscConnectionStatus": "ACCEPTED",
      "allowPscGlobalAccess": true
    }
    
  2. Verifica che lo stato dell'endpoint sia ACCEPTED. Se lo stato è PENDING, l'istanza non consente il progetto Google Cloud che contiene l'endpoint. Assicurati che il progetto di rete in cui viene creato l'endpoint sia consentito. Per ulteriori informazioni, consulta Modificare un'istanza con Private Service Connect abilitato.

Passaggi successivi