发送反馈
创建部署
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
本页面介绍了如何创建、列出、介绍和更新 Game Servers 部署。部署 管理您可以部署到任何或所有大区的一个或多个软件版本。如需查看创建部署,添加配置然后发布部署的端到端示例,请参阅配置集群扩缩行为 。
准备工作
开始之前,我们建议您先了解 Game Servers 概览 中的关键概念。请确保您已执行以下任务:
确保您已启用 Game Services API。
启用 Game Services API
选择已安装 gcloud CLI 的 shell,或者使用 API 客户端:
Cloud Shell 如需启动 Cloud Shell,请执行以下步骤:
进入 Google Cloud 控制台。
Google Cloud 控制台
在控制台的右上角,点击激活 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 搭配使用,请执行以下操作:
创建服务帐号。
以 JSON 文件的格式下载私钥。
Set the environment variable GOOGLE_APPLICATION_CREDENTIALS
to the path of the JSON file that contains your credentials.
This variable applies only to your current shell session, so if you open
a new session, set the variable again.
Example: Linux or macOS
export GOOGLE_APPLICATION_CREDENTIALS = "KEY_PATH
"
Replace KEY_PATH
with the path of the JSON file that contains your credentials.
For example:
export GOOGLE_APPLICATION_CREDENTIALS = "/home/user/Downloads/service-account-file.json"
Example: Windows
For PowerShell:
$env :GOOGLE_APPLICATION_CREDENTIALS= "KEY_PATH
"
Replace KEY_PATH
with the path of the JSON file that contains your credentials.
For example:
$env :GOOGLE_APPLICATION_CREDENTIALS= "C:\Users\username\Downloads\service-account-file.json"
For command prompt:
set GOOGLE_APPLICATION_CREDENTIALS = KEY_PATH
Replace KEY_PATH
with the path of the JSON file that contains your credentials.
客户端库
您可以使用客户端库以编程方式控制 Google Cloud Game Servers。如需了解库和身份验证的使用说明,请参阅客户端库概览 。
创建部署
控制台
在 Google Cloud 控制台中,转到游戏服务器部署 页面。
转到 Game Servers
点击创建部署 。
在名称 框中,输入此部署的唯一标识符。
(可选)在说明 框中,输入此部署的说明。
点击创建 。
gcloud
您可以使用 Google Cloud CLI 创建部署。
如需创建部署,请运行以下命令并将 deploymentID 替换为适当的值:
gcloud game servers deployments create deploymentID
REST
在使用任何请求数据之前,请先进行以下替换:
PROJECT_ID :IAM 设置 中列出的 Google Cloud 项目 ID
DEPLOYMENT_ID :用户定义的部署标识符
请求 JSON 正文:
{
"name": "projects/PROJECT_ID /locations/global/gameServerDeployments/DEPLOYMENT_ID ",
}
如需发送您的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
将请求正文保存在名为 request.json
的文件中。在终端中运行以下命令,在当前目录中创建或覆盖此文件:
cat > request.json << 'EOF'
{
"name": "projects/PROJECT_ID /locations/global/gameServerDeployments/DEPLOYMENT_ID ",
}
EOF
然后,执行以下命令以发送 REST 请求:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://gameservices.googleapis.com/v1/projects/PROJECT_ID /locations/global/gameServerDeployments?deploymentId=DEPLOYMENT_ID "
PowerShell (Windows)
将请求正文保存在名为 request.json
的文件中。在终端中运行以下命令,在当前目录中创建或覆盖此文件:
@'
{
"name": "projects/PROJECT_ID /locations/global/gameServerDeployments/DEPLOYMENT_ID ",
}
'@ | Out-File -FilePath request.json -Encoding utf8
然后,执行以下命令以发送 REST 请求:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method POST ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://gameservices.googleapis.com/v1/projects/PROJECT_ID /locations/global/gameServerDeployments?deploymentId=DEPLOYMENT_ID " | Select-Object -Expand Content
您应该收到类似以下内容的 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
}
列出部署
控制台
在 Google Cloud 控制台中,转到游戏服务器部署 页面。
转到 Game Servers
您可以使用过滤条件框,按不同属性过滤部署列表。
gcloud
您可以使用 Google Cloud CLI 列出部署。
如需列出部署,请运行以下命令:
gcloud game servers deployments list
REST
在使用任何请求数据之前,请先进行以下替换:
PROJECT_ID :IAM 设置 中列出的 Google Cloud 项目 ID
根据您发送的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
执行以下命令:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://gameservices.googleapis.com/v1/projects/PROJECT_ID /locations/global/gameServerDeployments"
PowerShell (Windows)
执行以下命令:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://gameservices.googleapis.com/v1/projects/PROJECT_ID /locations/global/gameServerDeployments" | Select-Object -Expand Content
您应该收到类似以下内容的 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"
}
]
}
描述部署
控制台
在 Google Cloud 控制台中,转到游戏服务器部署 页面。
转到 Game Servers
您可以使用过滤条件框,按不同属性过滤部署列表。
在表格的最后一列中,点击省略号 more_vert 并选择列出配置 。您可以通过此页面查看部署的活跃配置和无效配置。
要为部署创建新配置 ,请点击创建配置 。如需更新发布 ,请点击管理发布 。
gcloud
您可以使用 Google Cloud CLI 获取有关部署的详细信息,例如创建时间或更新时间。
如需描述部署,请运行以下命令,并将 deploymentID 替换为您之前创建的部署的标识符:
gcloud game servers deployments describe deploymentID
REST
在使用任何请求数据之前,请先进行以下替换:
PROJECT_ID :IAM 设置 中列出的 Google Cloud 项目 ID
DEPLOYMENT_ID :用户定义的部署标识符
根据您发送的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
执行以下命令:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://gameservices.googleapis.com/v1/projects/PROJECT_ID /locations/global/gameServerDeployments/DEPLOYMENT_ID "
PowerShell (Windows)
执行以下命令:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method GET ` -Headers $headers ` -Uri "https://gameservices.googleapis.com/v1/projects/PROJECT_ID /locations/global/gameServerDeployments/DEPLOYMENT_ID " | Select-Object -Expand Content
您应该收到类似以下内容的 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_ID :IAM 设置 中列出的 Google Cloud 项目 ID
DEPLOYMENT_ID :用户定义的部署标识符
请求 JSON 正文:
{
"description": "My updated description"
}
如需发送您的请求,请展开以下选项之一:
curl(Linux、macOS 或 Cloud Shell)
将请求正文保存在名为 request.json
的文件中。在终端中运行以下命令,在当前目录中创建或覆盖此文件:
cat > request.json << 'EOF'
{
"description": "My updated description"
}
EOF
然后,执行以下命令以发送 REST 请求:
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -d @request.json \ "https://gameservices.googleapis.com/v1/projects/PROJECT_ID /locations/global/gameServerDeployments/DEPLOYMENT_ID ?updateMask=description"
PowerShell (Windows)
将请求正文保存在名为 request.json
的文件中。在终端中运行以下命令,在当前目录中创建或覆盖此文件:
@'
{
"description": "My updated description"
}
'@ | Out-File -FilePath request.json -Encoding utf8
然后,执行以下命令以发送 REST 请求:
$cred = gcloud auth print-access-token $headers = @{ "Authorization" = "Bearer $cred" } Invoke-WebRequest ` -Method PATCH ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -InFile request.json ` -Uri "https://gameservices.googleapis.com/v1/projects/PROJECT_ID /locations/global/gameServerDeployments/DEPLOYMENT_ID ?updateMask=description" | Select-Object -Expand Content
您应该收到类似以下内容的 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
}
后续步骤
发送反馈
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可 获得了许可,并且代码示例已根据 Apache 2.0 许可 获得了许可。有关详情,请参阅 Google 开发者网站政策 。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-09-05。
需要向我们提供更多信息?
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2024-09-05。"],[],[]]