Nesta página, explicamos como usar endpoints regionais de API (endpoints regionais) em
Google Cloud, que estão disponíveis para a região me-central2 (KSA).
Os endpoints regionais oferecem recursos de residência de dados em trânsito ao rotear e veicular tráfego na mesma Google Cloud região do cliente. Quando um cliente chama um serviço usando um endpoint regional, a sessão TLS do cliente termina na região indicada no nome do endpoint. Como resultado, os endpoints regionais só devem ser usados para cargas de trabalho que não têm dependências fora de uma única região ou jurisdição.
É possível se conectar pela Internet a endpoints regionais públicos. Para o tráfego de entrada da Internet, esses endpoints usam o roteamento de melhor esforço para manter o tráfego em trânsito local na região (ou jurisdição), porque não usam o Google Front End (GFE) global. Em vez disso, eles são resolvidos para endereços IP anunciados apenas nos pontos de peering mais próximos da região selecionada.
Por exemplo, um engenheiro de dados que trabalha na Arábia Saudita pode configurar o cliente para
usar o BigQuery na região me-central2 (Dammam) usando
o endpoint regional do serviço bigquery.me-central2.rep.googleapis.com.
O tráfego é roteado usando o nível Standard, e a sessão TLS do cliente será encerrada em me-central2.
Nesse cenário, o VIP público correspondente ao endpoint de serviço regional vai se originar de um prefixo de IP anunciado pelo Google nos pontos de peering da região. Assim, se o usuário estiver conectado a um ISP local na Arábia Saudita, o tráfego poderá ser roteado dentro da jurisdição dele.
Formato do endpoint regional
Os endpoints regionais usam o seguinte formato:
SERVICE_NAME.REGION.rep.googleapis.com
Os valores do marcador são definidos da seguinte maneira:
- SERVICE_NAME: um nome de endpoint de serviço compatível, como
bigquery. - REGION: uma região Google Cloud compatível, como
me-central2.
O exemplo a seguir é um endpoint regional completo para o BigQuery:
bigquery.me-central2.rep.googleapis.com
Regiões e serviços com suporte
Os endpoints regionais são compatíveis com as seguintes regiões:
| Nome da região | Local |
|---|---|
me-central2 |
Damã, Reino da Arábia Saudita (KSA) |
Os endpoints regionais são compatíveis com os seguintes serviços:
| Nome do serviço | Endpoint regional |
|---|---|
| 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
|
Como configurar um cliente para acessar endpoints regionais da Internet pública
Para usar endpoints regionais da Internet pública, primeiro configure seu cliente (como a Google Cloud CLI ou uma biblioteca de cliente do SDK Google Cloud) para se conectar a um endpoint regional específico.
Configurar a CLI gcloud
Por padrão, a CLI gcloud usa endpoints de serviço globais, como
bigquery.googleapis.com. Para usar um endpoint de serviço regional, configure a CLI gcloud para usá-los seguindo estas etapas:
Se um serviço compatível ainda não tiver sido ativado, faça isso usando o seguinte comando:
gcloud services enable SERVICE_NAME
Substitua SERVICE_NAME pelo nome de um serviço compatível que você quer usar. Exemplo:
gcloud services enable cloudkms
Para usar um endpoint de serviço regional, configure a CLI gcloud usando o comando
gcloud config set api_endpoint_overrides:gcloud config set api_endpoint_overrides/SERVICE_NAME REGIONAL_API_URL
Substitua os seguintes valores pelos seus:
- SERVICE_NAME: o nome do serviço compatível que você quer usar.
Por exemplo:
cloudkms REGIONAL_API_URL: o URL do endpoint específico. Exemplo:
https://SERVICE_NAME.REGION_NAME.rep.googleapis.com/SERVICE_NAME/API_VERSION
Substitua os seguintes valores pelos seus:
- REGION_NAME: o nome da Google Cloud região obrigatória. Por exemplo:
me-central2 - API_VERSION: a versão da API do serviço que você quer usar.
Por exemplo,
v1. Observação: alguns serviços podem não exigir esse parâmetro.
Confira um exemplo de valor REGIONAL_API_URL:
https://cloudkms.me-central2.rep.googleapis.com/cloudkms/v1
- REGION_NAME: o nome da Google Cloud região obrigatória. Por exemplo:
Confira um exemplo de comando
gcloud config set api_endpoint_overridespara o Cloud KMS:gcloud config set api_endpoint_overrides/cloudkms https://cloudkms.me-central2.rep.googleapis.com/cloudkms/v1
- SERVICE_NAME: o nome do serviço compatível que você quer usar.
Por exemplo:
Agora que a CLI gcloud foi configurada para usar um endpoint de serviço regional, os comandos futuros vão usá-lo como padrão em vez do endpoint de serviço global.
Configurar bibliotecas de cliente do SDK Google Cloud
Por padrão, as bibliotecas de cliente do SDK Google Cloud usam endpoints de serviço globais, como
pubsub.googleapis.com. Para usar um endpoint de serviço regional, configure as bibliotecas de cliente do SDK Google Cloud.
Python
Defina o parâmetro api_endpoint na
classe ClientOptions
do pacote 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
Use o método newBuilder da
classe ImageAnnotatorSettings
no pacote com.google.cloud.vision:
ImageAnnotatorSettings settings = ImageAnnotatorSettings.newBuilder() .setEndpoint("pubsub.me-central2.rep.googleapis.com") .build(); ImageAnnotatorClient client = ImageAnnotatorClient.create(settings);
Go
Use a função WithEndpoint no
pacote ClientOptions do
pacote api:
client, err := pubsub.NewClient(ctx, projID, option.WithEndpoint("pubsub.me-central2.rep.googleapis.com"), // Override endpoint
.NET
Defina a propriedade Endpoint na
classe ClientBuilder
do cliente no pacote Google.Cloud da biblioteca que você está usando:
string region = "me-central2"; var client = new DatasetServiceClientBuilder { Endpoint = $"pubsub.{region}.rep.googleapis.com" }.Build();
Restringir o uso de endpoints de API globais
Para ajudar na aplicação do uso de endpoints regionais, utilize a
restrição de política da organização constraints/gcp.restrictEndpointUsage para
bloquear solicitações ao endpoint da API global. Para mais informações, consulte
Restringir o uso de endpoints.