Questa pagina spiega come utilizzare gli endpoint API regionali (endpoint regionali) in
Google Cloud, disponibili per la regione me-central2 (Arabia Saudita).
Gli endpoint regionali forniscono funzionalità di residenza dei dati in transito mediante il routing e la gestione del traffico nella stessa Google Cloud regione del client. Quando un client chiama un servizio utilizzando un endpoint regionale, la sessione TLS del client termina nella regione indicata nel nome dell'endpoint. Di conseguenza, gli endpoint regionali devono essere utilizzati solo per i workload che non hanno dipendenze al di fuori di una singola regione o giurisdizione.
Puoi connetterti tramite internet agli endpoint regionali pubblici. Per il traffico in entrata di internet, questi endpoint utilizzano il routing best-effort per mantenere il traffico in transito locale alla regione (o alla giurisdizione) perché non utilizzano il Google Front End (GFE) globale. Vengono invece risolti in indirizzi IP annunciati solo nei punti di peering più vicini alla regione selezionata.
Ad esempio, un data engineer che lavora in Arabia Saudita può configurare il proprio client per utilizzare BigQuery nella regione me-central2 (Dammam) utilizzando l'endpoint di servizio regionale bigquery.me-central2.rep.googleapis.com.
Il traffico viene instradato utilizzando
il livello Standard e la sessione TLS
dal client verrà terminata in me-central2.
In questo scenario, il VIP pubblico corrispondente all'endpoint di servizio regionale avrà origine da un prefisso IP annunciato da Google sui punti di peering della regione. Pertanto, se l'utente è connesso a un ISP locale in Arabia Saudita, il traffico può essere instradato all'interno della sua giurisdizione.
Formato dell'endpoint regionale
Gli endpoint regionali utilizzano il seguente formato:
SERVICE_NAME.REGION.rep.googleapis.com
I valori segnaposto sono definiti come segue:
- SERVICE_NAME: il nome di un endpoint di servizio supportato, ad esempio
bigquery. - REGION: una regione Google Cloud supportata, ad esempio
me-central2.
L'esempio seguente è un endpoint regionale completo per BigQuery:
bigquery.me-central2.rep.googleapis.com
Servizi e regioni supportati
Gli endpoint regionali sono supportati nelle seguenti regioni:
| Nome regione | Località |
|---|---|
me-central2 |
Dammam, Regno dell'Arabia Saudita |
Gli endpoint regionali sono supportati dai seguenti servizi:
| Nome servizio | Endpoint a livello di regione |
|---|---|
| Artifact Registry |
artifactregistry.me-central2.rep.googleapis.com
|
| BigQuery |
bigquery.me-central2.rep.googleapis.com
|
| Bigtable |
bigtable.me-central2.rep.googleapis.com
|
| Cloud Key Management Service (Cloud KMS) |
cloudkms.me-central2.rep.googleapis.com
|
| Cloud Logging |
logging.me-central2.rep.googleapis.com
|
| Spanner |
spanner.me-central2.rep.googleapis.com
|
| Cloud Storage |
storage.me-central2.rep.googleapis.com
|
| Dataflow |
dataflow.me-central2.rep.googleapis.com
|
| Dataproc |
dataproc.me-central2.rep.googleapis.com
|
| Pub/Sub |
pubsub.me-central2.rep.googleapis.com
|
Configurazione di un client per accedere agli endpoint regionali da internet pubblico
Per utilizzare gli endpoint regionali da internet pubblico, devi prima configurare il client (ad esempio Google Cloud CLI o una libreria client Google Cloud SDK) per connetterti a un endpoint regionale specifico.
Configura gcloud CLI
Per impostazione predefinita, gcloud CLI utilizza endpoint di servizio globali, ad esempio
bigquery.googleapis.com. Per utilizzare un endpoint di servizio regionale, devi
configurare gcloud CLI in modo che li utilizzi completando i seguenti
passaggi.
Se un servizio supportato non è ancora stato abilitato, abilitalo utilizzando il seguente comando:
gcloud services enable SERVICE_NAME
Sostituisci SERVICE_NAME con il nome di un servizio supportato che vuoi utilizzare. Ad esempio:
gcloud services enable cloudkms
Per utilizzare un endpoint di servizio regionale, devi configurare gcloud CLI utilizzando il comando
gcloud config set api_endpoint_overrides:gcloud config set api_endpoint_overrides/SERVICE_NAME REGIONAL_API_URL
Sostituisci i seguenti valori con i tuoi:
- SERVICE_NAME: il nome del servizio supportato che vuoi utilizzare.
Ad esempio:
cloudkms REGIONAL_API_URL: l'URL dell'endpoint specifico. Ad esempio:
https://SERVICE_NAME.REGION_NAME.rep.googleapis.com/SERVICE_NAME/API_VERSION
Sostituisci i seguenti valori con i tuoi:
- REGION_NAME: il nome della regione Google Cloud richiesta. Ad
esempio:
me-central2 - API_VERSION: la versione API del servizio che vuoi utilizzare.
Ad esempio:
v1. Nota: alcuni servizi potrebbero non richiedere questo parametro.
Di seguito è riportato un valore di REGIONAL_API_URL di esempio:
https://cloudkms.me-central2.rep.googleapis.com/cloudkms/v1
- REGION_NAME: il nome della regione Google Cloud richiesta. Ad
esempio:
Messo insieme, il seguente è un esempio di comando
gcloud config set api_endpoint_overridesper Cloud KMS:gcloud config set api_endpoint_overrides/cloudkms https://cloudkms.me-central2.rep.googleapis.com/cloudkms/v1
- SERVICE_NAME: il nome del servizio supportato che vuoi utilizzare.
Ad esempio:
Ora che gcloud CLI è stata configurata per utilizzare un endpoint di servizio regionale, i comandi futuri lo utilizzeranno come predefinito anziché l'endpoint di servizio globale.
Configura le librerie client di Google Cloud SDK
Per impostazione predefinita, le librerie client di Google Cloud SDK utilizzano endpoint di servizio globali, ad esempio
pubsub.googleapis.com. Per utilizzare un endpoint di servizio regionale, devi configurare le librerie client di Google Cloud SDK in modo che le utilizzino.
Python
Imposta il parametro api_endpoint nella
classe ClientOptions
del pacchetto google-api-core:
from google.api_core.client_options import ClientOptions options = ClientOptions(api_endpoint = "pubsub.me-central2.rep.googleapis.com") client = pubsub_v1.PublisherClient(client_options=options) // Alternatively client = pubsub_v1.PublisherClient(client_options={"api_endpoint": "pubsub.me-central2.rep.googleapis.com")
Java
Utilizza il metodo newBuilder della
classe ImageAnnotatorSettings
nel pacchetto com.google.cloud.vision:
ImageAnnotatorSettings settings = ImageAnnotatorSettings.newBuilder() .setEndpoint("pubsub.me-central2.rep.googleapis.com") .build(); ImageAnnotatorClient client = ImageAnnotatorClient.create(settings);
Go
Utilizza la funzione WithEndpoint nel
pacchetto ClientOptions del
pacchetto api:
client, err := pubsub.NewClient(ctx, projID, option.WithEndpoint("pubsub.me-central2.rep.googleapis.com"), // Override endpoint
.NET
Imposta la proprietà Endpoint nella
ClientBuilder classe
del client nel pacchetto Google.Cloud della libreria che stai utilizzando:
string region = "me-central2"; var client = new DatasetServiceClientBuilder { Endpoint = $"pubsub.{region}.rep.googleapis.com" }.Build();
Limita l'utilizzo degli endpoint API globali
Per contribuire a imporre l'utilizzo di endpoint regionali, utilizza il vincolo delle policy dell'organizzazione constraints/gcp.restrictEndpointUsage per bloccare le richieste all'endpoint API globale. Per saperne di più, consulta Limitazione dell'utilizzo degli endpoint.