• 监控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

  • 相关阅读:
    火狐浏览器标签之间切换的快捷键
    LeetCode 69. x 的平方根
    LeetCode 51. N皇后
    win 10 自带 Ubuntu 系统的文件位置
    LeetCode 122. 买卖股票的最佳时机 II
    LeetCode 169. 求众数
    LeetCode 50. Pow(x, n)
    LeetCode 236. 二叉树的最近公共祖先
    LeetCode 235. 二叉搜索树的最近公共祖先
    LeetCode 98. 验证二叉搜索树
  • 原文地址:https://www.cnblogs.com/yinzhengjie/p/13908798.html
Copyright © 2020-2023  润新知