Accéder aux points de terminaison d'API régionaux

Cette page explique comment utiliser des points de terminaison de l'API régionaux (points de terminaison régionaux) dansGoogle Cloud, qui sont disponibles pour la région me-central2 (KSA).

Les points de terminaison régionaux fournissent des fonctionnalités de résidence des données en transit en acheminant et en diffusant le trafic dans la même régionGoogle Cloud que le client. Lorsqu'un client appelle un service à l'aide d'un point de terminaison régional, la session TLS du client se termine dans la région indiquée dans le nom du point de terminaison. Par conséquent, les points de terminaison régionaux ne doivent être utilisés que pour les charges de travail qui n'ont aucune dépendance en dehors d'une seule région ou juridiction.

Vous pouvez vous connecter à des points de terminaison régionaux publics via Internet. Pour le trafic d'entrée Internet, ces points de terminaison utilisent le routage au mieux pour que le trafic en transit reste local dans la région (ou la juridiction), car ils n'utilisent pas le Google Front End (GFE) mondial. Au lieu de cela, ils se résolvent en adresses IP qui ne sont annoncées que sur les points d'appairage les plus proches de la région sélectionnée.

Par exemple, un ingénieur de données travaillant en Arabie saoudite peut configurer son client pour qu'il utilise BigQuery dans la région me-central2 (Dammam) à l'aide du point de terminaison de service régional bigquery.me-central2.rep.googleapis.com. Le trafic est acheminé à l'aide du niveau Standard, et la session TLS de leur client sera interrompue dans me-central2.

Dans ce scénario, l'adresse IP virtuelle publique correspondant au point de terminaison de service régional provient d'un préfixe IP annoncé par Google sur les points d'appairage de la région. Ainsi, si l'utilisateur est connecté à un FAI local en Arabie saoudite, le trafic peut être acheminé au sein de sa juridiction.

Format des points de terminaison régionaux

Les points de terminaison régionaux utilisent le format suivant :

SERVICE_NAME.REGION.rep.googleapis.com

Les valeurs d'espace réservé sont définies comme suit :

  • SERVICE_NAME : nom d'un point de terminaison de service compatible, tel que bigquery.
  • REGION : région Google Cloud compatible, telle que me-central2.

L'exemple suivant est un point de terminaison régional complet pour BigQuery :

bigquery.me-central2.rep.googleapis.com

Régions et services compatibles

Les points de terminaison régionaux sont disponibles dans les régions suivantes :

Nom de la région Emplacement
me-central2 Dammam, Royaume d'Arabie saoudite (KSA)

Les points de terminaison régionaux sont compatibles avec les services suivants :

Nom du service Point de terminaison régional
App Hub apphub.me-central2.rep.googleapis.com
Artifact Registry artifactregistry.me-central2.rep.googleapis.com
apt.me-central2.rep.pkg.dev
docker.me-central2.rep.pkg.dev
go.me-central2.rep.pkg.dev
googet.me-central2.rep.pkg.dev
kfp.me-central2.rep.pkg.dev
maven.me-central2.rep.pkg.dev
npm.me-central2.rep.pkg.dev
python.me-central2.rep.pkg.dev
yum.me-central2.rep.pkg.dev
BigQuery bigquery.me-central2.rep.googleapis.com
bigquerydatatransfer.me-central2.rep.googleapis.com
bigquerymigration.me-central2.rep.googleapis.com
bigqueryreservation.me-central2.rep.googleapis.com
bigquerystorage.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
Managed Service pour Apache Spark dataproc.me-central2.rep.googleapis.com
Pub/Sub pubsub.me-central2.rep.googleapis.com

Configurer un client pour accéder aux points de terminaison régionaux depuis l'Internet public

Pour utiliser des points de terminaison régionaux depuis l'Internet public, vous devez d'abord configurer votre client (tel que Google Cloud CLI ou une bibliothèque cliente du SDK Google Cloud) pour qu'il se connecte à un point de terminaison régional spécifique.

