本页面介绍了 Spanner 全球和区域服务端点以及如何使用它们。
服务端点是指定 API 服务的网络地址的基础网址。Spanner 具有全球和区域端点。您可以使用全球或区域服务端点向 Spanner 发出请求。
如果您没有严格的区域限制要求,请使用全球端点。虽然数据存储在所选区域内,但可能会在该区域外进行处理。Spanner 的全球端点为 spanner.googleapis.com
。默认 API 端点会访问全球端点。
区域端点会强制实施区域限制。数据在同一区域内进行存储和处理。Spanner 的区域端点可确保并保证存储和处理的数据仅限于数据库所在的 Spanner 区域实例配置。如果您的数据位置必须受到限制和控制以符合监管要求,请使用区域端点。您无法使用区域端点访问属于其他实例配置的资源。您必须先在区域实例配置中创建实例,然后才能使用该实例配置的区域端点。
如需了解可以使用哪些区域,请参阅可用于区域端点的区域。无论您使用哪个端点,底层 Spanner 存储政策都不会发生变化。
区域端点的安全性和合规性
与全球端点相比,使用 Spanner 区域端点的优势在于区域端点可提供区域隔离和保护,以满足安全性、合规性和监管要求。
您只能使用属于相应区域实例配置的区域端点。例如,如果您要访问的实例属于 us-central1
区域实例配置,则无法使用 spanner.me-central2.rep.googleapis.com
处理请求。请求会遭到拒绝,并显示 InvalidRegionalRequest
错误。
区域端点的限制
您无法通过区域端点访问双区域或多区域实例配置。您必须使用全球端点访问双区域或多区域实例配置。例如,如果您在多区域实例配置 nam7
中有一个实例,则无法使用区域端点 spanner.us-central1.rep.googleapis.com
向 nam7
中的实例发送请求。
如果您的活跃请求对任何实例资源使用区域端点,则迁移实例会影响使用区域端点的所有请求,因为区域级强制执行会阻止对跨区域实例的访问。使用全球端点的请求不受影响。
区域端点命名惯例
Spanner 区域端点名称遵循与区域实例配置名称相同的命名惯例。区域端点采用 spanner.REGION.rep.googleapis.com
格式。例如,达曼的区域实例配置名称和区域端点名称均为 me-central2
。因此,区域端点为 spanner.me-central2.rep.googleapis.com
。
如需了解详情,请参阅可用于区域端点的区域。
指定区域端点
您可以使用 Google Cloud CLI、REST 或 RPC API 请求指定 Spanner 区域端点。
gcloud
如需指定区域端点并替换全球端点,请运行以下命令:
gcloud config set api_endpoint_overrides/spanner https://spanner.REGION.rep.googleapis.com/
请提供以下值:
REGION
- 要为其设置区域端点的区域。例如
me-central2
。
例如,如需将区域性端点配置为 me-central2
,请运行以下命令:
gcloud config set api_endpoint_overrides/spanner https://spanner.me-central2.rep.googleapis.com/
如需将区域端点重新配置为全球端点,请运行以下命令:
gcloud config unset api_endpoint_overrides/spanner
REST API
默认 API 端点会访问全球端点。如需使用区域端点,请使用以下模式将端点配置为区域端点的地址:
https://spanner.REGION.rep.googleapis.com
例如,如果您想在达曼区域实例配置 (me-central2
) 中强制执行数据保证,请使用:
https://spanner.me-central2.rep.googleapis.com
如需了解详情,请参阅 REST API 和可用于区域端点的区域。
RPC API
默认 API 端点会访问全球端点。如需使用区域端点,请使用以下模式将端点配置为区域端点的地址:
spanner.REGION.rep.googleapis.com
例如,如果您想在达曼区域实例配置 (me-central2
) 中强制执行数据保证,请使用:
spanner.me-central2.rep.googleapis.com
如需了解详情,请参阅 RPC API 和可用于区域端点的区域。
可用于区域端点的区域
Spanner 区域端点可在以下区域中使用:
基本区域名称 | 区域说明 | |
---|---|---|
美洲 | ||
us-central1 |
艾奥瓦 | |
us-central2 |
俄克拉何马 | |
us-east1 |
南卡罗来纳 | |
us-east4 |
北弗吉尼亚 | |
us-east5 |
哥伦布 | |
us-east7 |
亚拉巴马 | |
us-south1 |
Dallas | |
us-west1 |
俄勒冈 | |
us-west2 |
洛杉矶 | |
us-west3 |
盐湖城 | |
us-west4 |
拉斯维加斯 | |
us-west8 |
Phoenix | |
中东 | ||
me-central2 |
Dammam | |
欧洲 | ||
europe-west8 |
米兰 |
限制全球 API 端点使用
为了帮助强制使用区域端点,请使用 constraints/gcp.restrictEndpointUsage
组织政策限制条件来阻止对全球 API 端点的请求。如需了解详情,请参阅限制端点使用。
后续步骤
详细了解 Spanner 实例配置。
详细了解 Spanner REST API 以及全球和区域端点。
详细了解 Spanner RPC API 以及全球和区域端点。