Utiliser des points de terminaison régionaux

Les points de terminaison régionaux Cloud Scheduler vous permettent de conserver le trafic de l'API dans une seule régionGoogle Cloud afin de répondre aux exigences de résidence des données et de souveraineté des données. Lorsque vous envoyez une requête à un point de terminaison régional, la terminaison TLS se produit et Cloud Scheduler traite la requête entièrement dans la région spécifiée.

Les points de terminaison régionaux Cloud Scheduler sont au format https://cloudscheduler.REGION.rep.googleapis.com, où REGION est une région prise en charge (par exemple, https://cloudscheduler.us-central1.rep.googleapis.com).

Pour en savoir plus sur l'utilisation de Private Service Connect pour accéder de manière privée aux points de terminaison régionaux Cloud Scheduler depuis un réseau cloud privé virtuel (VPC), consultez À propos de l'accès aux API Google régionales et multirégionales via des points de terminaison.

Limites et restrictions

Les limites et restrictions suivantes s'appliquent lorsque vous utilisez des points de terminaison régionaux Cloud Scheduler.

  • Un point de terminaison régional ne diffuse que les ressources de sa propre région. L'emplacement dans le nom de la ressource doit correspondre à la région du point de terminaison. Par exemple, vous pouvez envoyer des requêtes de ressources dans projects/PROJECT_ID/locations/us-central1 à cloudscheduler.us-central1.rep.googleapis.com. Les requêtes de ressources dans d'autres régions échouent.
  • Les points de terminaison régionaux s'appliquent aux requêtes envoyées à l'API Cloud Scheduler. Ils ne modifient pas la façon dont Cloud Scheduler envoie des requêtes aux cibles de vos jobs. Si vos jobs s'exécutent dans un périmètre VPC Service Controls, consultez les exigences concernant les cibles de jobs dans Sécuriser les jobs Cron avec VPC Service Controls.

Envoyer des requêtes à un point de terminaison régional

Vous pouvez envoyer des requêtes à un point de terminaison régional à l'aide de la Google Cloud CLI, de l'API REST ou des bibliothèques clientes Cloud Scheduler.

gcloud

Définissez la propriété api_endpoint_overrides/cloudscheduler sur le point de terminaison régional, puis exécutez les commandes gcloud scheduler pour les ressources de cette région :

gcloud config set api_endpoint_overrides/cloudscheduler \
    https://cloudscheduler.REGION.rep.googleapis.com/
gcloud scheduler jobs list --location=REGION

Remplacez REGION par une région qui propose des points de terminaison régionaux, par exemple us-central1.

Pour utiliser à nouveau le point de terminaison global par défaut, annulez la définition de la propriété :

gcloud config unset api_endpoint_overrides/cloudscheduler

REST

Utilisez le point de terminaison régional comme hôte de l'URL de la requête. Par exemple, la commande suivante liste les jobs d'une région :

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://cloudscheduler.REGION.rep.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/jobs"

Remplacez les éléments suivants :

  • REGION : région qui propose des points de terminaison régionaux, par exemple us-central1.
  • PROJECT_ID : ID de votre projet Google Cloud .

Bibliothèques clientes

Définissez le point de terminaison de l'API lorsque vous créez le client. Les exemples suivants créent un client pour us-central1 :

Go

import (
scheduler "cloud.google.com/go/scheduler/apiv1"
"google.golang.org/api/option"
)

client, err := scheduler.NewCloudSchedulerClient(ctx,
option.WithEndpoint("cloudscheduler.us-central1.rep.googleapis.com:443"))

Java

import com.google.cloud.scheduler.v1.CloudSchedulerClient;
import com.google.cloud.scheduler.v1.CloudSchedulerSettings;

CloudSchedulerSettings settings =
  CloudSchedulerSettings.newBuilder()
      .setEndpoint("cloudscheduler.us-central1.rep.googleapis.com:443")
      .build();
try (CloudSchedulerClient client = CloudSchedulerClient.create(settings)) {
// Send requests for resources in us-central1.
}

Python

from google.api_core.client_options import ClientOptions
from google.cloud import scheduler_v1

client = scheduler_v1.CloudSchedulerClient(
  client_options=ClientOptions(
      api_endpoint="cloudscheduler.us-central1.rep.googleapis.com"
  )
)

Étapes suivantes