本页面介绍如何查看和修改空闲虚拟机建议的配置。您可能需要修改配置以增加收到的建议的数量,或避免将特意具有小型工作负载的虚拟机错误分类为空闲虚拟机。
- 如需详细了解可用于自定义建议的参数,请参阅选择正确的配置参数。
- 如需详细了解如何识别空闲虚拟机并采取措施,请参阅查看和应用空闲虚拟机建议。
准备工作
-
设置身份验证(如果尚未设置)。身份验证是通过其进行身份验证以访问 Google Cloud 服务和 API 的过程。如需从本地开发环境运行代码或示例,您可以按如下方式向 Compute Engine 进行身份验证。
Select the tab for how you plan to use the samples on this page:
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
PROJECT_ID
:您的项目的 IDZONE
:您要获取其当前配置的可用区PROJECT_ID
:要检索其 Recommender 配置的项目的 ID。ZONE
:包含您的项目的可用区。- 对于 1 天的观察期,请使用
"86400s"
。 - 对于 14 天的观察期,请使用
"1209600s"
。 PROJECT_ID
:您的项目的 IDZONE
:您要获取其当前配置的可用区CONFIG_FILE_PATH
:包含当前配置的 JSON 文件的路径ETAG
:当前配置的 ETag 值PROJECT_ID
:要修改 Recommender 配置的项目的 ID。ZONE
:包含您的项目的可用区。- 了解如何查看和应用空闲虚拟机建议。
REST
如需在本地开发环境中使用本页面上的 REST API 示例,请使用您提供给 gcloud CLI 的凭据。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
如需了解详情,请参阅 Google Cloud 身份验证文档中的使用 REST 时进行身份验证。
价格
可配置的建议是免费提供的。使用建议来减少资源用量可节省费用。
配置建议
如需配置空闲虚拟机建议,请执行以下步骤:
获取当前配置
您可以使用 Google Cloud CLI 或 REST 获取项目的空闲虚拟机建议的当前配置。
gcloud
如需获取当前配置参数,请使用
gcloud recommender recommender-config describe
命令并使用google.compute.instance.IdleResourceRecommender
作为 Recommender ID:gcloud recommender recommender-config describe google.compute.instance.IdleResourceRecommender \ --project=PROJECT_ID \ --location=ZONE
请替换以下内容:
例如:
gcloud recommender recommender-config describe google.compute.instance.IdleResourceRecommender \ --project=my-project \ --location=us-central1-c
该命令会返回 Recommender 配置,包括可修改的子字段
params.observation_period
。{ "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config", "recommenderGenerationConfig": { "params": { "observation_period": "1209600s" } }, "etag": "\"2f3c9b65cda6a4ba\"", "updateTime": "2021-02-03T04:41:15.330351Z" }
REST
如需检索当前配置,请使用
recommenders.getConfig
方法并将google.compute.instance.IdleResourceRecommender
指定为 Recommender ID:GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config
请替换以下内容:
在命令行中,执行以下命令以获取项目的 Recommender 配置:
PROJECT_ID=PROJECT_ID ZONE=ZONE curl -X GET -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "x-goog-user-project: ${PROJECT_ID}" \ https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config
该命令会返回 Recommender 配置,包括可修改的子字段:
params.observation_period
。{ "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config", "recommenderGenerationConfig": { "params": { "observation_period": "1209600s" } }, "etag": "\"2f3c9b65cda6a4ba\"", "updateTime": "2021-02-03T04:41:15.330351Z" }
更新项目的配置
如需更新空闲虚拟机建议的配置,请修改
observation_period
的值,然后上传项目的新配置。您可以将观察期设置为 1 天到 14 天之间的值,使用包含总秒数的字符串,后跟字母
s
。在您上传新配置后,新配置大约需要 48 小时才能生效。在此之前,任何生成的建议都会使用之前的配置。
gcloud
如需更新配置参数,请使用
gcloud recommender recommender-config update
命令并使用google.compute.instance.IdleResourceRecommender
作为 Recommender ID:gcloud recommender recommender-config update google.compute.instance.IdleResourceRecommender\ --project=PROJECT_ID \ --location=ZONE \ --config-file=CONFIG_FILE_PATH \ --etag=ETAG
请替换以下内容:
在配置文件中,仅指定包含更新后的配置参数的
recommenderGenerationConfig
对象。例如,如需指定 5 天的观察期,请使用以下配置文件:{ "params": { "observation_period": "432000s" } }
如果命令成功,则会返回类似于以下内容的响应正文,其中显示了包含您刚刚修改的参数的新配置。
{ "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config", "recommenderGenerationConfig": { "params": { "observation_period": "432000s" } }, "etag": "\"1245f9435cd01ea8\"", "updateTime": "2021-02-03T05:00:05Z" }
REST
如需更新配置,请使用
recommenders.updateConfig
方法,并将google.compute.instance.IdleResourceRecommender
指定为 Recommender ID:PATCH https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config { "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config", "recommenderGenerationConfig": { "params": { "observation_period": "1209600s" } }, "etag": "\"2f3c9b65cda6a4ba\"" }
请替换以下内容:
将请求正文保存在文件(例如
config.json
)中。然后,您可以在更新项目的 Recommender 配置时使用类似于以下命令的命令来引用该文件:curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ -H "x-goog-user-project: ${PROJECT_ID}" \ -d @config.json \ https://recommender.googleapis.com/v1/projects/$PROJECT_ID/locations/$ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config
POST
命令会返回类似于以下内容的响应正文,其中显示了包含您刚刚修改的参数的新配置。{ "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.instance.IdleResourceRecommender/config", "recommenderGenerationConfig": { "params": { "observation_period": "432000s" } }, "etag": "\"1245f9435cd01ea8\"", "updateTime": "2021-02-03T05:00:05Z" }
后续步骤
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-11-25。
-