HDFS & Yarn 即Hadoop by Jmx on Promethues + Grafana的监控(二) —— Promethues数据源配置

注意:如果还未安装Promethues,参考HDFS & Yarn on Promethues + Grafana的监控(一) —— Promethues的安装

一、配置Promethues的数据源

1、下载jmx_prometheus_javaagent-0.13.0.jar包:

wget https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/0.13.0/jmx_prometheus_javaagent-0.13.0.jar

2、配置jmx和promethues的连接

(1)创建一个文件夹并在这个文件夹下创建不同jmx的配置yaml(此步骤在各自的节点都要有这个配置文件)

a、创建文件夹

cd /data
mkdir hdfs

b、在/data/hdfs/目录下创建NameNode的JMX配置文件 (此步骤在各自的节点都要有这个配置文件)

vim /data/hdfs/nn.yaml

startDelaySeconds: 0
hostPort: 10.21.0.86:6444
ssl: false
lowercaseOutputName: false
lowercaseOutputLabelNames: false

c、在/data/hdfs/目录下创建DateNode的JMX配置文件 (此步骤在各自的节点都要有这个配置文件)

vim /data/hdfs/dn.yaml

startDelaySeconds: 0
hostPort: 10.21.0.86:6454
ssl: false
lowercaseOutputName: false
lowercaseOutputLabelNames: false

d、在/data/hdfs/目录下创建ResourceManager的JMX配置文件 (此步骤在各自的节点都要有这个配置文件)

vim /data/hdfs/rm.yaml

tartDelaySeconds: 0
#master为本机IP(一般可设置为localhost);6464为想设置的jmx端口
hostPort: 10.21.0.86:6464
ssl: false
lowercaseOutputName: false
lowercaseOutputLabelNames: false

e、在/data/hdfs/目录下创建NodeManager的JMX配置文件 (此步骤在各自的节点都要有这个配置文件)

vim /data/hdfs/nm.yaml

startDelaySeconds: 0
#master为本机IP(一般可设置为localhost);6474为想设置的jmx端口(可设置为未被占>用的端口)
hostPort: 10.21.0.86:6474
ssl: false
lowercaseOutputName: false
lowercaseOutputLabelNames: false

(2)CDH版本&开源社区版本集群都建议这么弄:

a、修改hadoop的bin/hdfs这个启动命令文件,只需在上方加入下面这个环境变量

cdh的目录在这:/opt/cloudera/parcels/CDH/lib/hadoop-hdfs/bin/hdfs

##hdfs jmx monitor##
#######################
export HADOOP_NAMENODE_OPTS="-Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.port=6444 -javaagent:/data/hdfs/jmx_prometheus_javaagent-0.13.0.jar=17106:/data/hdfs/nn.yaml $HADOOP_NAMENODE_OPTS"
export HADOOP_DATANODE_OPTS="-Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.port=6454 -javaagent:/data/hdfs/jmx_prometheus_javaagent-0.13.0.jar=17107:/data/hdfs/dn.yaml $HADOOP_DATANODE_OPTS"
#######################

b、在/opt/cloudera/parcels/CDH/lib/hadoop-yarn/bin/yarn

##yarn jmx monitor##
#######################
export YARN_RESOURCEMANAGER_OPTS="-Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.port=6464 -javaagent:/data/hdfs/jmx_prometheus_javaagent-0.13.0.jar=17104:/data/hdfs/rm.yaml $YARN_RESOURCEMANAGER_OPTS"
export YARN_NODEMANAGER_OPTS="-Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.port=6474 -javaagent:/data/hdfs/jmx_prometheus_javaagent-0.13.0.jar=17105:/data/hdfs/nm.yaml $YARN_NODEMANAGER_OPTS"
#######################

注意:当然也可以参考其他大佬配置在/etc/hadoop/conf/hadoop-env.sh里添加这些配置,个人不喜欢去改命令,建议添加环境变量即可

(3)在promethues进行配置(我的promethues的目录是在/usr/local下面)

注意:像下面a、b这样的好处是修改target监控的节点是不用重启Promethues的,而直接配置在prometheus.yml是需要重启的

a、在promethues的目录下建个configs目录,再写好target的json配置文件

mkdir configs
cd configs

vim nn.json
--------------------------------------------------
[
 {
  "targets": ["nn的host:17106"]
 }
]
--------------------------------------------------

vim dn.json
--------------------------------------------------
[
 {
  "targets": ["dn1的host:17107","dn2的host:17107","dn3的host:17107"]
 }
]
--------------------------------------------------

vim rm.json
--------------------------------------------------
[
 {
  "targets": ["rm1host:17104","rm2host:17104"]
 }
]
--------------------------------------------------

vim nm.json
--------------------------------------------------
[
 {
  "targets": ["nm1host:17105","nm2host:17105","nm3host:17105"]
 }
]
--------------------------------------------------

b、再在promethues目录下修改prometheus.yml文件

vim prometheus.yml  
  
  - job_name: 'yarn-rm'
    file_sd_configs:
    - files:
      - configs/rm.json

  - job_name: 'yarn-nm'
    file_sd_configs:
    - files:
      - configs/nm.json

(4)重启prometheus

$ systemctl restart prometheus

二、验证数据源是否配置成功

1、验证是否配置成功,有两种方式:

(1)根据刚才配置target路径访问测试,如果有放回一堆数据,说明配置成功

curl "[http://rm1host:17104/metrics](http://localhost:17107/metrics)"

返回:
# HELP jmx_exporter_build_info A metric with a constant '1' value labeled with the version of the JMX exporter.
# TYPE jmx_exporter_build_info gauge
jmx_exporter_build_info{version="0.13.0",name="jmx_prometheus_javaagent",} 1.0
# HELP process_cpu_seconds_total Total user and system CPU time spent in seconds.
# TYPE process_cpu_seconds_total counter
process_cpu_seconds_total 266.8
# HELP process_start_time_seconds Start time of the process since unix epoch in seconds.
# TYPE process_start_time_seconds gauge
process_start_time_seconds 1.611046723427E9
# HELP process_open_fds Number of open file descriptors.

。。。。**等等 **

(2)或者访问Promethues的9090端口,查看target是否正常。

点击Status再点击Target看是否是绿色,红色则是配置失败

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oKewO9cW-1611311044018)(https://secure-static.wolai.com/static/82j7NqcK7KoNakU8AXuouS/image.png)]

三、配置Grafana

参考我的另外一篇文章 HDFS & Yarn on Promethues + Grafana的监控(三) —— Grafana的Dashboard配置(以 Yarn 为例)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,319评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,801评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,567评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,156评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,019评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,090评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,500评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,192评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,474评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,566评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,338评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,212评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,572评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,890评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,169评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,478评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,661评论 2 335

推荐阅读更多精彩内容