关于hadoop的运行的一些指标监控(非cdh平台的)
在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页面查看只需要:
df1:50070/jmx
df2:50075/jmx
df3: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的运行的一些指标监控(非cdh平台的)的更多相关文章
- Amazon EMR(Elastic MapReduce):亚马逊Hadoop托管服务运行架构&Hadoop云服务之战:微软vs.亚马逊
http://s3tools.org/s3cmd Amazon Elastic MapReduce (Amazon EMR)简介 Amazon Elastic MapReduce (Amazon EM ...
- SpringBoot第十二集:度量指标监控与异步调用(2020最新最易懂)
SpringBoot第十二集:度量指标监控与异步调用(2020最新最易懂) Spring Boot Actuator是spring boot项目一个监控模块,提供了很多原生的端点,包含了对应用系统的自 ...
- 图解JanusGraph系列 - JanusGraph指标监控报警(Monitoring JanusGraph)
大家好,我是洋仔,JanusGraph图解系列文章,实时更新~ 图数据库文章总目录: 整理所有图相关文章,请移步(超链):图数据库系列-文章总目录 源码分析相关可查看github(码文不易,求个sta ...
- 【03】SpringBoot2核心技术-核心功能—数据访问_单元测试_指标监控
3.数据访问(SQL) 3.1 数据库连接池的自动配置-HikariDataSource 1.导入JDBC场景 <dependency> <groupId>org.spring ...
- 业务监控-指标监控(v1)
最近做了指标监控系统的后台,包括需求调研.代码coding.调试调优测试等,穿插其他杂事等前后花了一个月左右. 指标监控指的是用户通过接口上传某些指标信息,并且通过配置阈值公式和告警规则等信息监测自己 ...
- 利用Mahout实现在Hadoop上运行K-Means算法
利用Mahout实现在Hadoop上运行K-Means算法 一.介绍Mahout Mahout是Apache下的开源机器学习软件包,目前实现的机器学习算法主要包含有协同过滤/推荐引擎,聚类和分类三个部 ...
- Hadoop学习总结之五:Hadoop的运行痕迹
Hadoop学习总结之五:Hadoop的运行痕迹 Hadoop 学习总结之一:HDFS简介 Hadoop学习总结之二:HDFS读写过程解析 Hadoop学习总结之三:Map-Reduce入门 Ha ...
- Hadoop的运行痕迹
http://www.cnblogs.com/forfuture1978/archive/2010/11/23/1884967.html 一篇讲的很好的 hadoop 基本运行环境配置信息
- Hadoop源码分析(3): Hadoop的运行痕迹
在使用hadoop的时候,可能遇到各种各样的问题,然而由于hadoop的运行机制比较复杂,因而出现了问题的时候比较难于发现问题. 本文欲通过某种方式跟踪Hadoop的运行痕迹,方便出现问题的时候可以通 ...
随机推荐
- Codeforces Round #554 (Div. 2)自闭记
A 签到 #include<bits/stdc++.h> using namespace std; ],t[],ans; int main() { scanf("%d%d&quo ...
- iOS程序员 如何做到升职加薪,5年 开发经验 码农 笔记送给你!
前言: 对于我们绝大多数人来说,工作最基本的意义是我们可以通过自己的劳动换取酬劳来养活自己,尤其是对于刚毕业的学生,拥有一份全日制的工作意味着自己走出校园,踏上社会,自己真正开始独立起来. 在养活自己 ...
- js重点--this关键字
推荐博客:https://www.cnblogs.com/huaxili/p/5407559.html this是JavaScript的一个关键字,表示的不是对象本身,而是指被调用的上文. 主要用于以 ...
- 一文了解Python的线程
问题 什么是线程? 如何创建.执行线程? 如何使用线程池ThreadPoolExecutor? 如何避免资源竞争问题? 如何使用Python中线程模块threading提供的常用工具? 目录 1. 什 ...
- Linux下nc命令的使用
nc命令的作用 实现任意TCP/UDP端口的侦听,nc可以作为server以TCP或UDP方式侦听指定端口 端口的扫描,nc可以作为client发起TCP或UDP连接 机器之间传输文件 机器之间网络测 ...
- 树莓派的系统安装,并且利用网线直连 Mac 进行配置
最近单位给了我一个新的树莓派3B+让我自己玩.下面是我记录的我如何安装 Raspbian Stretch Lite 系统,然后如何成功不用独立显示屏而利用 MacBook 对其进行配置. 安装 Ras ...
- ModBus-RTU详解
Modbus 一个工业上常用的通讯协议.一种通讯约定.Modbus协议包括RTU.ASCII.TCP.其中MODBUS-RTU最常用,比较简单,在单片机上很容易实现.虽然RTU比较简单,但是看协议 ...
- Now you can provide attr "wx:key" for a "wx:for" to improve performance. 微信小程序警告
Now you can provide attr "wx:key" for a "wx:for" to improve performance为警告,不处理不影 ...
- 解决MySQL Access denied for user 'root'@'IP地址' 问题
1.mysql -u root -p 登陆进MYSQL: 2.执行以下命令: GRANT ALL PRIVILEGES ON *.* TO 'your name'@'%' IDENTIFIED BY ...
- NPOI 读取excel的时候,时间格式的处理
excel的时间格式是:CellType.Numeric 要判断时间还需要方法:DateUtil.IsCellDateFormatted(cell)的帮助: 示例代码如下: ICell cell = ...