配置

修改$HADOOP_HOME/etc/hadoop/hadoop-env.sh

# 在配置namenode和datanode时都会有用到JMX_OPTS的代码,是为了减少重复提取出的公共代码
export JMX_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.port"
# 在源hadoop-env.sh中存在$JMX_OPTS之前的代码,JMX_OPTS=8006表示设置jmx的端口
export HADOOP_NAMENODE_OPTS="-Dhadoop.security.logger=${HADOOP_SECURITY_LOGGER:-INFO,RFAS} -Dhdfs.audit.logger=${HDFS_AUDIT_LOGGER:-INFO,NullAppender} $HADOOP_NAMENODE_OPTS $JMX_OPTS=8006"
export HADOOP_DATANODE_OPTS="-Dhadoop.security.logger=ERROR,RFAS $HADOOP_DATANODE_OPTS $JMX_OPTS=8007"
export HADOOP_SECONDARYNAMENODE_OPTS="-Dhadoop.security.logger=${HADOOP_SECURITY_LOGGER:-INFO,RFAS} -Dhdfs.audit.logger=${HDFS_AUDIT_LOGGER:-INFO,NullAppender} $HADOOP_SECONDARYNAMENODE_OPTS $JMX_OPTS=8060"

web页面查看

IP 访问地址
192.168.20.10 http://dev01:50070/jmx
192.168.20.11 http://dev02:50075/jmx
192.168.20.12 http://dev02:50075/jmx

Hadoop监控项

指标信息来源:http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/Metrics.html

NameNode

JVM监控项

Hadoop:service=NameNode,name=JvmMetrics

JvmMetrics 主要统计的信息包括:内存的使用状态信息; GC 的统计信息;线程的统计信息;以及事件的统计信息。

类型 指标项 说明
内存 MemNonHeapUsedM JVM 当前已经使用的 NonHeapMemory 的大小
内存 MemNonHeapMaxM JVM 配置的 NonHeapMemory 的大小
内存 MemHeapUsedM JVM 当前已经使用的 HeapMemory 的大小
内存 MemHeapMaxM JVM 配置的 HeapMemory 的大小
内存 MemMaxM JVM 运行时的可以使用的最大的内存的大小
GC GcCount GC次数
线程 ThreadsNew 当前线程的处于 NEW 状态下的线程数量
线程 ThreadsRunnable 当前线程的处于 RUNNABLE 状态下的线程数量
线程 ThreadsBlocked 当前线程的处于 BLOCKED 状态下的线程数量
线程 ThreadsWaiting 当前线程的处于 WAITING 状态下的线程数量
线程 ThreadsTimedWaiting 当前线程的处于 TIMED_WAITING 状态下的线程数量
线程 ThreadsTerminated 当前线程的处于 TERMINATED 状态下的线程数量
事件 LogFatal 固定时间间隔内的 Fatal 的数量
事件 LogError 固定时间间隔内的 Error 的数量
事件 LogWarn 固定时间间隔内的 Warn 的数量
事件 LogInfo 固定时间间隔内的 Info 的数量

FSNamesystem

Hadoop:service=NameNode,name=FSNamesystem
指标项 说明
MissingBlocks 当前遗失的block数量
ExpiredHeartbeats 失去心跳的总数量
TransactionsSinceLastCheckpoint 自上次检查点以来的事务总数
TransactionsSinceLastLogRoll 自上次编辑日志卷以来的事务总数
LastCheckpointTime 从上一个检查点以来的时间(毫秒)
CapacityTotal 当前数据节点的原始容量(以字节为单位)
CapacityUsed 当前在所有DataNode中使用的容量(以字节为单位)
CapacityRemaining 当前剩余容量(字节)
CapacityUsedNonDFS DataNodes用于非DFS目的的当前空间(以字节为单位)
TotalLoad 当前连接数
SnapshottableDirectories 可快照目录的当前数量
FilesTotal 当前文件和目录的数量
PendingDataNodeMessageCount 待机NameNode中用于以后处理的挂起的与块相关的消息的当前数量
StaleDataNodes 由于心跳延迟而标记为过期的DataNodes当前数目
Hadoop:service=NameNode,name=FSNamesystemState
指标项 说明
BlocksTotal 系统中当前分配的块数
NumLiveDataNodes 当前运行的数据节点数量
NumDeadDataNodes 当前死亡的数据节点数
VolumeFailuresTotal 所有Datanodes的卷故障总数
EstimatedCapacityLostTotal 容量故障导致的总容量损失估计

