Hadoop监控指标项
配置
修改$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监控指标项的更多相关文章
- kafka监控指标项
监控配置 kafka基本分为broker.producer.consumer三个子项,每一项的启动都需要用到 $KAFKA_HOME/bin/kafka-run-class.sh 脚本,在该脚本中 ...
- hbase 监控指标项
名词解释 JMX:Java Management Extensions,用于用于Java程序扩展监控和管理项 GC:Garbage Collection,垃圾收集,垃圾回收机制 指标项来源 主机名 u ...
- Hbase监控指标项
名词解释 JMX:Java Management Extensions,用于用于Java程序扩展监控和管理项 GC:Garbage Collection,垃圾收集,垃圾回收机制 指标项来源 主机名 u ...
- Flume监控指标项
配置监控 1.修改flume-env.sh export JAVA_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmx ...
- Hadoop记录-Hadoop监控指标汇总
系统参数监控metrics load_one 每分钟的系统平均负载 load_fifteen 每15分钟的系统平均负载 load_five 每5 ...
- Spark指标项监控
监控配置 spark的监控主要分为Master.Worker.driver.executor监控.Master和Worker的监控在spark集群运行时即可监控,Driver和Excutor的监控需要 ...
- Hadoop记录- zookeeper 监控指标
目前zookeeper获取监控指标已知的有两种方式: 1.通过zookeeper自带的 four letter words command 获取各种各样的监控指标 2.通过JMX Client连接zo ...
- Hadoop记录-Hadoop集群重要监控指标
通用监控指标 对于每个RPC服务应该监控 RpcProcessingTimeAvgTime(PRC处理的平均时间) 通常hdfs在异常任务突发大量访问时,这个参数会突然变得很大,导致其他用户访问hdf ...
- Linux CPU监控指标
Linux CPU监控指标 Linux提供了非常丰富的命令可以进行CPU相关数据进行监控,例如:top.vmstat等命令.top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执 ...
随机推荐
- SpringBoot中使用Websocket进行消息推送
WebsocketConfig.java @Configuration public class WebSocketConfig { @Bean public ServerEndpointExport ...
- Linux-1.4文件操作命令(grep,cat,tail,head,less,find,chmod,tail,less)
Linux基础命令(grep,cat,tail,head,less,find,chmod,tail,less) grep(常用) grep 指定“文件”搜索文件内容 grep hello 1.txt ...
- oa_mvc_easyui_后台布局(3)
1.新建HomeController控制器,并创建视图,后台的主页 2.easyUI的引用: <link href="~/Content/default/easyui.css" ...
- ASCII、Unicode、UTF-8、UTF-16、GBK、GB2312、ANSI等编码方式简析
ASCII.Unicode.UTF-8.UTF-16.GBK.GB2312.ANSI等编码方式简析 序言 从各种字节编码方法中,能看到那个计算机发展的洪荒时期的影子. ASCII ASCII码有标准A ...
- 误删除/dec/zero,/dev/null
误删除/dev/zero [root@MYSQL-MONGO145 dev]# mknod /dev/zero c 1 5[root@MYSQL-MONGO145 dev]# chmod 666 /d ...
- call,apply,bind的理解
call,apply,bind均是用于改变this指向. 三者相似之处: 1:都是用于改变函数的this指向. 2:第一个参数都是this要指向的对象. 3:都可以通过后面的参数进行对方法的传参. l ...
- 一个页面两个div(一个柱状图或者折线图一个饼图)
需求是一个页面中两个图,一个饼图一个折线图,接口用的是一个接口,柱状图的图例要隐藏掉,X轴为月份,每月份都有两个数据,也就是图例是两个(进口和出口)的意思饼图需要显示最新月份数据,并且有一个下拉框可以 ...
- LLVM 词典
#LLVM 词典 ## 本文转自https://github.com/oxnz/clang-user-manual/blob/master/LLVM-Language-Reference-Manual ...
- c++ 用模板类实现顺序储存的线性表
首先要注意的一点是模板类在VS中编译时如果将定义和声明分开会出现无法解析的问题,所以一般比较常见的解决的办法是将声明和定义放在同一个头文件中然后统一的调用,下面就是用模板类实现线性表的编写 #prag ...
- windows删除已注册服务
背景:近日,想要学习mysql主从复制,于是想在本地用多个mysql实例进行试验,试验的过程中总是挫折不断,生手不易,安装了很多实例,测试完成之后,想要删除这些实例. 虽然任务管理器可以停止任务,但是 ...