区域
您项目的存储和计算所在的位置。
一个区域是您项目的存储和计算运行所在的物理位置。您在创建 项目时选择一次;该项目之下的每个分支和端点都继承 它。区域是项目的一个属性,而不是您之后会更改的东西。
区域目录
以下是您可以在其中创建项目的区域:
| region_id | name | default | geo |
|---|---|---|---|
| gcp-usc1-dev | — | default | — |
破折号表示目录尚未携带该字段。
GET /v1/regions 返回同一份列表。它是经过身份验证的 —— 列出您项目的同一个
bearer 也列出该目录。响应是一个单一对象:
{
"regions": [
{
"region_id": "gcp-usc1-dev",
"name": "gcp-usc1-dev",
"default": true,
"geo_lat": 0,
"geo_long": 0
}
]
}每个区域携带:
region_id—— 您在创建项目时传入的稳定标识符。name—— 显示标签。目前还没有显示名列,所以它重复region_id。default—— 控制台是否会预选这个区域。geo_lat/geo_long—— 用于基于距离选择的坐标;在目录携带真实坐标之前 都是0。
在创建时选择一个区域
在 web 控制台中,New project 有一个 Region 下拉菜单。 它默认为 Auto (nearest),这会把选择权留给控制平面。要固定一个特定区域, 从列表中选择它。
通过 API,在 POST /v1/projects 上传入可选的 region 字段:
{ "name": "my-app", "region": "gcp-usc1-dev" }省略 region(或发送 null)以获得与控制台默认相同的"auto"行为。只有在恰好
有一个活跃区域时,auto 才是无歧义的:多于一个时,未指名区域的创建会以
region_required(422)被拒绝,而不是由控制平面去猜。
区域可用性
上面的表格由目录生成,不是手工维护的,因此它就是您此刻能够在其中创建的
范围。区域会随着需求增长而增加。当有新区域上线时,客户端上不会有任何变化
—— 目录和 region 字段都已经就位。