监控虚拟机扩展程序

监控虚拟机扩展程序的健康状况和性能有助于您管理资源使用情况,并解决整个 Compute Engine 实例舰队中的问题。您可以使用 Cloud Monitoring 信息中心直观呈现资源使用情况(例如 CPU 或内存消耗),并配置提醒政策,以便在发生安装失败等事件时收到通知。

本文档介绍了如何使用 Cloud Monitoring 监控 Compute Engine 实例上由虚拟机扩展程序管理器管理的虚拟机扩展程序,并帮助您执行以下操作:

准备工作

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

    选择标签页以了解您打算如何使用本页面上的示例:

    控制台

    当您使用 Google Cloud 控制台访问 Google Cloud 服务和 API 时,无需设置身份验证。

    gcloud

    1. 安装 Google Cloud CLI。 安装完成后,运行以下命令来初始化 Google Cloud CLI:

      gcloud init

      如果您使用的是外部身份提供方 (IdP),则必须先使用联合身份登录 gcloud CLI。

  • 设置默认区域和可用区。
  • REST

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

      安装 Google Cloud CLI。

      如果您使用的是外部身份提供方 (IdP),则必须先使用联合身份登录 gcloud CLI。

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

准备工作

在监控扩展程序之前,请确保您已完成以下操作:

所需 IAM 角色

如需获得监控指标和创建信息中心所需的权限,请让管理员向您授予项目的以下 IAM 角色。

如需获得监控指标和管理信息中心所需的权限,请让您的管理员为您授予以下 IAM 角色:

  • 查看指标和信息中心:项目的 Monitoring Viewer (roles/monitoring.viewer)
  • 创建和管理信息中心和提醒政策:项目的 Monitoring Editor (roles/monitoring.editor)

如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。

这些预定义角色包含监控指标和管理信息中心所需的权限。如需查看所需的确切权限,请展开所需权限部分:

所需权限

如需监控指标和管理信息中心,需要具备以下权限:

  • 查看信息中心:项目的 monitoring.dashboards.get 权限
  • 创建信息中心:项目的 monitoring.dashboards.create 权限
  • 设置提醒:项目的 monitoring.alertPolicies.create 权限

您也可以使用自定义角色或其他预定义角色来获取这些权限。

如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。

您也可以通过自定义角色或其他预定义角色来获取所需的权限。

适用于虚拟机扩展程序的指标

您可以在 Monitoring 中使用以下指标来监控虚拟机扩展程序:

指标名称 指标类型 说明
虚拟机扩展程序强制执行状态 compute.googleapis.com/vm_extensions/extension/enforcement_status Compute Engine 虚拟机扩展程序的强制执行状态。标签包括 extension_name 和 status。

如需查看扩展程序名称列表,请参阅支持的扩展程序。

status 的可能值如下:

  • ENFORCEMENT_STATE_UNSPECIFIED
  • INSTALLING
  • INSTALL_FAILED
  • INSTALLED
  • ROLLING_BACK
  • ROLLBACK_FAILED
  • ROLLED_BACK
  • INCOMPATIBLE
  • REMOVING
  • SERVICE_DISABLED
  • APPLYING_CONFIG
虚拟机扩展程序健康状况 compute.googleapis.com/vm_extensions/extension/health_status 虚拟机扩展程序的运行状况。标签包括 extension_name 和 status。

如需查看扩展名称列表,请参阅支持的扩展。

status 的可能值如下:
  • HEALTH_STATUS_UNSPECIFIED
  • STARTING
  • RUNNING
  • STOPPING
  • STOPPED
  • CRASHED
虚拟机扩展程序 CPU 最大用量 compute.googleapis.com/vm_extensions/extension/cpu/max_usage 虚拟机扩展程序使用的最大 CPU 时间,以百分比表示。
虚拟机扩展程序内存用量上限(字节) compute.googleapis.com/vm_extensions/extension/memory/used_bytes 虚拟机扩展程序的内存用量上限(以字节为单位)。

构建自定义监控信息中心

您可以根据自己的使用情形,使用最相关的虚拟机扩展程序图表构建 Monitoring 信息中心。如需将图表添加到信息中心,请按以下步骤操作:

  1. 在 Google Cloud 控制台中,选择 Monitoring:

    转至 Resources

  2. 在导航窗格中,选择信息中心。
  3. 点击创建信息中心。
  4. 点击添加微件。
  5. 在添加微件窗口中,对于数据,选择指标。
  6. 如需选择指标,请展开选择指标菜单,然后执行以下操作:
    1. 在活跃资源部分,选择虚拟机实例。
    2. 对于指标类别,请选择 Vm_extensions。
    3. 对于指标,请选择一个指标,例如虚拟机扩展程序健康状况。如需查看可用指标的列表,请参阅用于监控虚拟机扩展的可用指标。
    4. 点击应用。

您可以根据需要向信息中心添加任意数量的图表。如需了解详情,请参阅创建和管理自定义信息中心。

设置提醒政策

通过 Monitoring,您可以创建提醒并在指标超过指定阈值时收到通知。例如,当扩展程序的健康状况变为 CRASHED 时,您可以收到通知。

  1. 在 Google Cloud 控制台中,选择 Monitoring。

    转至 Resources

  2. 在导航窗格中,选择提醒。
  3. 点击创建政策。
  4. 在创建提醒政策页面上,定义提醒发出条件和通知渠道。
    1. 如需选择指标,请展开选择指标菜单,然后执行以下操作:
      1. 在活跃资源部分,选择虚拟机实例。
      2. 对于指标类别,请选择 Vm_extensions。
      3. 对于指标,选择一个指标,例如虚拟机扩展程序强制执行状态。如需查看可用指标的列表,请参阅可用于监控虚拟机扩展程序的指标。
      4. 点击应用。
    2. 配置触发条件,例如检查 status 标签是否为 INSTALL_FAILED。
  5. 按照提示添加通知渠道并为政策命名。
  6. 点击创建政策。

如需了解详情,请参阅创建提醒政策。

后续步骤