1. 程式人生 > >配置yarn平臺程式執行的歷史服務,日誌檢視功能

配置yarn平臺程式執行的歷史服務,日誌檢視功能

一,MapReduce historyserver(歷史服務)

1.    歷史伺服器:檢視已經執行完成的應用記錄

            修改mapred-site.xml

            指定historyserver的地址,內部和外部通訊埠號,如果不指定預設是本機

            historyserver是一個輕量級的服務,可以部署在任意一臺節點上

    2.    配置(在mapred-site.xml中):

        注意:這裡的埠號不能隨便修改

        <property>

          <name>mapreduce.jobhistory.address</name>

          <value>hostname:10020</value>

        </property>

        <property>

          <name>mapreduce.jobhistory.webapp.address</name>

          <value>hostname:19888</value>      

        </property>

    3.    啟動歷史日誌服務 sbin/mr-jobhistory-daemon.sh start historyserver

    歷史服務資訊:

二,日誌聚合功能

1.    修改yarn-site.xml

        指定開啟聚合功能

        指定日誌存放在HDFS上的時間期限,一般建議3-7天左右。

        存放在HDFS的/tmp/logs/使用者之下(若檢視該目錄提示:Permission denied: user=dr.who, access=READ_EXECUTE, inode="/tmp”。       可執行bin/hdfs dfs -chmod -R 755 /tmp修改許可權進行訪問)

        <property>

            <name>yarn.log-aggregation-enable</name>

            <value>true</value>

        </property>

        <property>

            <name>yarn.log-aggregation.retain-seconds</name>

            <value>106800</value>

        </property>

    2.    重啟yarn程序並啟動歷史日誌服務

          先關掉之前yarn程序,和歷史服務程序。

3.測試重新跑個測試mapreduce程式

bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /wordcount/input/words.txt /wordcount/output2

日誌顯示結果:

    4.    指定存放已經完成的Hadoop的作業記錄

        (接下來的4、5、6的操作可以使用預設的值,不用修改,只是讓大家看下,是可以修改的)

        <property>

            <name>mapreduce.jobhistory.done-dir</name>

            <value>${yarn.app.mapreduce.am.staging-dir}/history/done</value>

        </property>

    5.    指定存放的正在執行的Hadoop作業記錄

        <property>

            <name>mapreduce.jobhistory.intermediate-done-dir</name>

            <value>${yarn.app.mapreduce.am.staging-dir}/history/done_intermediate</value>

            <description></description>

        </property>

    6.    提交job作業記錄的目錄位置

        <property>

            <name>yarn.app.mapreduce.am.staging-dir</name>

            <value>/tmp/hadoop-yarn/staging</value>

            <description>The staging dir used while submitting jobs.</description>

        </property>