监控Hadoop指标

简介: 详细介绍了Hadoop指标的概念、类型和收集方法,包括JVM、RPC、DFS、YARN以及用户和组指标,以及如何配置Hadoop以收集这些指标,从而帮助监控、调试和优化Hadoop集群的性能。

作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。

一.hadoop 2指标概述

  Hadoop 2的指标及其记录系统在性能调查和调试过程中非常有用。与在单个服务器上运行数据库来进行监视和故障排除相比,hadoop的分布式架构使其难以监视集群并诊断问题。

  hadoop的应用程序日志和作业指标提供了有关作业的情况,但是缺少每个作业或每个任务的磁盘和网络使用指标。类似地,任务或应用程序的集群级资源利用率也不可用。因此,原始日志和指标在原始状态下不是非常有用。

  有几个开源监控监控系统开课帮助我们将hadoop提供的指标和日志整合到服务器相关的性能摘要和图标以及报警中。  

  除了Ganglia之外,可能还需要考虑诸如Chukwa之类的工具,Chukwa是用于监控大型分布式系统的数据收集系统,其可帮助我们不熟和管理hadoop集群的Apache Ambari。  

  hadoop用于各个服务的Web UI(如NameNode Web UI和DataNode Web UI),依赖于hadoop自动收集的内部指标,监视这些服务的运行状况。  

  hadoop将其指标分组到几个命名上下文中,例如用于Java虚拟机指标的JVM上下文和用于调试RCP调用的rpc。  

  hadoop指标是宝贵的实时和历史信息资源,可帮助我们排除洁群性能问题,并排查与Hadoop服务及其支持的应用程序相关的问题。在这种情况下,区分Hadoop指标与MapReduce作业计数器很重要。  
    (1)MapReduce作业计数器提供一些诸如应用程序读取和写入的总字节数的信息,而Hadoop指标具有更广泛的关注点,并显示所有有关hadoop服务的信息,如NameNode,JournalNode和DataNode,以及用户和组相关信息;  
    (2)管理员可以查看MapReduce计数器,以了解诸如运行缓慢的MapReduce作业等问题。  
    (3)Hadoop指标应用更广泛,可以这么说,它可以帮助解决和调整所有范围的管理问题,例如NameNode启动时间,身份验证失败,当前连接数,文件创建和删除操作,当前空闲时间等。

二.Hadoop指标类型

  Hadoop守护进程可以产生的各种指标,我们可以使用这些指标来了解集群的运行情况。例如,JVM指标(如GcCount和GcTimeMillis)显示高JVM内存活动,而高ThreadsWaiting计数意味着JVM可能需要额外的内存。  

  DFS相关的指标可以告诉你集群中是否有大量的文件创建和删除操作。RPC指标显示是否有任何可疑的身份验证尝试,其他一些指标可以指出系统内存,CPU或本地和HDFS存储的使用率等。  

  Hadoop的守护进程的指标根据它们所属的上下文可以分为不同的组,如下所示。

1>.JVM指标

  这些指标由集群中运行的JVM产生,包括JVM堆大小(MemHeapUsedM)和垃圾回收相关指标,例如当前对内存的使用情况和总GC计数(GcCount)。

2>.RPC指标

  RCP上下文中的指标包括主机名和端口等,还包括诸如发送字节数(SentBytes),当前打开连接数(NumOpenConnections)和认证失败次数(RpcAuthenticationFailures)等指标。

3>.DFS指标

  DFS上下文中包括与NameNode,HDFS文件系统,DataNodes和JournalNodes相关的指标。  
    (1)NameNode相关的DFS指标显示创建的文件总数(CreateFileOps)以及启动NameNode(FsImageLoadTime)后加载fsimage文件所需的时间;  
    (2)FSNameSystem质保显示HDFS块和HDFS容量相关信息,例如当前丢失块数(MissingBlocks),当前损失块数(CorruptBlocks)以及所有DataNodes(CapacityUsedGB)中当前使用的容量;  
    (3)JournalNode相关指标包括同步延迟信息以及数量和写入字节数等信息;  
    (4)DataNode指标显示读取和写入的数据库块数据量信息,每次操作的平均时间和卷故障总数信息。

