云服务可观测

可观测监控 Prometheus 版支持接入多款阿里云云产品监控数据,并提供默认Grafana大盘和告警规则。本文以阿里云RDS MySQL为例演示如何将云产品接入可观测监控 Prometheus 版,其他云产品的接入类似。

前提条件

步骤一:接入云服务监控数据

  1. 登录ARMS控制台

  2. 在左侧导航栏单击接入中心

  3. 接入中心页面,单击左侧数据库页签,然后单击阿里云 RDS 数据库

    image

    说明
    • 由于Prometheus依赖阿里云企业云监控服务获取云产品监控数据,如果当前账号没有开通企业云监控服务,页面会提示您先开通企业云监控服务,单击立即开通,进入企业云监控开通页面,具体步骤,请参见开通企业云监控。开通完成后,单击重新检测,即可继续进行RDS MySQL监控数据的接入。

    • 开通企业云监控是异步操作,重新检测后如果仍然是未开通状态,可以等待10~20秒左右再单击重新检测

  4. 在弹出的页面中,在接入开始页签下,选择数据存储的地域,然后单击确定,大概需要等待1~2分钟,即可完成RDS MySQL监控数据的接入。

    说明
    • Prometheus不仅收集其所在区域的RDS MySQL数据,而且汇总当前用户所有区域内的RDS MySQL数据至单个Prometheus实例。建议将Prometheus实例部署在您常用的阿里云区域中。

    • 可观测监控 Prometheus 版在通过企业云监控接入云服务监控指标时,支持在云监控本身标签的基础上,将实例的元数据(例如实例ID或实例标签)作为指标的标签富化到该实例相关的监控指标上。有以下两种场景:一种是默认写入通用标签,另一种是您可以自定义将实例上的Tag作为标签写入指标。

      • 默认写入通用标签

        具体的标签会依据云产品的类型而有所不同,因此Prometheus在收集指标过程中,会把实例相关的其他元数据信息以标签形式附加至相应指标上。

        标签名

        说明

        id

        实例ID。

        instanceName

        实例名称。

        resourceGroupId

        资源组ID。

        resourceGroupName

        资源组名。

        regionId

        实例区域。

        zoneId

        可用区。

        userId

        主账号ID。

        namespace

        接入环境ID。

        product

        所属云产品。

        measure

        云监控对应的指标名。

        measure_desc

        云监控对应的指标描述。

      • 自定义标签

        云产品实例上带有o11y.aliyun.dev/前缀的标签也将被包含在指标数据中。例如,若实例标签是o11y.aliyun.dev/project=abc,则在监控指标里会增加一个新的标签project=abc

步骤二:查看监控大盘

  1. 登录ARMS控制台

  2. 在左侧导航栏单击接入管理

  3. 接入管理页面的已接入环境页签中,选择云服务区域环境

  4. 云服务区域环境列表中,单击目标环境名称进入云服务环境详情页面。

  5. 组件管理页签的组件类型区域单击大盘,即可查看内置的Grafana大盘。

    image

步骤三:配置告警

  1. 登录Prometheus控制台

  2. 在左侧导航栏单击接入管理

  3. 接入管理页面的已接入环境页签中,选择云服务区域环境

  4. 云服务区域环境列表中,单击目标环境名称进入云服务环境详情页面。

  5. 组件管理组件类型区域单击告警规则,即可查看内置的告警规则。

    image

说明

内置的告警规则会产生告警事件,但是不会进行告警通知,如果您希望将告警通知发送到邮件或其他平台,可以单击编辑配置通知方式。在告警配置页面,您也可以自定义告警阈值、持续时间、告警内容等。有关告警详细配置的信息,请参见创建Prometheus告警规则

image

说明

在极简模式下,您可以设置告警的通知对象、通知时段和重复策略。

步骤四:自定义云产品全局仪表盘

若您想根据个性化需求定制Grafana仪表盘,您可以创建Grafana工作空间并在其中自行设计仪表盘。具体操作步骤如下:

创建自定义工作区

  1. 登录ARMS控制台

  2. 在左侧导航栏单击接入管理

  3. 接入管理页面的已接入环境页签中,选择云服务区域环境

  4. 云服务区域环境列表中,单击目标环境名称进入云服务环境详情页面。

  5. 组件管理页签下,单击基本信息下的默认指标存储对应的名称。

    image

  6. 进入Prometheus实例后,在设置页签下,单击基础信息区块下的新建工作区

    image

  7. 创建工作区页面,按照页面提示完成参数配置,然后单击立即创建

修改Grafana工作区