RPC

Hadoop:service=NameNode,name=RpcActivityForPort9000(需要进一步确认)
指标项 说明
ReceivedBytes 接收字节总数
SentBytes 发送字节总数
RpcQueueTimeNumOps RPC调用总数
RpcQueueTimeAvgTime RPC队列平均时间(以毫秒为单位)

NameNodeActivity

Hadoop:service=NameNode,name=NameNodeActivity
指标项 说明
CreateFileOps 创建文件的操作总数
FilesRenamed 重命名操作的总数(不是重命名的文件或目录数量)
DeleteFileOps 删除文件的操作总数

DataNode

JVM监控项

Hadoop:service=DataNode,name=JvmMetrics

JvmMetrics 主要统计的信息包括:内存的使用状态信息; GC 的统计信息;线程的统计信息;以及事件的统计信息。

类型 指标项 说明
内存 MemNonHeapUsedM JVM 当前已经使用的 NonHeapMemory 的大小
内存 MemNonHeapMaxM JVM 配置的 NonHeapMemory 的大小
内存 MemHeapUsedM JVM 当前已经使用的 HeapMemory 的大小
内存 MemHeapMaxM JVM 配置的 HeapMemory 的大小
内存 MemMaxM JVM 运行时的可以使用的最大的内存的大小
GC GcCount GC次数
线程 ThreadsNew 当前线程的处于 NEW 状态下的线程数量
线程 ThreadsRunnable 当前线程的处于 RUNNABLE 状态下的线程数量
线程 ThreadsBlocked 当前线程的处于 BLOCKED 状态下的线程数量
线程 ThreadsWaiting 当前线程的处于 WAITING 状态下的线程数量
线程 ThreadsTimedWaiting 当前线程的处于 TIMED_WAITING 状态下的线程数量
线程 ThreadsTerminated 当前线程的处于 TERMINATED 状态下的线程数量
事件 LogFatal 固定时间间隔内的 Fatal 的数量
事件 LogError 固定时间间隔内的 Error 的数量
事件 LogWarn 固定时间间隔内的 Warn 的数量
事件 LogInfo 固定时间间隔内的 Info 的数量

DataNodeActivity

Hadoop:service=DataNode,name=DataNodeActivity-dev02-50010(需要进一步确认)
指标项 说明
BytesWritten 写入DataNode的字节总数
BytesRead 读取DataNode的字节总数
ReadsFromLocalClient 从本地客户端读取操作的总数
ReadsFromRemoteClient 来自远程客户端的读取操作总数
WritesFromLocalClient 本地客户端的写操作总数
WritesFromRemoteClient 远程客户端的写操作总数
RemoteBytesRead 远程客户端读取的字节数
RemoteBytesWritten 远程客户端写入的字节数
RamDiskBytesWrite 写入内存的字节总数
VolumeFailures 发生的卷故障总数
ReadBlockOpNumOps 读操作总数
WriteBlockOpNumOps 写操作总数
ReadBlockOpAvgTime 读操作的平均时间(以毫秒为单位)
WriteBlockOpAvgTime 写操作的平均时间(以毫秒为单位)
TotalWriteTime 写操作花费的总毫秒数
TotalReadTime 读操作花费的总毫秒数

RPC

Hadoop:service=DataNode,name=RpcActivityForPort50020(需要进一步确认)
指标项 说明
ReceivedBytes 接收字节总数
SentBytes 发送字节总数
RpcQueueTimeNumOps RPC调用总数
RpcQueueTimeAvgTime RPC队列平均时间(以毫秒为单位)