Configurer gcloud CLI

Par défaut, la gcloud CLI utilise des points de terminaison de service globaux, tels que bigquery.googleapis.com. Pour utiliser un point de terminaison de service régional, vous devez configurer la gcloud CLI pour l'utiliser en procédant comme suit.

  1. Si un service compatible n'a pas encore été activé, activez-le à l'aide de la commande suivante :

    gcloud services enable SERVICE_NAME

    Remplacez SERVICE_NAME par le nom d'un service compatible que vous souhaitez utiliser. Exemple :

    gcloud services enable cloudkms
  2. Pour utiliser un point de terminaison de service régional, vous devez configurer la gcloud CLI à l'aide de la commande gcloud config set api_endpoint_overrides :

    gcloud config set api_endpoint_overrides/SERVICE_NAME REGIONAL_API_URL

    Remplacez les valeurs suivantes par les vôtres :

    • SERVICE_NAME : nom du service compatible que vous souhaitez utiliser. Par exemple : cloudkms
    • REGIONAL_API_URL : URL du point de terminaison spécifique. Exemple :

      https://SERVICE_NAME.REGION_NAME.rep.googleapis.com/SERVICE_NAME/API_VERSION

      Remplacez les valeurs suivantes par les vôtres :

      • REGION_NAME : nom de la région Google Cloud requise. Par exemple : me-central2
      • API_VERSION : version de l'API du service que vous souhaitez utiliser. Exemple : v1. Remarque : Certains services peuvent ne pas nécessiter ce paramètre.

      Voici un exemple de valeur REGIONAL_API_URL :

      https://cloudkms.me-central2.rep.googleapis.com/cloudkms/v1

    Voici un exemple de commande gcloud config set api_endpoint_overrides pour Cloud KMS :

    gcloud config set api_endpoint_overrides/cloudkms https://cloudkms.me-central2.rep.googleapis.com/cloudkms/v1

Maintenant que gcloud CLI a été configuré pour utiliser un point de terminaison de service régional, les futures commandes l'utiliseront par défaut au lieu du point de terminaison de service global.

Configurer les bibliothèques clientes Google Cloud SDK

Par défaut, les bibliothèques clientes de Google Cloud SDK utilisent des points de terminaison de service globaux, tels que pubsub.googleapis.com. Pour utiliser un point de terminaison de service régional, vous devez configurer les bibliothèques clientes Google Cloud SDK pour les utiliser.

Python

Définissez le paramètre api_endpoint dans la classe ClientOptions du package 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

Utilisez la méthode newBuilder de la classe ImageAnnotatorSettings dans le package com.google.cloud.vision :

ImageAnnotatorSettings settings = ImageAnnotatorSettings.newBuilder()
  .setEndpoint("pubsub.me-central2.rep.googleapis.com")
  .build();
ImageAnnotatorClient client = ImageAnnotatorClient.create(settings);

Go

Utilisez la fonction WithEndpoint dans le package ClientOptions du package api :

client, err := pubsub.NewClient(ctx, projID,
    option.WithEndpoint("pubsub.me-central2.rep.googleapis.com"), // Override endpoint

.NET

Définissez la propriété Endpoint dans la classe ClientBuilder du client dans le package Google.Cloud de la bibliothèque que vous utilisez :

string region = "me-central2";
var client = new DatasetServiceClientBuilder
{
    Endpoint = $"pubsub.{region}.rep.googleapis.com"
}.Build();

Restreindre l'utilisation des points de terminaison d'API mondiaux

Pour appliquer l'utilisation de points de terminaison régionaux, utilisez la contrainte de règle d'administration constraints/gcp.restrictEndpointUsage afin de bloquer les requêtes envoyées au point de terminaison d'API mondial. Pour en savoir plus, consultez Restreindre l'utilisation des points de terminaison.