减少超额预配的 Cloud SQL 实例

Cloud SQL 超额预配实例 Recommender 可帮助您检测对于给定工作负载而言过大的实例,然后提供调整此类实例大小和减少费用的建议。本页面介绍此 Recommender 的工作原理及其使用方法。

工作原理

Cloud SQL 超额预配 Recommender 会分析超过 30 天的主实例的用量指标。对于每个实例,Recommender 会根据特定指标在过去 30 天内的值考虑 CPU 和内存利用率。Recommender 不会分析读取副本。

如果在观察期内 CPU 和/或内存的峰值利用率偏低,则该实例被判断为超额预配。如果预估每月节省的费用大于或等于 $10,则每 24 小时生成合理调整此类实例容量的建议。

Recommender 使用保守的阈值以确保只标记明显超额预配的实例,这通常是浪费的一个有效指标。Recommender 建议使用至少具有 8 个 vCPU 和 32 GB 的机器类型。

价格

Cloud SQL 超额预配实例 Recommender 为标准 Recommender 价格层级

准备工作

在查看建议和数据分析之前,请执行以下操作:

  • 如需获得查看和使用数据分析和建议的权限,请确保您拥有所需的角色
    任务 角色
    查看建议 以下角色之一:recommender.cloudsqlViewercloudsql.viewer
    采纳建议 以下角色之一:recommender.cloudsqlAdmincloudsql.editorcloudsql.admin
    如需详细了解角色,请参阅了解角色授予 IAM 权限
  • 启用 Recommender API。

    启用 API

列出超额预配的 Cloud SQL 实例建议

您可以使用 Google Cloud 控制台、gcloud 或 Recommender API 列出超额预配的实例建议。

控制台

如需使用 Google Cloud 控制台列出有关超额预配的实例的建议,请按照以下步骤操作:

  1. 转到 Cloud SQL 实例页面。

    转到“Cloud SQL 实例”

  2. 在超额预配实例的建议横幅上点击查看全部

或者,请按以下步骤操作:

  1. 转到 Recommendation Hub

    转到 Recommendation Hub

    如需了解详情,请参阅 Recommendation Hub 使用入门

  2. 减少 Cloud SQL 实例费用卡片中,点击查看全部

  3. 点击减少实例标签页。

gcloud

如需使用 gcloud 列出有关超额预配实例的建议,请运行 gcloud recommender recommendations list 命令,如下所示:

gcloud recommender recommendations list \
--project=PROJECT_ID \
--location=LOCATION \
--recommender=google.cloudsql.instance.RECOMMENDER

替换以下内容:

  • PROJECT_ID:您的项目 ID。
  • LOCATION:区域,例如 us-central1
  • RECOMMENDER:Recommender 的 ID,例如 OverprovisionedRecommender

API

如需使用 Recommendations API 列出有关超额预配的实例的建议,请调用 recommendations.list 方法,如下所示:

GET https://recommender.googleapis.com/v1beta1/projects/PROJECT-ID/locations/LOCATION/recommenders/google.cloudsql.instance.RECOMMENDER/recommendations

替换以下内容:

  • PROJECT_ID:您的项目 ID。
  • LOCATION:区域,例如 us-central1
  • RECOMMENDER:Recommender 的 ID,例如 OverprovisionedRecommender

如果 Recommender 检测到超额预配的实例,则会在表中列出这些实例。每行都会显示实例名称、简要建议、当前机器类型、推荐机器类型、位置和上次刷新日期。

查看数据分析和详细建议

您可以使用 Google Cloud 控制台、gcloud 或 Recommender API 查看有关超额预配的实例的数据分析和详细建议。

控制台

如需使用 Google Cloud 控制台查看有关超额预配的实例的数据分析和详细建议,请点击实例列表中的建议按钮。

gcloud

如需使用 gcloud 查看有关超额预配实例的数据分析和详细建议,请运行 gcloud recommender insights list 命令,如下所示:

gcloud recommender insights list \
--project=PROJECT_ID \
--location=LOCATION \
--insight-type=google.cloudsql.instance.INSIGHT_TYPE

替换以下内容:

  • PROJECT_ID:您的项目 ID。
  • LOCATION:区域,例如 us-central1
  • INSIGHT_TYPE:数据分析类型的 ID,指定为 CpuUsageInsightMemoryUsageInsight,可分别提供有关 CPU 利用率和内存的数据分析。

API

如需使用 Recommendations API 查看有关超额预配实例的数据分析和详细建议,请调用 insights.list 方法,如下所示:

GET https://recommender.googleapis.com/v1beta1/projects/PROJECT-ID/locations/LOCATION/insightTypes/google.cloudsql.instance.INSIGHT_TYPE/insights

替换以下内容:

  • PROJECT_ID:您的项目 ID。
  • LOCATION:区域,例如 us-central1
  • INSIGHT_TYPE:数据分析类型的 ID,指定为 CpuUsageInsightMemoryUsageInsight,可分别提供关于 CPU 利用率和内存的数据分析。

随即会出现一个面板,显示有关实例的当前内存和 CPU 利用率的数据分析。提供以下信息类别以及一些支持图表。

字段 说明和相关指标
最大 CPU 利用率 最大 CPU 利用率(百分比)。
database/cpu/utilization 相关。
最大内存利用率 最大内存利用率(百分比)。
database/memory/utilization 相关。

下表列出了 Cloud SQL 超额预配实例 Recommender 可能生成的数据分析和建议,以帮助您减少费用。gcloud 和 API 结果中显示子类型。

数据分析 建议
根据当前的 CPU 利用率趋势,该实例被标记为超额预配。
子类型:LOW_CPU_UTILIZATION
减少 vCPU 数量或切换到 vCPU 较少的机器。
子类型:CHANGE_INSTANCE_SIZE
根据当前的内存利用率趋势,实例被标记为超额预配。
子类型:LOW_MEMORY_UTILIZATION
降低内存要求或改为使用内存较小的机器。
子类型:CHANGE_INSTANCE_SIZE

采纳建议

请仔细评估建议,并执行以下任何操作:

  • 如需检查建议,请点击查看实例

    页面顶部会显示一条横幅,以为您提供建议。

    根据需要修改实例,以减少 vCPU 或内存。或者,改为使用 vCPU 和内存较少的机器类型。您无需完全按照建议调整实例容量。根据您打算预配实例的方式,判断实例大小。 请注意,大小越大,操作延迟时间就越长。

  • 如需忽略建议,使其被取消突出显示并呈灰显状态,请点击忽略

  • 如需关闭面板而不应用或忽略建议,请点击取消

您还可以将这些建议导出到 BigQuery,然后使用 Looker 数据洞察Looker 进行检查。

后续步骤