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是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执 ...
随机推荐
- Threadlocal线程本地变量理解
转载:https://www.cnblogs.com/chengxiao/p/6152824.html 总结: 作用:ThreadLocal 线程本地变量,可用于分布式项目的日志追踪 用法:在切面中生 ...
- Codeforces 1220E. Tourism
传送门 这是一道英语题,首先要读懂题目: $\text{Alex believes that his trip will be interesting only if he will not use ...
- 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 ...
- leecode刷题(26)-- 用栈实现队列
leecode刷题(26)-- 用栈实现队列 用栈实现队列 使用栈实现队列的下列操作: push(x) -- 将一个元素放入队列的尾部. pop() -- 从队列首部移除元素. peek() -- 返 ...
- git bash中不能显示中文
git bash中不能显示中文 问题描述:当使用git log查看提交日志时,中文字符不能正常显示问题 1.首先把git的配置改一下 git config --global core.quotepat ...
- IDEA导入Eclipse 非Maven的Web项目
- 098、Swarm 如何实现 Failover (Swarm05)
参考https://www.cnblogs.com/CloudMan6/p/7898245.html 故障是在所难免的,容器可能崩溃,Docker Host 可能宕机,不过幸运的是,Swarm 已 ...
- 利用python3 爬虫 定制版妹子图mzitu爬取
在刚开始学爬虫的时候,用来练手的基础爬虫就是爬取各种妹子图片,前几天同时说了这个,便准备随便写一个...最后发现真是三天不练..什么都记不住了!!所以花了政治一天重新写了一个爬虫程序,并且支持按照时间 ...
- tensorflow源码分析
前言: 一般来说,如果安装tensorflow主要目的是为了调试些小程序的话,只要下载相应的包,然后,直接使用pip install tensorflow即可. 但有时我们需要将Tensorflow的 ...
- 01--springmvc分布式项目Web项目配置
springmvc的配置文件,放在resources目录下: 文件名:applicationContext-mvc.xml <?xml version="1.0" encod ...