配置未充分利用的预留建议


本页面介绍了如何查看和修改未充分利用的按需预留建议的配置。您可能需要修改此配置以增加收到的建议的数量,或减少建议的数量以删除您计划使用的预留。

准备工作

  • 如果您尚未设置身份验证,请进行设置。身份验证是通过其进行身份验证以访问 Google Cloud 服务和 API 的过程。如需从本地开发环境运行代码或示例,您可以通过选择以下选项之一向 Compute Engine 进行身份验证:

    Select the tab for how you plan to use the samples on this page:

    gcloud

    1. After installing the Google Cloud CLI, initialize it by running the following command:

      gcloud init

      If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

    2. Set a default region and zone.
    3. REST

      如需在本地开发环境中使用本页面上的 REST API 示例,请使用您提供给 gcloud CLI 的凭据。

        After installing the Google Cloud CLI, initialize it by running the following command:

        gcloud init

        If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

      如需了解详情,请参阅 Google Cloud 身份验证文档中的使用 REST 时进行身份验证

配置建议

如需配置未充分利用的预留建议,请执行以下操作:

  1. 获取当前配置以获取配置的 JSON 文件。
  2. 修改 JSON 格式的配置文件。
  3. 上传新的配置文件以应用更改。

获取当前配置

您可以使用 Google Cloud CLI 或 REST 获取项目的未充分利用预留建议的当前配置。

请使用以下方法之一完成此任务。

gcloud

如需获取当前配置参数,请使用 gcloud recommender recommender-config describe 命令并将 google.compute.RightSizeResourceRecommender 用作 Recommender ID:

gcloud recommender recommender-config describe google.compute.RightSizeResourceRecommender \
  --location=ZONE --billing-account=BILLING_ACCOUNT_ID

替换以下内容:

  • ZONE 替换为包含要为其列出建议的预留的可用区。
  • BILLING_ACCOUNT_ID 替换为您的结算账号的 ID。

例如:

gcloud recommender recommender-config describe google.compute.RightSizeResourceRecommender \
  --location=us-central1-c --billing-account=my-billing-account-id

该命令会返回 Recommender 配置,包括可修改的子字段 params.under_utilized_reservation_lookback_periodparams.under_utilized_reservation_utilization_threshold

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.RightSizeResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "under_utilized_reservation_lookback_period": "P7D",
      "under_utilized_reservation_utilization_threshold": "0.8"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\"",
  "updateTime": "2024-06-03T04:41:15.330351Z"
}

REST

如需检索当前配置,请使用 recommenders.getConfig 方法并将 google.compute.RightSizeResourceRecommender 指定为 Recommender ID:

GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.RightSizeResourceRecommender/config

替换以下内容:

  • PROJECT_ID:要修改 Recommender 配置的项目的 ID。
  • ZONE:包含您的项目的可用区。

在命令行中,执行以下命令以获取项目的 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.RightSizeResourceRecommender/config

该命令会返回 Recommender 配置,包括您可以修改的子字段:params.under_utilized_reservation_lookback_periodparams.under_utilized_reservation_utilization_threshold

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.RightSizeResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "under_utilized_reservation_lookback_period": "P7D",
      "under_utilized_reservation_utilization_threshold": "0.8"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\"",
  "updateTime": "2024-06-03T04:41:15.330351Z"
}

更新项目的配置

如需更新未充分利用的预留建议的配置,请修改 under_utilized_reservation_lookback_period 的值,然后上传项目的新配置。

您可以将观察期设置为 7 天到 30 天之间的值,使用以 P 开头的字符串,然后是表示天数的整数(最小值为 7,最大值为 30),后跟 D,例如:

  • 对于 7 天的观察期,请使用 "P7D"
  • 对于 30 天的观察期,请使用 "P30D"

同样,通过修改 under_utilized_reservation_utilization_threshold 的值设置触发未充分利用的预留建议的用量阈值,然后上传项目的新配置,例如:

  • 如果阈值为 80%,则为 "0.8"

在您上传新配置后,新配置大约需要 48 小时才能生效。在此之前,任何生成的建议都会使用之前的配置。

请使用以下方法之一完成此任务。

gcloud

如需更新配置参数,请使用 gcloud recommender recommender-config update 命令并将 google.compute.RightSizeResourceRecommender 用作 Recommender ID:

gcloud recommender recommender-config update google.compute.RightSizeResourceRecommender\
  --location=ZONE \
  --config-file=CONFIG_FILE_PATH \
  --etag=ETAG \
  --billing-account=BILLING_ACCOUNT_ID

请替换以下内容:

  • ZONE:您要获取其当前配置的可用区
  • CONFIG_FILE_PATH:包含当前配置的 JSON 文件的路径
  • ETAG:当前配置的 ETag 值
  • BILLING_ACCOUNT_ID:结算账号的 ID

在配置文件中,仅指定包含更新后的配置参数的 recommenderGenerationConfig 对象。例如,如需指定观察期为 21 天,并将未充分利用的预留阈值设为 80%,请使用以下配置文件:

{
  "params": {
    "under_utilized_reservation_lookback_period": "P21D",
    "under_utilized_reservation_utilization_threshold": "0.8"
  }
}

如果命令成功,则会返回类似于以下内容的响应正文,其中显示了包含您刚刚修改的参数的新配置。

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.RightSizeResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "under_utilized_reservation_lookback_period": "P21D",
      "under_utilized_reservation_utilization_threshold": "0.8"
    }
  },
  "etag": "\"1245f9435cd01ea8\"",
  "updateTime": "2024-06-03T05:00:05Z"
}

REST

如需更新配置,请向 recommenders.updateConfig 方法发出 PATCH 请求,并将 google.compute.RightSizeResourceRecommender 指定为 Recommender ID:

PATCH https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.RightSizeResourceRecommender/config

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.RightSizeResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "under_utilized_reservation_lookback_period": "P21D",
      "under_utilized_reservation_utilization_threshold": "0.8"
    }
  },
  "etag": "\"2f3c9b65cda6a4ba\""
}

请替换以下内容:

  • PROJECT_ID:要修改 Recommender 配置的项目的 ID。
  • ZONE:包含您的项目的可用区。

将请求正文保存在文件(例如 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.RightSizeResourceRecommender/config

POST 命令会返回类似于以下内容的响应正文,其中显示了包含您刚修改的参数的新配置。

{
  "name": "projects/PROJECT_ID/locations/ZONE/recommenders/google.compute.RightSizeResourceRecommender/config",
  "recommenderGenerationConfig": {
    "params": {
      "under_utilized_reservation_lookback_period": "P21D",
      "under_utilized_reservation_utilization_threshold": "0.8"
    }
  },
  "etag": "\"1245f9435cd01ea8\"",
  "updateTime": "2024-06-03T05:00:05Z"
}

后续步骤