​ yarn通过日志聚合将作业日志存储在HDFS中

背景:如图所示:为了从Tracking_UI中history界面中直接查看运行日志或是通过yarn logs查看日志命令,需要进行如下配置

                                                                  图1

1、编辑:yarn-site.xml

      <property>
        <name> yarn.log-aggregation-enable</name>
        <value>true</value>
      </property>

      <property>
        <name>yarn.log.server.url</name>
        <value>http://bigdata02:19888/jobhistory/logs/</value>   
      </property>

      <property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>10080</value>
      </property>

      <property>
        <name>yarn.nodemanager.remote-app-log-dir</name>
        <value>/yarn</value>
      </property>

       <property>
        <name>yarn.nodemanager.remote-app-log-dir-suffix</name>
        <value>logs</value>
       </property>

启用日志聚合功能:

  • 1、在默认情况下,Hadoop将所有日志存储在运行作业任务的节点上。在特定时间段后应用程序日志会被自动删除。可以配置日志聚合功能,将日志存储在HDFS中来长久保留日志信息。在默认情况下,日志聚合是禁止的,可以通过yarn.log-aggregation-enable来启用
  • 2、启用日志聚合后,NodeManager会将所有容器日志连接到一个文件中并将它保存在HDFS中
    一个特定的应用程序的实际HDFS位置是"${yarn.nodemanager.remote-app-log-dir}/${user.name}/${yarn.nodemanager.remote-app-log-dir-suffix}/<application ID>"
  • 3、在禁用日志聚合功能是,以下两个参数指定日志保留的时间和日志删除行为: yarn.nodemanager.log.retain-seconds:指定日志保留的时间周期,以秒为单位,默认10800 yarn.nodemanager.log.deletion-threads-count:指定日志用于清理日志的线程数,默认值为4。
  • 4、在启用日志聚合功能后,上述两个参数全部时效,以下是日志保留配置参数将生效: 
    yarn.log-aggregation.retain-seconds:日志删除HDFS日志聚合的时间,若将此参数设置为一个负数(例如默认值为-1),则永久不删除日志,这意味着应用程序的日志聚合所占的空间会不断的增长,从而造成HDFS集群的资源过度使用。 
    yarn.log.server.url:指定应用程序(例如:MRAppMaster,SparkAppMaster等等)运行完成后可以访问聚合日志的URL,若不指定,默认值为空。
    
    

2、经过上面的配置,重启YARN集群和HistoryServer服务后立即生效

 ./mapred --daemon start historyserver

 3.点击图1中history,进入日志页面,此时可以查看运行的日志,如图所示

 4、也可以通过yarn logs命令查看运行日志,命令如下

yarn logs -applicationId application_1660378737778_0001

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值