创建部署

本页面介绍了如何创建、列出、介绍和更新 Game Servers 部署。部署管理您可以部署到任何或所有大区的一个或多个软件版本。如需查看创建部署,添加配置然后发布部署的端到端示例,请参阅配置集群扩缩行为

准备工作

开始之前,我们建议您先了解 Game Servers 概览中的关键概念。请确保您已执行以下任务:

  • 确保您已启用 Game Services API。
  • 启用 Game Services API
  • 选择已安装 gcloud CLI 的 shell,或者使用 API 客户端:
  • Cloud Shell

    如需启动 Cloud Shell,请执行以下步骤:

    1. 进入 Google Cloud 控制台。

      Google Cloud 控制台

    2. 在控制台的右上角,点击激活 Cloud Shell 按钮:

    控制台下方的框架内会打开一个 Cloud Shell 会话。您可以使用此 shell 运行 gcloud 命令。

    本地 shell

    安装 gcloud CLI

    确认您已为 Google Cloud CLI 设置所需的默认项目(否则,您稍后需要为每个命令明确指定 --project 标志):

    gcloud config list project
    

    如果无法运行以下命令来设置默认项目,请将 PROJECT_ID 替换为所需的项目 ID:

    gcloud config set project PROJECT_ID
    

    运行以下命令以验证 Google Cloud CLI 的版本。Game Servers 需要使用 306.0.0 版或更高版本的 gcloud CLI。

    gcloud version
    

    如需更新安装,请运行以下命令:

    gcloud components update
    

    curl / PowerShell

    如需将 REST API 与 curl 或 Windows PowerShell 搭配使用,请执行以下操作:

    1. 创建服务帐号。
    2. 以 JSON 文件的格式下载私钥。
    3. 将环境变量 GOOGLE_APPLICATION_CREDENTIALS 设置为包含凭据的 JSON 文件的路径。 此变量仅适用于当前的 shell 会话,因此,如果您打开新的会话,请重新设置该变量。

    客户端库

    您可以使用客户端库以编程方式控制 Google Cloud Game Servers。如需了解库和身份验证的使用说明,请参阅客户端库概览

创建部署

控制台

  1. 在 Google Cloud 控制台中,转到游戏服务器部署页面。

    转到 Game Servers

  2. 点击创建部署

  3. 名称框中,输入此部署的唯一标识符。

  4. (可选)在说明框中,输入此部署的说明。

  5. 点击创建

gcloud

您可以使用 Google Cloud CLI 创建部署。

如需创建部署,请运行以下命令并将 deploymentID 替换为适当的值:

gcloud game servers deployments create deploymentID

REST

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_IDIAM 设置中列出的 Google Cloud 项目 ID
  • DEPLOYMENT_ID:用户定义的部署标识符

请求 JSON 正文:

{
  "name": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID",
}

如需发送您的请求,请展开以下选项之一:

您应该收到类似以下内容的 JSON 响应:

{
  "name": "projects/PROJECT_ID/locations/global/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.gaming.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

列出部署

控制台

  1. 在 Google Cloud 控制台中,转到游戏服务器部署页面。

    转到 Game Servers

  2. 您可以使用过滤条件框,按不同属性过滤部署列表。

gcloud

您可以使用 Google Cloud CLI 列出部署。

如需列出部署,请运行以下命令:

gcloud game servers deployments list

REST

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_IDIAM 设置中列出的 Google Cloud 项目 ID

根据您发送的请求,请展开以下选项之一:

您应该收到类似以下内容的 JSON 响应:

{
  "gameServerDeployments": [
    {
      "name": "projects/PROJECT_ID/locations/global/gameServerDeployments/my-deployment-1",
      "createTime": CREATE_TIME,
      "updateTime": UPDATE_TIME,
      "etag": "RI8hTm3ZaMNZ3qRVeKVcxcN3W26_oR559JYofnFi69A"
    },
    {
      "name": "projects/PROJECT_ID/locations/global/gameServerDeployments/my-deployment-2",
      "createTime": CREATE_TIME,
      "updateTime": UPDATE_TIME,
      "etag": "az38kwIY4X3WdP2SA0fkTGib9hwVj7iXLFXAtIzMLpc"
    }
  ]
}

描述部署

控制台

  1. 在 Google Cloud 控制台中,转到游戏服务器部署页面。

    转到 Game Servers

  2. 您可以使用过滤条件框,按不同属性过滤部署列表。

  3. 在表格的最后一列中,点击省略号 并选择列出配置。您可以通过此页面查看部署的活跃配置和无效配置。

  4. 要为部署创建新配置,请点击创建配置。如需更新发布,请点击管理发布

gcloud

您可以使用 Google Cloud CLI 获取有关部署的详细信息,例如创建时间或更新时间。

如需描述部署,请运行以下命令,并将 deploymentID 替换为您之前创建的部署的标识符:

gcloud game servers deployments describe deploymentID

REST

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_IDIAM 设置中列出的 Google Cloud 项目 ID
  • DEPLOYMENT_ID:用户定义的部署标识符

根据您发送的请求,请展开以下选项之一:

您应该收到类似以下内容的 JSON 响应:

{
  "name": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID",
  "createTime": CREATE_TIME,
  "updateTime": UPDATE_TIME,
  "etag": "RI8hTm3ZaMNZ3qRVeKVcxcN3W26_oR559JYofnFi69A"
}

更新部署

gcloud

如需更新部署的字段,请在替换现有部署的 deploymentID 后运行 gcloud game servers deployments update 命令。以下命令会更新部署的说明字段。

gcloud game servers deployments update deploymentID --description="My updated description"

如需查找其他部署字段的标志,请参阅 gcloud 参考

REST

以下示例更新 description 字段。如要更新其他字段,请将字段名称添加到 ?updateMask= 查询参数并请求 JSON 正文。

在使用任何请求数据之前,请先进行以下替换:

  • PROJECT_IDIAM 设置中列出的 Google Cloud 项目 ID
  • DEPLOYMENT_ID:用户定义的部署标识符

请求 JSON 正文:

{
  "description": "My updated description"
}

如需发送您的请求,请展开以下选项之一:

您应该收到类似以下内容的 JSON 响应:

{
  "name": "projects/PROJECT_ID/locations/global/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.gaming.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_ID/locations/global/gameServerDeployments/DEPLOYMENT_ID",
    "verb": "update",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

后续步骤