创建完成之后,返回到Prometheus实例设置页面,单击image,在弹出的下拉菜单中选择您刚创建的工作区,单击确认,然后再次单击确认

image

登录Grafana

  1. 登录Prometheus控制台

  2. 在左侧导航栏单击实例列表,进入可观测监控 Prometheus 版的实例列表页面。

  3. 单击目标实例grafana 工作区列的名称,登录Grafana。

    image

创建云资源监控大盘

说明
  • 本文以创建ECS和RDS监控数据的云资源监控大盘为例,添加其他云产品的步骤类似。

  • 本文以Grafana 10.0.x版本为例进行说明。

创建ECS监控图标

  1. Dashboards页签下,单击+ Create Dashboard,然后单击+ 添加可视化,进入Select data source页面,选择默认的数据源。

    image

  2. 单击页面右上角下拉框,选择Table

  3. 在页面左下角单击+ Query添加BC,在ABC区域的右侧分别单击Code

    1. ABC区域的Metrics browser对应的代码块中分别写入以下代码。

      区块

      代码

      A

      avg(AliyunEcs_cpu_total{})by(regionId,instanceId,instanceName)

      B

      avg(AliyunEcs_memory_usedutilization{})by(regionId,instanceId,instanceName)

      C

      avg(AliyunEcs_net_tcpconnection{state="ESTABLISHED"})by(regionId,instanceId,instanceName)

    2. 分别单击ABC区域的Options,选择Format的类型为Table,选择Type的类型为Instant

    image

  1. 单击页面右下角Transform

    1. 单击+ Add transformation,在弹出的搜索框中搜索Merge,然后单击Merge进行添加。

    2. 再次单击+ Add transformation,在弹出的搜索框中搜索Organize fields,然后单击Organize fields进行添加。

    3. 单击Time前面的image,然后按照下表填写表格。

      标签

      instanceId

      实例ID

      instanceName

      实例名称

      regionId

      区域

      Value #A

      CPU使用率(%)

      Value #B

      内存利用率(%)

      Value #C

      连接数

      image

  1. 在页面右侧单击Overrides,设置相应参数。

    1. 单击+ Add field override,选择Fields with name,然后在下拉框中分别选择CPU使用率(%)内存利用率(%)

    2. 单击Override 1区域和Override 2中的+ Add override property,在下拉框中选择Cell options > Cell type,然后在下拉框中选择GaugeGauge display modeValue display按照下表所示进行选择。

      标签

      Gauge display mode

      Retor LCD

      Value display

      Text color

    image

  1. 单击右上角Save进行保存。

创建RDS监控图表

  1. 在创建完成ECS监控图标后,单击页面右上角image,在下拉框中选择可视化

  2. 单击页面左侧Date source对应的下拉框,选择默认的数据源。

    image

  3. 在页面右上角搜索框搜索选择Table

  4. 在页面左下角单击+ Query添加BC,在ABC区域的右侧分别单击Code

    1. ABC区域的Metrics browser对应的代码块中分别写入以下代码。

      区块

      代码

      A

      avg(AliyunRds_CpuUsage{engine="MySQL"})by(regionId,instanceId,instanceName)

      B

      avg(AliyunRds_MemoryUsage{engine="MySQL"})by(regionId,instanceId,instanceName)

      C

      avg(AliyunRds_DiskUsage{engine="MySQL"})by(regionId,instanceId,instanceName)

    2. 分别单击ABC区域的Options,选择Format的类型为Table,选择Type的类型为Instant

  5. 单击页面右下角Transform

    1. 单击+ Add transformation,在弹出的搜索框中搜索Merge,然后单击Merge进行添加。

    2. 再次单击+ Add transformation,在弹出的搜索框中搜索Organize fields,然后单击Organize fields进行添加。

    3. 单击Time前面的image,然后按照下表填写表格。

      标签

      Value #A

      CPU使用率(%)

      Value #B

      内存利用率(%)

      Value #C

      磁盘利用率(%)

  6. 在页面右侧单击All,在Panel options标签下,设置TitleRDS实例

  7. 在页面右侧单击Overrides,设置相应参数。

    1. 单击+ Add field override,选择Fields with name,然后在下拉框中分别选择CPU使用率(%)内存利用率(%)磁盘利用率(%)

    2. 单击Override 1区域、Override 2Override 3中的+ Add override property,在下拉框中选择Cell options > Cell type,然后在下拉框中选择GaugeGauge display modeValue display按照下表所示进行选择。

      标签

      Gauge display mode

      Retor LCD

      Value display

      Text color

  8. 单击右上角Save进行保存。