Metrics 监控请求处理

本文介绍了Ambari处理Metrics请求的两个主要部分:Widget相关数据和Metrics数据请求。详细讨论了Widget的种类、数据表结构以及相关请求处理。在Metrics部分,重点解析了Ambari Server通过Ganglia和JMX获取Metrics的过程,并概述了Metrics请求的处理流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 引言

Ambari处理Meterics相关的请求分为两部分:1,widget相关的,负责Metrics消息的布局、显示;2,metrics数据请求,负责获取实时数据。下面主要从这两方面进行讲述。

2 Widget


Ambari Widget属于图形控件,负责收集Metrics属性并进行显示。Widget包括Graph、Gauge、Number、Template等几种类型。常用的是Graph,Number,Gauge三种。下面对这几种类型的Widget做个简单的说明。

1)Graph:Graph 是一种线性或矩形图,它用于显示在某时间内 Service 的某个(可以是多个)Metrics属性,如下所示。
这里写图片描述

2)Gauge:一般用于显示百分比,其值可源于一个或是多个Metrics经过计算后的值,如下所示。
这里写图片描述
  3)Number:直接显示一个数,可以为其定值单位,如下所示。
这里写图片描述

2.1 Widget相关的数据表


Ambari在启动初始化时,会从相关目录下读取服务定义的widget信息,并将信息存入到数据库中。相关的表包括:1) (这里Ambari底层使用的是MySQL数据库)
  1)Widget:存储所有的widget定义员数据,包括id,widget_name, 对应的Metrics,widget_values,properties等数据;
  这里写图片描述
 
 2)widget_layout:记录显示面板元数据。每个服务包括两个大的显示面板,serviceName_summary和serviceName_heatmap。另外,每个用户的又有自己的widget_layout,即每个用户可以自定义自己感兴趣的监控图表。如系统中存储用户admin,test用户,则可能有hdfs_summary和serviceName_heatmap两个section,其中对于hdfs_summary section,存在admin_hdfs_dashboard、test_hdfs_dashboard、admin_hdfs_heatmap和test_hdfs_heatmap (另外,在数据库中,当test用户访问了hdfs heapmap监控区,数据表中才会创建出test_hdfs_heatmap layout这条记录)。在widget_layout数据表中主要存储用户图表监控区的元数据,如id ,layout_name, section_name等。
这里写图片描述

3)widget_layout_user_widget:和widget_layout表对应,描述每个widget_layout中包含那些widget其widget的顺序;
这里写图片描述

4)users:描述Ambari用户信息,其中active_widget_layouts为一个widget_layout列表,描述用户访问、定制的widget_layout信息。
这里写图片描述


2.2Widget相关请求


在用户登录Ambari时,会出查询用户当前的活跃的widget_layout列表,获取当前需要显示的widget_layout,然后查询该widget_layout中所有包含的widget,并进行显示(在显示时,或根据Widget的property,发出相关的metrics请求,获取metrics数据)。相关API包括:
  1)查询所有的widget: get http://ambari_server:port/api/v1/clusters/ClusterName/widgets/
或:
get http://ambari_server:port/api/v1/clusters/ClusterName/widgets?widgetinfo/scope=USER&widgetinfo/author=admin&fields=*
  2)根据widge ID 查询某个widget 信息:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值