4>.YARN度量

  YARN上下文中的指标包括集群信息,例如活动和不健康的NodeManagers的当前数量,以及ResourceManager应用程序队列相关的信息,例如当前运行的应用程序(AppsRunning)和当前的活动用户(ActiveUsers)。  

  YARN上下文中还包括NodeManager指标,例如已启动,已杀死和失败的容器总数,以及当前分配的和可用的内存。

5>.用户和组指标

  与用户和组有关的指标信息,例如成功和失败的Kerberos登录总数以及组解析次数。

6>.默认上下文

  显示NameNode启动的统计信息,并显示NameNode启动过程的各个阶段所需的精确时间,例如加载fsimage和edits文件,检查点保存,以及使NameNode脱离安全模式所需的时间。

三.收集文件系统的指标

  要收集指标并使用它们进行调优和故障排除,必须配置各种Hadoop守护程序,以指定的时间间隔收集指标,并输出指标。可以使用插件输出指标。Hadoop守护程序产生的指标称为sources,插件称为sinks。因此,sources产生数据,sinks消耗数据或输出数据。

  可以使用各种类型的插件,默认使用FileContex,它将指标写入文件,NullContext丢失指标,GangliaContext会将指标发送到Ganglia监控系统。

  为了获取由Hadoop生成的指标,需要配置"${HADOOP_HOME}/etc/hadoop/hadoop-metrics2.properties"文件,其默认配置如下图所示。

  博主推荐阅读:
    https://www.cnblogs.com/yinzhengjie2020/p/13829436.html

目录
相关文章
|
2月前
|
SQL 分布式计算 监控
Hadoop-20 Flume 采集数据双写至本地+HDFS中 监控目录变化 3个Agent MemoryChannel Source对比
Hadoop-20 Flume 采集数据双写至本地+HDFS中 监控目录变化 3个Agent MemoryChannel Source对比
62 3
|
3月前
|
分布式计算 监控 Hadoop
监控Hadoop集群实战篇
介绍了监控Hadoop集群的方法,包括监控Linux服务器、Hadoop指标、使用Ganglia监控Hadoop集群、Hadoop日志记录、通过Hadoop的Web UI进行监控以及其他Hadoop组件的监控,并提供了相关监控工具和资源的推荐阅读链接。
84 2
|
7月前
|
分布式计算 监控 Hadoop
Ganglia监控Hadoop与HBase集群
Ganglia监控Hadoop与HBase集群
|
7月前
|
存储 分布式计算 监控
Hadoop的NameNode的监控与副本管理
【4月更文挑战第15天】NameNode是Hadoop HDFS的关键组件,负责元数据管理和监控,确保数据安全、可靠和性能。监控包括NameNode的状态、资源使用和性能,以保证集群稳定性。NameNode在副本管理中负责副本创建、分布、维护和删除,确保数据冗余和容错性。有效的监控和副本管理策略对Hadoop集群的高效运行至关重要。
102 2
|
SQL 分布式计算 运维
Hadoop生态系统中的监控与管理工具:Apache Ambari和Apache Oozie的功能解析
Hadoop生态系统中的监控与管理工具:Apache Ambari和Apache Oozie的功能解析
|
SQL 分布式计算 监控
监控hadoop生态系统企业应该用什么监控软件
监控hadoop生态系统企业应该用什么监控软件
225 0
|
分布式计算 监控 Hadoop
以容器部署Ganglia并监控Hadoop集群
网上有很多Ganglia部署的教程,每一个我都觉得繁琐,我的目的只是用来监控Hadoop测试集群,能即刻使用才是王道,于是我想到通过Rancher部署Ganglia应用服务(类似于我在上一篇文章中部署Jmeter容器集群的方式),以容器的方式一键部署,省去了中间繁琐的安装过程。
1672 0
|
分布式计算 监控 大数据
大数据||hadoop分布式部署分发、基本测试及监控
先看文章大数据||hadoop分布式集群安装 分发包括:通过主节点给子节点分发数据。免密形式 基本测试包括:创建目录,上传文件、读取文件等 HDFS namenode节点格式化(131) 命令bin/hdfs namenode -format 说明:只有第一次部署的格式化。
1341 0
|
分布式计算 监控 Hadoop
下一篇
无影云桌面