Configurare i criteri di connessione al servizio
Questa pagina descrive in che modo un amministratore di rete può configurare i criteri di connessione al servizio per automatizzare la connettività privata a un servizio gestito.
Prima di iniziare
Assicurati che il servizio gestito di cui vuoi eseguire il deployment supporti e i criteri di connessione al servizio. La disponibilità dei servizi per il deployment mediante i criteri di connessione al servizio è disponibile in anteprima limitata. Per ulteriori informazioni sui servizi che supportano i criteri di connessione al servizio, consulta Servizi supportati.
Devi conoscere il nome della classe di servizio per l'istanza di servizio gestita per cui vuoi eseguire il deployment della connettività.
Scopri di più sugli endpoint di Private Service Connect.
È necessaria una rete Virtual Private Cloud (VPC) e una subnet.
Devi abilitare l'API Compute Engine nel tuo progetto.
Devi abilitare l'API Network Connectivity nel tuo progetto.
Devi abilitare l'API Service Consumer Management nel progetto consumer che Viene eseguito il deployment degli endpoint Private Service Connect. Questa API consente Google Cloud crea l'account di servizio Network Connectivity che esegue il deployment Endpoint Private Service Connect.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per configurare una rete e creare un criterio di connessione ai servizi,
chiedi all'amministratore di concederti il ruolo IAM Amministratore rete Compute (roles/compute.networkAdmin
) nel progetto.
Per utilizzare i criteri di connessione dei servizi con VPC condiviso, ai service account di connettività di rete devono essere concessi i ruoli nei progetti di servizio e host. Questi account di servizio vengono configurati automaticamente quando viene creato un criterio di connessione al servizio, i ruoli possono essere rimossi manualmente. Se vengono visualizzati errori relativi a autorizzazioni mancanti, un amministratore dell'account di servizio potrebbe dover concedere di nuovo i ruoli. Per ulteriori informazioni, consulta Configurare gli account di servizio per il VPC condiviso.
Crea una policy di connessione al servizio
Un criterio di connessione al servizio ti consente di autorizzare per creare una connessione Private Service Connect tra reti VPC per producer e consumer.
Puoi creare un massimo di un criterio per ogni classe di servizio, regione e Combinazione di reti VPC. Un criterio determina la connettività del servizio automatica per quella specifica combinazione. Quando configuri un criterio, seleziona una subnet. La subnet viene utilizzata per allocare indirizzi IP per gli endpoint che vengono creati tramite il criterio. Puoi riutilizzare la stessa subnet in più criteri di connessione se condividono la stessa regione.
Ad esempio, se vuoi utilizzare l'automazione della connettività dei servizi con due servizi in tre regioni diverse, crea sei criteri. Puoi utilizzare un minimo di tre subnet, una per ogni regione.
Dopo aver creato un criterio di connessione al servizio, puoi aggiornare solo il relativo di subnet e limiti di connessioni. Se devi aggiornare altri campi, elimina il criterio e creane uno nuovo.
Console
Nella console Google Cloud, vai alla pagina Private Service Connect.
Fai clic sulla scheda Norme di collegamento.
Fai clic su Crea criterio di connessione.
Inserisci un nome per il criterio di connessione.
Specifica la classe di servizio.
- Per i servizi Google, svolgi i seguenti passaggi:
- In Classe del servizio di origine, seleziona Servizi Google.
- Seleziona la classe di servizio dal menu Classe di servizio.
- Per i servizi di terze parti:
- In Classe di servizio di origine, seleziona Servizi di terze parti.
- In Classe di servizio, inserisci il nome della classe di servizio.
- Per i servizi Google, svolgi i seguenti passaggi:
Nella sezione Ambito endpoint di destinazione, seleziona un'opzione Rete e Regione a cui si applicano queste norme.
Nella sezione Criterio, seleziona una o più subnet dal Menu Subnet. Le subnet vengono utilizzate per allocare indirizzi IP per gli endpoint.
(Facoltativo) Specifica un limite di connessioni per il criterio. Il limite determina quanti endpoint possono essere creati utilizzando questa connessione . Se omesso, non è previsto alcun limite.
Fai clic su Crea criterio.
gcloud
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
Sostituisci quanto segue:
POLICY_NAME
: il nome del criterio di connessione del servizio.NETWORK
: la rete a cui applicare questo criterio.PROJECT_ID
: l'ID o il numero del progetto della rete VPC. Per le reti VPC condivise, i criteri di connessione dei servizi devono essere implementati nel progetto host e non sono supportati nei progetti di servizio.REGION
: la regione a cui applicare questo criterio. Deve essere presente lo stesso criterio per ogni regione in cui vuoi automatizzare la connettività dei servizi.SERVICE_CLASS
: l'identificatore della risorsa fornito dal produttore della classe di servizio.SUBNETS
: una o più subnet consumer regolari utilizzate per allocare indirizzi IP per gli endpoint di Private Service Connect. Questi Gli indirizzi IP vengono allocati e restituiti automaticamente al pool della subnet quando vengono create ed eliminate le istanze di servizio gestito. Le reti private virtuali devono trovarsi nella stessa regione del criterio di connessione del servizio. Puoi riutilizzano la stessa subnet in più criteri di connessione se i criteri condividono la stessa regione. Puoi inserire più sottoreti in un elenco separato da virgole.LIMIT
: il numero massimo di endpoint che possono essere creati utilizzando questo criterio. Se non è specificato, non c'è alcun limite.DESCRIPTION
: una descrizione facoltativa del criterio di connessione al servizio.
Ad esempio, il comando seguente crea un criterio di connessione al servizio
per la classe di servizio gcp-database-service
che alloca IP
dalla subnet managed-services
. È possibile creare un massimo di 10 endpoint Private Service Connect utilizzando
queste norme. Gli endpoint devono essere creati in progetti che si trovano negli stessi
dell'organizzazione come istanza di servizio gestito.
gcloud network-connectivity service-connection-policies create gcp-database-cxn-policy \ --network=default \ --project=my-project \ --region=us-central1 \ --service-class=gcp-database-service \ --subnets=managed-service-subnet \ --psc-connection-limit=10
Terraform
Puoi utilizzare lo Risorsa Terraform per creare un criterio di connessione al servizio.
Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.
API
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
PROJECT_ID
: l'ID del progetto.REGION
: la regione del criterio di connessione al servizio.POLICY_NAME
: il nome del criterio di connessione al servizio.DESCRIPTION
: una descrizione facoltativa del criterio di connessione al servizio.NETWORK
: la rete del criterio di connessione al servizio.LIMIT
: il numero massimo di endpoint che è possibile creare utilizzando questo criterio. Se non è specificato, non c'è alcun limite.SUBNET
: una o più subnet consumer regolari utilizzate per allocare indirizzi IP per gli endpoint Private Service Connect. Questi indirizzi IP vengono automaticamente allocati e restituiti al pool della subnet quando le istanze del servizio gestito vengono create ed eliminate. Le subnet devono trovarsi nella stessa regione del criterio di connessione del servizio. Puoi riutilizzare la stessa sottorete in più criteri di connessione se questi condividono la stessa regione. Puoi inserire più URL di subnet in un elenco separato da virgole.SERVICE_CLASS
: identificatore di risorsa fornito dal producer 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 delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/project-id/locations/us-central1/operations/operation-1692118768698-602f91a204523-8c6a2d93-d5c20a6a", "metadata": { "@type": "type.googleapis.com/google.cloud.networkconnectivity.v1.OperationMetadata", "createTime": "2023-08-15T16:59:29.236110917Z", "target": "projects/project-id/locations/us-central1/serviceConnectionPolicies/policy-name", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Elenca i criteri di connessione al servizio
Console
Nella console Google Cloud, vai alla pagina Private Service Connect.
Fai clic sulla scheda Norme di collegamento.
Vengono visualizzati i criteri di connessione.
gcloud
Utilizza il comando service-connection-policies list
.
gcloud network-connectivity service-connection-policies list \ --region=REGION
Sostituisci REGION
con la regione in cui vuoi elencare i criteri di collegamento dei servizi.
API
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
PROJECT_ID
: l'ID del progetto.REGION
: la regione in cui elencare i criteri di connessione al servizio.
Metodo HTTP e URL:
GET https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/serviceConnectionPolicies
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "serviceConnectionPolicies": [ { "name": "projects/project-id/locations/us-central1/serviceConnectionPolicies/policy-1", "createTime": "2023-08-15T15:33:54.712819865Z", "updateTime": "2023-08-15T15:33:54.945630882Z", "description": "descriptor", "network": "projects/project-id/global/networks/network-two", "serviceClass": "service-class", "infrastructure": "PSC", "pscConfig": { "subnetworks": [ "projects/project-id/regions/us-west1/subnetworks/us-west1-subnet" ], "limit": "12" }, "etag": "zCqDFBG1dS7B4gNdJKPR98YMUXpSrBIz0tZB_hwOIZI" }, { "name": "projects/project-id/locations/us-central1/serviceConnectionPolicies/policy-2", "createTime": "2023-08-15T16:59:29.230257109Z", "updateTime": "2023-08-15T16:59:29.508994923Z", "description": "descriptor", "network": "projects/project-id/global/networks/custom-test", "serviceClass": "service-class", "infrastructure": "PSC", "pscConfig": { "subnetworks": [ "projects/project-id/regions/us-central1/subnetworks/subnet-one" ], "limit": "25" }, "etag": "nB603i61nRGMZpNjWoWMM6wRzsgM8QN9C9v5QFLyOa8" } ] }
Descrivere un criterio di connessione al servizio
Console
Nella console Google Cloud, vai alla pagina Private Service Connect.
Fai clic sulla scheda Norme di collegamento.
Fai clic sul criterio di connessione al servizio che vuoi visualizzare.
gcloud
Usa il comando service-connection-policies describe
.
gcloud network-connectivity service-connection-policies describe POLICY_NAME \ --region=REGION
Sostituisci quanto segue:
POLICY_NAME
: il nome del criterio di connessione al servizio che vuoi descrivere.REGION
: la regione della connessione al servizio la norma che vuoi descrivere.
API
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
PROJECT_ID
: l'ID del progetto.REGION
: la regione del criterio di connessione al servizio.POLICY_NAME
: il nome del criterio di connessione al servizio da descrivere.
Metodo HTTP e URL:
GET https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/serviceConnectionPolicies/POLICY_NAME
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/project-id/locations/us-central1/serviceConnectionPolicies/policy-name", "createTime": "2023-08-15T16:59:29.230257109Z", "updateTime": "2023-08-15T16:59:29.508994923Z", "description": "description", "network": "projects/project-id/global/networks/custom-test", "serviceClass": "gcp-memorystore-redis", "infrastructure": "PSC", "pscConfig": { "subnetworks": [ "projects/project-id/regions/us-central1/subnetworks/subnet-one" ], "limit": "25" }, "etag": "nB603i61nRGMZpNjWoWMM6wRzsgM8QN9C9v5QFLyOa8" }
Aggiornare un criterio di connessione al servizio
Puoi aggiornare le subnet e il limite di connessioni per una connessione a un servizio .
Se rimuovi una sottorete dal criterio di connessione al servizio, si applica quanto segue:
- Gli endpoint di Private Service Connect esistenti non sono interessati.
- I nuovi endpoint non utilizzano la sottorete rimossa.
Se aggiorni il limite di connessione di un criterio di connessione al servizio, si applica quanto segue:
- Gli endpoint esistenti non sono interessati.
- Se il nuovo limite di connessioni è inferiore al numero esistente di endpoint associati al criterio, automazione della connettività dei servizi blocca la creazione di nuovi endpoint che utilizzano questo criterio.
- Se il nuovo limite di connessioni è superiore al numero esistente di endpoint associati al criterio, endpoint che in precedenza erano bloccati è possibile creare un limite di connessioni.
Se aggiorni un criterio di connessione al servizio e non specifichi un limite di connessioni, il criterio aggiornato non ha limiti di connessioni.
Console
Nella console Google Cloud, vai alla pagina Private Service Connect.
Fai clic sulla scheda Norme di collegamento.
Fai clic sul criterio di connessione al servizio che vuoi modificare.
Fai clic su Modifica.
Per aggiornare le sottoreti del criterio, segui questi passaggi:
- Fai clic su Subnet, quindi seleziona le subnet che ti interessano. da associare a questo criterio.
- Fai clic su OK.
Per aggiornare il limite di connessioni del criterio, inserisci un nuovo valore nel campo Limite di connessioni.
Fai clic su Aggiorna criteri.
gcloud
Utilizza il
comando service-connection-policies update
.
gcloud network-connectivity service-connection-policies update POLICY_NAME \ --region=REGION --project=PROJECT_ID --subnets=SUBNETS --psc-connection-limit=LIMIT
POLICY_NAME
: il nome del criterio di connessione del servizio.REGION
: la regione della connessione al servizio . Non puoi aggiornare la regione di un criterio.PROJECT_ID
: l'ID o il numero del progetto della norma.SUBNETS
: una o più subnet consumer regolari utilizzate per allocare indirizzi IP per gli endpoint di Private Service Connect. Questi indirizzi IP vengono allocati automaticamente e restituiti al pool della sottorete man mano che le istanze di servizio gestito vengono create ed eliminate. La le subnet devono trovarsi nella stessa regione del criterio di connessione al servizio. Puoi riutilizzare la stessa sottorete in più criteri di connessione se condividono la stessa regione. Puoi inserire più subnet separate da virgole dall'elenco di lettura.LIMIT
: il numero massimo di endpoint che possono possono essere create utilizzando questo criterio. Se non è specificato, non c'è alcun limite.
API
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
PROJECT_ID
: l'ID del progetto.REGION
: la regione del criterio di connessione al servizio. Non puoi aggiornare la regione di un criterio.POLICY_NAME
: il nome del criterio di connessione del servizio.LIMIT
: il numero massimo di endpoint che possono essere creati utilizzando questo criterio. Se non è specificato, non c'è alcun limite.SUBNET
: una o più subnet consumer regolari utilizzate per allocare indirizzi IP per gli endpoint Private Service Connect. Questi indirizzi IP vengono automaticamente allocati e restituiti al pool della subnet quando le istanze del servizio gestito vengono create ed eliminate. Le subnet devono trovarsi nella stessa regione del criterio di connessione al servizio. Puoi riutilizzare la stessa sottorete in più criteri di connessione se questi condividono la stessa regione. Puoi inserire più URL di subnet in un elenco separato da virgole.NETWORK
: la rete del criterio di connessione al servizio.
Metodo HTTP e URL:
PATCH https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/serviceConnectionPolicies/POLICY_NAME
Corpo JSON della richiesta:
{ "pscConfig": { "limit": "LIMIT", "subnetworks": [ "projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET" ] }, "network": "projects/PROJECT_ID/global/networks/NETWORK" }
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/project-id/locations/us-central1/operations/operation-1692118768698-602f91a204523-8c6a2d93-d5c20a6a", "metadata": { "@type": "type.googleapis.com/google.cloud.networkconnectivity.v1.OperationMetadata", "createTime": "2023-08-15T16:59:29.236110917Z", "target": "projects/project-id/locations/us-central1/serviceConnectionPolicies/policy-name", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Eliminare un criterio di connessione al servizio
Puoi eliminare un criterio di connessione al servizio se hai finito di utilizzare il o vuoi interrompere l'automazione della connettività. L'eliminazione del criterio è bloccata se al criterio sono associate connessioni Private Service Connect attive. Prima di eliminare un criterio di connessione al servizio, elimina tutte le connessioni attive ritirando tutte le istanze di servizio associate.
Console
Nella console Google Cloud, vai alla pagina Private Service Connect.
Fai clic sulla scheda Norme di collegamento.
Seleziona i criteri di connessione al servizio che vuoi eliminare. fai clic su Elimina.
gcloud
Utilizza la
Comando service-connection-policies delete
.
gcloud network-connectivity service-connection-policies delete POLICY_NAME \ --region=REGION
Sostituisci quanto segue:
POLICY_NAME
: il nome della connessione al servizio che vuoi eliminare.REGION
: la regione della connessione al servizio che vuoi eliminare.
API
Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:
PROJECT_ID
: l'ID del progetto.REGION
: la regione del criterio di connessione al servizio.POLICY_NAME
: il nome del criterio di connessione al servizio da eliminare.
Metodo HTTP e URL:
DELETE https://networkconnectivity.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/serviceConnectionPolicies/POLICY_NAME
Per inviare la richiesta, espandi una delle seguenti opzioni:
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "projects/project-id/locations/us-central1/operations/operation-1692128792549-602fb6f98194a-e0275435-36edc095", "metadata": { "@type": "type.googleapis.com/google.cloud.networkconnectivity.v1.OperationMetadata", "createTime": "2023-08-15T19:46:32.605032867Z", "target": "projects/project-id/locations/us-central1/serviceConnectionPolicies/policy-name", "verb": "delete", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Configura account di servizio per VPC condiviso
Gli account di servizio vengono configurati automaticamente quando utilizzi la connessione al servizio con VPC condiviso, ma i ruoli possono essere rimossi manualmente. Se vengono visualizzati errori relativi alle autorizzazioni mancanti, prova a concedere i ruoli di nuovo.
Per concedere i ruoli richiesti, un amministratore account di servizio può eseguire le seguenti operazioni.
Concedi ruoli all'account di servizio nel progetto di servizio
gcloud
Concedi il ruolo Network Connectivity Service Agent (
roles/networkconnectivity.serviceAgent
) all'account di servizio Network Connectivity del progetto di servizio. Concedi il ruolo al progetto di servizio.gcloud projects add-iam-policy-binding SERVICE_PROJECT_NUMBER \ --member=serviceAccount:service-SERVICE_PROJECT_NUMBER@gcp-sa-networkconnectivity.iam.gserviceaccount.com \ --role=roles/networkconnectivity.serviceAgent
Sostituisci
SERVICE_PROJECT_NUMBER
con il numero del progetto del servizio.Concedi il ruolo Utente di rete Compute (
roles/compute.networkUser
) all'account di servizio Network Connectivity del progetto di servizio. Esegui una delle seguenti operazioni.Concedi il ruolo nel progetto host.
gcloud projects add-iam-policy-binding HOST_PROJECT_NUMBER \ --member=serviceAccount:service-SERVICE_PROJECT_NUMBER@gcp-sa-networkconnectivity.iam.gserviceaccount.com \ --role=roles/compute.networkUser
Sostituisci
HOST_PROJECT_NUMBER
con il progetto del progetto host.Concedi il ruolo a ciascuna delle subnet nel progetto host associate al criterio di connessione del servizio. Utilizza quanto segue per ogni subnet.
gcloud compute networks subnets add-iam-policy-binding SUBNET \ --member=serviceAccount:service-SERVICE_PROJECT_NUMBER@gcp-sa-networkconnectivity.iam.gserviceaccount.com \ --role=roles/compute.networkUser \ --region=REGION \ --project=HOST_PROJECT_NUMBER
Sostituisci quanto segue:
SUBNET
: il nome della subnet associati al criterio di connessione al servizio.REGION
: la regione della subnet.
Concedi il ruolo all'account di servizio nel progetto host
gcloud
Concedi Ruolo Agente di servizio Network Connectivity (
roles/networkconnectivity.serviceAgent
) all'host l'account di servizio Network Connectivity del progetto. Concedi il ruolo nella progetto host.gcloud projects add-iam-policy-binding HOST_PROJECT_NUMBER \ --member=serviceAccount:service-HOST_PROJECT_NUMBER@gcp-sa-networkconnectivity.iam.gserviceaccount.com \ --role=roles/networkconnectivity.serviceAgent
Sostituisci
HOST_PROJECT_NUMBER
con il progetto del progetto host.