Hadoop监控指标项的更多相关文章

  1. kafka监控指标项

    监控配置 ​ kafka基本分为broker.producer.consumer三个子项,每一项的启动都需要用到 $KAFKA_HOME/bin/kafka-run-class.sh 脚本,在该脚本中 ...

  2. hbase 监控指标项

    名词解释 JMX:Java Management Extensions,用于用于Java程序扩展监控和管理项 GC:Garbage Collection,垃圾收集,垃圾回收机制 指标项来源 主机名 u ...

  3. Hbase监控指标项

    名词解释 JMX:Java Management Extensions,用于用于Java程序扩展监控和管理项 GC:Garbage Collection,垃圾收集,垃圾回收机制 指标项来源 主机名 u ...

  4. Flume监控指标项

    配置监控 1.修改flume-env.sh export JAVA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmx ...

  5. Hadoop记录-Hadoop监控指标汇总

    系统参数监控metrics load_one            每分钟的系统平均负载 load_fifteen        每15分钟的系统平均负载 load_five           每5 ...

  6. Spark指标项监控

    监控配置 spark的监控主要分为Master.Worker.driver.executor监控.Master和Worker的监控在spark集群运行时即可监控,Driver和Excutor的监控需要 ...

  7. Hadoop记录- zookeeper 监控指标

    目前zookeeper获取监控指标已知的有两种方式: 1.通过zookeeper自带的 four letter words command 获取各种各样的监控指标 2.通过JMX Client连接zo ...

  8. Hadoop记录-Hadoop集群重要监控指标

    通用监控指标 对于每个RPC服务应该监控 RpcProcessingTimeAvgTime(PRC处理的平均时间) 通常hdfs在异常任务突发大量访问时,这个参数会突然变得很大,导致其他用户访问hdf ...

  9. Linux CPU监控指标

    Linux CPU监控指标 Linux提供了非常丰富的命令可以进行CPU相关数据进行监控,例如:top.vmstat等命令.top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执 ...

随机推荐

  1. Threadlocal线程本地变量理解

    转载:https://www.cnblogs.com/chengxiao/p/6152824.html 总结: 作用:ThreadLocal 线程本地变量,可用于分布式项目的日志追踪 用法:在切面中生 ...

  2. Codeforces 1220E. Tourism

    传送门 这是一道英语题,首先要读懂题目: $\text{Alex believes that his trip will be interesting only if he will not use ...

  3. windows下生成zlib1.dll

    一.原料: VC zlib-1.2.3-src.zip 二.解压zlib-1.2.3-src.zip,用VC打开工作空间 src/zlib/1.2.3/zlib-1.2.3/projects/visu ...

  4. leecode刷题(26)-- 用栈实现队列

    leecode刷题(26)-- 用栈实现队列 用栈实现队列 使用栈实现队列的下列操作: push(x) -- 将一个元素放入队列的尾部. pop() -- 从队列首部移除元素. peek() -- 返 ...

  5. git bash中不能显示中文

    git bash中不能显示中文 问题描述:当使用git log查看提交日志时,中文字符不能正常显示问题 1.首先把git的配置改一下 git config --global core.quotepat ...

  6. IDEA导入Eclipse 非Maven的Web项目

  7. 098、Swarm 如何实现 Failover (Swarm05)

    参考https://www.cnblogs.com/CloudMan6/p/7898245.html   故障是在所难免的,容器可能崩溃,Docker Host 可能宕机,不过幸运的是,Swarm 已 ...

  8. 利用python3 爬虫 定制版妹子图mzitu爬取

    在刚开始学爬虫的时候,用来练手的基础爬虫就是爬取各种妹子图片,前几天同时说了这个,便准备随便写一个...最后发现真是三天不练..什么都记不住了!!所以花了政治一天重新写了一个爬虫程序,并且支持按照时间 ...

  9. tensorflow源码分析

    前言: 一般来说,如果安装tensorflow主要目的是为了调试些小程序的话,只要下载相应的包,然后,直接使用pip install tensorflow即可. 但有时我们需要将Tensorflow的 ...

  10. 01--springmvc分布式项目Web项目配置

    springmvc的配置文件,放在resources目录下: 文件名:applicationContext-mvc.xml <?xml version="1.0" encod ...