小编给大家分享一下hadoop中性能指标和日志的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
Hadoop 指标类型
Hadoopde 守护进程的指标根据它们所属的上下文可以分为不同的组,如下所述:
JVM指标:这些指标由集群中运行的JVM产生包括JVM堆大小和垃圾回收相关指标,例如当前的堆内存(MemHeapUsed)的使用情况和总GC计数(GcCount)。
RPC指标:rpc上下文中的指标包括主机名和端口等,还包括诸如发生字节数(SentBytes)、当前打卡连接数(NumOpenConnections)和认证失败次数等指标。
DFS指标:dfs上下文中包括与NameNode、HDFS文件系统、DataNodes和JournalNodes相关指标,DFS指标可以告诉集群中是否存在大量的文件创建和删除操作。
Hadoop的日志消息
可以通过浏览各个日志文件或通过Hadoop内置的web界面访问Spark和其他作业的hadoop日志消息。大多数时候,通过web界面访问日志更好,因为可以节省时间,并快速找到发生性能问题或者作业失败的原因:
Hadoop生成两种主要类型的日志:
它为守护程序(如NameNode和DataNode)生成日志。守护进程日志主要由管理员使用,因为它们有助与排除DataNode和NameNode等关键Hadoop服务的意外故障。
Hadoop还为集群中的运行的每个应用程序生成日志,hadoop应用程序日志可以用于开发人员了解作业失败和性能下降的原因。
可以通过多种方式查看hadoop的日志
Hadoop web UI 特别是ResourceManager webUi可以免除访问日志存储位置和查看日志文件的麻烦,还可以通过JobHistory web UI 查看日志
直接从日志文件检查日志信息
对于某些应用程序日志,如果开启了日志聚合功能则将他们聚合到HDFS存储。
通过yarn命令检查:
yarn application命令可以管理一下任务:
列出集群中运行的应用程序
杀死正在运行的的应用程序
获取正在运行的应用程序的状态。
查看Yarn应用程序
yarn application -list 可以检索所有作业的列表,不考虑它们的状态。作业可以具有以下状态:All、NEW、NEW_SAVING、SUMBMITTED、ACCEPTED、RUNNING、FINISHED、FAILED和KILLED。指定-appStates选项即可
yarn application -list -appStates running
检查应用程序的状态
yarn application -status <application_id>
kill正在执行的的作业
yarn application -kill <application_id>
检查节点状态
yarn node -all -list 列出集群的所有节点及其状态
获取作业日志
yarn logs 名利的语法:
yarn logs -applicationId <application_id>
只能获取已经结束的运行的作业的日志。
Hadoop存储日志的位置
1、hdfs:这是hadoop创建用于存储作业执行文件(如包含运行作业hadoop参数的job.xml)的暂存目录的位置。
2、NodeManager本地目录:这是在本地文件系统上创建的目录,hadoop在其中存储由NodeManager服务生产的Shell脚本,以便执行ApplicationMaster容器。可以使用yarn-site.xml文件中的yarn.nodemanager.local.dir参数指定NodeManger本地目录位置。
此参数可以提供NodeManager存储其本地文件的目录列表。在这些目录下实际应用程序的本地文件目录${yarn.nodemanager.local-dir}/usercache/user/....。每个NodeManager在NodeManager本地目录下的本地应用程序缓存中
3、NodeManger日志目录:这是linux上本地目录,NodeManager在此存储用户运行的应用程序的实际日志文件。在此节点的NodeManager上执行作业的所有容器及其应用程序日志存储在此目录中。使用yarn.nodemanager.log-dirs参数指定NodeManager日志目录的位置。
不需要担心nm-local-dirs目录会填满appcache子目录下的作业文件,这些文件在作业完成时会被自动删除。但是某些作业确实包含大文件,配置属性yarn.nodemanager.delete.debug-delay-sec指定在应用程序后就保留本地日志目录的时间,一点配置时间到期,NodeManager的deletionservicehi删除应用程序本地文件目录结构。
Hadoop存储日志聚合
启用日志聚合之后,nodemanager会将所有容器日志连接到一个文件中并将它保存在HDFS中,可以使用yarn.nodemanager.remote-app-log-dir参数配置hadoop 在hdfs的哪里存储聚合日志。一般配置在/tmp/hadoop/logs/
三种方式获取应用程序日志
1、从hdfs中获取
2、通过hadoop 从web UI看,在未结束的应用的中点击applicationmaster,点击页签下面的logs
3、作业完成之后从JobHistoryServer UI查看
以上是“hadoop中性能指标和日志的示例分析”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。