.hadoop2.6.4安裝

Hadoop集羣安裝

1.配置服務器

配置hosts

打開主節點的hosts文件,要將文件的前兩行註釋掉 (註釋當前主機的信息)並在文件中添加所有hadoop集羣的主機信息

在你選擇的主節點上執行:

[root@localhost ~]# vi  /etc/hosts

前兩行註釋掉:

#127.0.0.1  localhost localhost.localdomain localhost4 localhost4.localdomain4

#::1        localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.18.110   master

192.168.18.111   slaver1

192.168.18.112   slaver2

 

保存之後,將主節點的hosts分別拷貝到其他兩個子節點,在主節點上執行

[root@localhost ~]# scp  /etc/hosts  [email protected]:/etc/

[root@localhost ~]# scp  /etc/hosts  [email protected]:/etc/

 

 

2. 安裝jdk

卸載默認jdk(三臺機器上都要卸載

查看系統已經裝的jdk:

[root@localhost ~]# rpm  -qa|grep jdk

java-1.7.0-openjdk-1.7.0.45-2.4.3.3.el6.x86_64

java-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.x86_64

 

 

卸載jdk:

[root@localhost ~]# rpm  -e  --nodeps  java-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.x86_64

[root@localhost ~]# rpm  -e  --nodeps java-1.7.0-openjdk-1.7.0.45-2.4.3.3.el6.x86_64

 

其他兩個節點操作上邊相同動作

安裝JDK(三臺機器都要安裝

安裝在同一位置/opt/java/jdk1.7.0_76

下載JDK

解壓JDK :

[root@localhost ~]# mkdir  -p  /opt/java/          創建好目錄後將jdk包傳到這個目錄下

[root@localhost ~]# tar  -zxvf  /opt/java/jdk-7u76-linux-x64.tar.gz  -C  /opt/java/

 

其他兩個節點操作上邊相同動作

 

 

配置環境變量, 編輯profile文件:

[root@localhost ~]# vi  /etc/profile

profile文件末尾添加以下代碼:

export JAVA_HOME=/opt/java/jdk1.7.0_76

export JAVA_BIN=/opt/java/jdk1.7.0_76/bin

export PATH=$PATH:$JAVA_HOME/bin

exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export JAVA_HOME JAVA_BIN PATH CLASSPATH

 

拷貝profile到子節點

在你選擇的主節點上執行:(192.168.18.111192.168.18.112 IP是你選擇的另外兩個從節點機器)

[root@localhost ~]# scp  /etc/profile  [email protected]:/etc/

[root@localhost ~]# scp  /etc/profile  [email protected]:/etc/

 

三臺都重啓:

[root@localhost ~]# reboot

 

3. 配置ssh無密碼訪問

生成公鑰私鑰對

在每個節點上分別執行

[root@master ~]# ssh-keygen  -t  rsa

[root@slaver1 ~]# ssh-keygen  -t  rsa

[root@slaver2 ~]# ssh-keygen  -t  rsa

一直按回車直到生成結束

執行結束之後每個節點上的/root/.ssh/目錄下生成了兩個文件 id_rsa 和 id_rsa.pub

其中前者爲私鑰,後者爲公鑰

在主節點上執行

[root@master ~]# cd  /root/.ssh/

[root@master .ssh]# cp  id_rsa.pub  authorized_keys

將子節點的公鑰拷貝到主節點並添加進authorized_keys

將兩個子節點的公鑰拷貝到主節點上,分別在兩個子節點上執行

[root@slaver1 ~]# scp  /root/.ssh/id_rsa.pub  root@master:/root/.ssh/id_rsa_slaver1.pub

[root@slaver2 ~]# scp  /root/.ssh/id_rsa.pub  root@master:/root/.ssh/id_rsa_slaver2.pub

然後在主節點上,將拷貝過來的兩個公鑰合併到authorized_keys文件中去

主節點上執行

[root@master ~]# cd  /root/.ssh/

[root@master .ssh]# cat  id_rsa_slaver1.pub>>authorized_keys

[root@master .ssh]# cat  id_rsa_slaver2.pub>>authorized_keys

 

最後測試是否配置成功

在主節點上分別執行

[root@master ~]# ssh  slaver1

[root@master ~]# ssh  slaver2

能正確跳轉到兩臺子節點的操作界面即可,同樣在每個子節點通過相同的方式登錄主節點和其他子節點也能無密碼正常登錄就表示配置成功。

 

這裏的配置方式可以有多種操作步驟,最終目的是每個節點上的/root/.ssh/authorized_keys文件中都包含所有的節點生成的公鑰內容。

將主節點的authorized_keys文件分別替換子節點的authorized_keys文件

主節點上執行用scp命令將authorized_keys文件拷貝到子節點的相應位置

[root@master ~]# cd  /root/.ssh

[root@master .ssh]# scp  authorized_keys  root@slaver1:/root/.ssh/

[root@master .ssh]# scp  authorized_keys  root@slaver2:/root/.ssh/

 

 

 

上面配置SSH切換服務器較繁瑣,稍不小心就會出錯,可以用下面的

 

安裝ssh 證書

[root@master~]$ ssh-keygen  -t  rsa

[root@slaver1~]$ ssh-keygen  -t  rsa

[root@slaver2~]$ ssh-keygen  -t  rsa

 

[root@master~]$ ssh-copy-id  -i  /root/.ssh/id_rsa.pub  master

[root@master~]$ ssh-copy-id  -i  /root/.ssh/id_rsa.pub  slaver1

[root@master~]$ ssh-copy-id  -i  /root/.ssh/id_rsa.pub  slaver2

 

[root@slaver1~]$ ssh-copy-id  -i  /root/.ssh/id_rsa.pub  master

[root@slaver1~]$ ssh-copy-id  -i  /root/.ssh/id_rsa.pub  slaver1

[root@slaver1~]$ ssh-copy-id  -i  /root/.ssh/id_rsa.pub  slaver2

 

[root@slaver2~]$ ssh-copy-id  -i  /root/.ssh/id_rsa.pub  master

[root@slaver2~]$ ssh-copy-id  -i  /root/.ssh/id_rsa.pub  slaver1

[root@slaver2~]$ ssh-copy-id  -i  /root/.ssh/id_rsa.pub  slaver2

 

 

 

 

 

 

以下只在你選擇主節點上操作

4.安裝hadoop

首先將hadoop-2.6.4.tar.gz放到三臺機器的/usr目錄下

 

在master主機上安裝hadoop

安裝位置自定,例如安裝在/usr目錄下面

下載hadoop包,放在/usr目錄下,解壓hadoop

[root@master ~]# tar  -zxvf  /usr/hadoop-2.6.4.tar.gz  -C /usr/

 

在usr下面生成hadoop-2.6.4目錄

配置環境變量:

[root@master ~]# vi  .bash_profile

 

PATH=$PATH:$HOME/bin:/usr/hadoop-2.6.4/sbin      

export PATH

export JAVA_HOME=/opt/java/jdk1.7.0_76

export JAVA_BIN=/opt/java/jdk1.7.0_76/bin

export PATH=$PATH:$JAVA_HOME/bin

exportCLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export JAVA_HOME JAVA_BIN PATH CLASSPATH

 

HADOOP_HOME=/usr/hadoop-2.6.4

HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop

PATH=$HADOOP_HOME/bin:$PATH

export HADOOP_HOME HADOOP_CONF_DIR PATH

 

[root@master ~]# source  .bash_profile

 

5.配置hadoop

配置hadoop配置文件

需要配置的文件的位置爲/hadoop-2.6.4/etc/hadoop,需要修改的有以下幾個

hadoop-env.sh

yarn-env.sh

core-site.xml

hdfs-site.xml

mapred-site.xml

yarn-site.xml

slaves

其中

hadoop-env.sh和yarn-env.sh裏面都要添加jdk的環境變量:

hadoop-env.sh中

[root@master ~]# cd  /usr/hadoop-2.6.4/etc/hadoop

[root@master hadoop]# vi  hadoop-env.sh

# The java implementation to use.

# The jsvc implementation to use. Jsvc isrequired to run secure datanodes

# that bind to privileged ports to provideauthentication of data transfer

# protocol. Jsvc is not required if SASL is configured for authentication of

# data transfer protocol usingnon-privileged ports.

#export JSVC_HOME=${JSVC_HOME}

exportJAVA_HOME=/opt/java/jdk1.7.0_76

#(紅色爲新添加的內容,其他的代碼是文件中原有的)

 

yarn-env.sh中

[root@master ~]# cd  /usr/hadoop-2.6.4/etc/hadoop

[root@master hadoop]# vi  yarn-env.sh

# User for YARN daemons

exportHADOOP_YARN_USER=${HADOOP_YARN_USER:-yarn}

 

# resolve links - $0 may be a softlink

exportYARN_CONF_DIR="${YARN_CONF_DIR:-$HADOOP_YARN_HOME/conf}"

 

# some Java parameters

exportJAVA_HOME=/opt/java/jdk1.7.0_76

#(紅色爲新添加的內容,其他的代碼是文件中原有的)

 

 

[root@master ~]# mkdir  -p  /usr/temp

[root@master ~]# mkdir  -p  /usr/hadoop-2.6.4/dfs/data

[root@master ~]# mkdir  -p  /usr/hadoop-2.6.4/dfs/namesecondary

[root@master ~]# mkdir  -p  /usr/hadoop-2.6.4/dfs/name

 

注:下邊配置參數時藍色漢字爲註釋,不能拷貝進配置文件中

core-site.xml中

[root@master ~]# cd  /usr/hadoop-2.6.4/etc/hadoop

[root@master hadoop]# vi  core-site.xml

 

<configuration>

       <property>

            <name>fs.defaultFS</name>

            <value>hdfs://master:9000</value>

            <description>NameNode URI.</description>

       </property>

       <property>

             <name>io.file.buffer.size</name>

              <value>131072</value>

              <description>Size ofread/write buffer used inSequenceFiles.</description>

       </property>

       <property>

             <name>hadoop.tmp.dir</name>

              <value>file:///usr/temp</value>

       </property>

       <property>

             <name>hadoop.proxyuser.root.hosts</name>

              <value>*</value>

       </property>

        <property>

             <name>hadoop.proxyuser.root.groups</name>

              <value>*</value>

       </property>

</configuration>

hdfs-site.xml中

[root@master ~]# cd  /usr/hadoop-2.6.4/etc/hadoop

[root@master hadoop]# vi  hdfs-site.xml

 

<configuration>

       <property>

               <name>dfs.namenode.secondary.http-address</name>

                <value>master:9001</value>

        <description>The secondary namenode http server addressandport.</description>

       </property>

       <property>

               <name>dfs.namenode.name.dir</name>

                <value>file:///usr/hadoop-2.6.4/dfs/name</value>

       <description>Path on the local filesystem where the NameNodestoresthe namespace and transactions logs persistently.</description>    

       </property>

       <property>

               <name>dfs.datanode.data.dir</name>

                <value>file:///usr/hadoop-2.6.4/dfs/data</value>

            <description>Comma separated list of paths on the local filesystemofa DataNode where it should store its blocks.</description> 

       </property>

       <property>

               <name>dfs.namenode.checkpoint.dir</name>

                <value>file:///usr/hadoop-2.6.4/dfs/namesecondary</value>

       <description>Determines where on the local filesystem theDFSsecondary name node should store the temporary images to merge. If this isacomma-delimited list of directories then the image is replicated in all ofthedirectories for redundancy.</description>

       </property>

       <property>

               <name>dfs.replication</name>

                <value>2</value>

       </property>

       <property>

               <name>dfs.webhdfs.enabled</name>

                <value>true</value>

       </property>

       <property>

               <name>dfs.permissions</name>

               <value>false</value>

       </property>

       <property>

               <name>dfs.web.ugi</name>

               <value>supergroup</value>

       </property>

</configuration>

 

[root@master ~]# cd  /usr/hadoop-2.6.4/etc/hadoop

[root@master hadoop]# cp  mapred-site.xml.template  mapred-site.xml

[root@master hadoop]# vi  mapred-site.xml

mapred-site.xml中

<configuration>

       <property>

                <name>mapreduce.framework.name</name>    

                <value>yarn</value>

       <description>Theruntime framework for executing MapReduce jobs.Can be one of local, classic oryarn.</description>

       </property>

       <property>

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

                <value>master:10020</value>

           <description>MapReduce JobHistoryServer IPChost:port</description>

       </property>

       <property>

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

                <value>master:19888</value>

               <description>MapReduceJobHistoryServer Web UI host:port</description>

       </property>

       <property>

       <name>mapred.remote.os</name>

       <value>Linux</value>

       </property>

       <property>

       <name>mapreduce.app-submission.cross-platform</name>

       <value>true</value>

       </property>

       <property>

       <name>mapreduce.application.classpath</name>

       <value>

       /usr/hadoop-2.6.4/etc/hadoop,

       /usr/hadoop-2.6.4/share/hadoop/common/*,

       /usr/hadoop-2.6.4/share/hadoop/common/lib/*,

       /usr/hadoop-2.6.4/share/hadoop/hdfs/*,

       /usr/hadoop-2.6.4/share/hadoop/hdfs/lib/*,

       /usr/hadoop-2.6.4/share/hadoop/mapreduce/*,

       /usr/hadoop-2.6.4/share/hadoop/mapreduce/lib/*,

       /usr/hadoop-2.6.4/share/hadoop/yarn/*,

       /usr/hadoop-2.6.4/share/hadoop/yarn/lib/*

      </value>

      </property>   

</configuration>

yarn-site.xml中

[root@master ~]# cd  /usr/hadoop-2.6.4/etc/hadoop

[root@master hadoop]# vi  yarn-site.xml

<configuration>

         <property>

               <name>yarn.resourcemanager.hostname</name>

               <value>master</value>

                <description>The hostnameof theRM.</description>

       </property>

       <property>

               <name>yarn.nodemanager.aux-services</name>

               <value>mapreduce_shuffle</value>

  <description>Shuffle service that needs to be set for MapReduceapplications.</description>

       </property>

       <property>

               <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>

               <value>org.apache.hadoop.mapred.ShuffleHandler</value>

       </property>

       <property>

                <name>yarn.resourcemanager.address</name>

                <value>master:8032</value>

       </property>

       <property>

               <name>yarn.resourcemanager.scheduler.address</name>

                <value>master:8030</value>

       </property>

       <property>

               <name>yarn.resourcemanager.resource-tracker.address</name>

                <value>master:8031</value>

       </property>

       <property>

               <name>yarn.resourcemanager.admin.address</name>

                <value>master:8033</value>

       </property>

       <property>

               <name>yarn.resourcemanager.webapp.address</name>

                <value>master:8088</value>

       </property>

       <property>

   <name>yarn.application.classpath</name>

   <value>

       /usr/hadoop-2.6.4/etc/hadoop,

       /usr/hadoop-2.6.4/share/hadoop/common/*,

       /usr/hadoop-2.6.4/share/hadoop/common/lib/*,

       /usr/hadoop-2.6.4/share/hadoop/hdfs/*,

       /usr/hadoop-2.6.4/share/hadoop/hdfs/lib/*,

       /usr/hadoop-2.6.4/share/hadoop/mapreduce/*,

       /usr/hadoop-2.6.4/share/hadoop/mapreduce/lib/*,

       /usr/hadoop-2.6.4/share/hadoop/yarn/*,

       /usr/hadoop-2.6.4/share/hadoop/yarn/lib/*

   </value>

 </property>

</configuration>

slaves中

[root@master hadoop]# vi  slaves

slaver1

slaver2

拷貝hadoop安裝文件到子節點

主節點上執行:

[root@master hadoop]# scp  -r  /usr/hadoop-2.6.4/ root@slaver1:/usr/

[root@master hadoop]# scp  -r  /usr/hadoop-2.6.4/ root@slaver2:/usr/

格式化主節點的namenode

主節點上進入hadoop目錄

然後執行:

[root@master ~]# cd  /usr/hadoop-2.6.4

[root@master hadoop-2.6.4]# ./bin/hadoop  namenode  -format

 

新版本用下面的語句不用hadoop命令了

[root@master ~]# cd  /usr/hadoop-2.6.4

[root@master hadoop-2.6.4]# ./bin/hdfs  namenode -format

啓動hadoop

主節點上在hadoop-2.6.4目錄下執行:

[root@master ~]# cd  /usr/hadoop-2.6.4

[root@master hadoop-2.6.4]#./sbin/start-all.sh

 

主節點上jps進程有:

[root@master hadoop-2.6.4]# jps

NameNode

SecondaryNameNode

ResourceManager

Jps

 

在兩個子節點上執行:

每個子節點上的jps進程有:

[root@slaver1 hadoop-2.6.4]# jps

DataNode

NodeManager

Jps

[root@slaver1 hadoop-2.6.4]# jps

DataNode

NodeManager

jps

如果這樣表示hadoop集羣配置成功

 

 

 

查找指定文件的塊位置:

[root@master ~]# hadoop  fsck /user/root/aa.txt  -files  -blocks -racks  -locations

DEPRECATED: Use of this script to executehdfs command is deprecated.

Instead use the hdfs command for it.

 

16/12/14 21:05:12 WARNutil.NativeCodeLoader: Unable to load native-hadoop library for yourplatform... using builtin-java classes where applicable

Connecting to namenode viahttp://master:50070

FSCK started by root (auth:SIMPLE) from/192.168.18.110 for path /user/root/aa.txt at Wed Dec 14 21:05:15 CST 2016

/user/root/aa.txt 248305251 bytes, 2block(s):  OK

0.BP-1810680398-192.168.18.110-1481303633970:blk_1073742062_1238len=134217728 repl=2 [/default-rack/192.168.18.111:50010, /default-rack/192.168.18.112:50010]

1.BP-1810680398-192.168.18.110-1481303633970:blk_1073742063_1239len=114087523 repl=2 [/default-rack/192.168.18.111:50010,/default-rack/192.168.18.112:50010]

 

Status: HEALTHY

 Total size:   248305251 B

 Total dirs:   0

 Totalfiles:   1

 Total symlinks:                0

 Total blocks (validated):      2 (avg. block size 124152625 B)

 Minimally replicated blocks:   2 (100.0 %)

 Over-replicated blocks:        0 (0.0 %)

 Under-replicated blocks:       0 (0.0 %)

 Mis-replicated blocks:         0 (0.0 %)

 Default replication factor:    2

 Average block replication:     2.0

 Corrupt blocks:                0

 Missing replicas:              0 (0.0 %)

 Number of data-nodes:          2

 Number of racks:               1

FSCK ended at Wed Dec 14 21:05:15 CST 2016in 14 milliseconds

 

 

The filesystem under path'/user/root/aa.txt' is HEALTHY

 

[root@slaver1 ~]# find  /usr/hadoop-2.6.4/dfs/data  -name blk_1073742062_1238.meta

/usr/hadoop-2.6.4/dfs/data/current/BP-1810680398-192.168.18.110-1481303633970/current/finalized/subdir0/subdir0/blk_1073742062_1238.meta

 

 

 

 

關於檢查點的一些問題:

 

1、問題的描述

   需要在原來已經部署了集羣上重新部署,之後,啓動集羣,由於Cloudera Manager 會默認設置dfs.namenode.checkpoint.perioddfs.namenode.checkpoint.txns分別是1個小時和1000000。只要達到這兩個條件之一,secondarynamenode會執行checkpoint操作,此時會出現如下的問題:

 

ERRORThe health testresult for NAME_NODE_HA_CHECKPOINT_AGE has become bad: The filesystem checkpoint is 4 hour(s) old. This is401.25% of the configured checkpoint period of 1 hour(s). Critical threshold:400.00%. 2,793 transactions have occurred since the last filesystem checkpoint.This is 0.28% of the configured checkpoint transaction target of 1,000,000.

 

經過初步分析,是由於secondarynamenode沒有執行checkpoint的原因所導致,於是就查看了一下secondarynamenode的日誌,發現真正的錯誤是:

 

ERROR  Exception in doCheckpointjava.io.IOException: Inconsistent checkpoint field

 

此時,說明查看個角色運行的日誌很重要的,能夠很精確的定位錯誤所在。

 

這兩個問題的聯繫主要是secondarynamenode沒有執行檢查點的操作,導致會產生上面的錯誤,說明你一直沒有執行檢查點的操作,下面的錯誤說明的是執行檢查點操作失敗,不執行。

 

2、問題的解決前的知識儲備

 

在解決問題之前首先需要介紹一下檢查點的作用及重要性。

 

1)檢查點

 

  何爲檢查點:檢查點是給secondarynamenode設置的,通過設置hdfs-site.xml中參數dfs.namenode.checkpoint.perioddfs.namenode.checkpoint.txns來觸發,只要達到這兩個條件之一就可以出發secondarynamenode執行檢查點的操作。

 

2)檢查點的的內容:

 

secondarynamenode執行檢查點的內容是首先從namenode中讀取Fsimage,並執行namenodeeditslog文件中的操作,並最終生成一個新的FSimage文件,並將這個文件上傳給Namenode。注意:在這個過程中,如果editlog沒有任何的記錄的話,達到了檢查點的條件後,也由於沒有發生任何改變,因此不執行檢查點操作。

 

3)檢查點的作用:

 

secondarynamenode執行這個檢查點的操作,可以減少namenode的啓動時間。

 

3、問題的解決方法

 

通過真正的錯誤的描述,發現主要是版本不匹配,說明在重新安裝的時候,保留了以前版本的的數據,導致不一致的版本問題,所以導致secondarynamenode不執行檢查點的操作。那麼解決辦法就是刪除之前的數據,所以通過刪除secondarynamenode執行檢查點是的目錄,即hdfs-site.xml中參數fs.checkpoint.dir,dfs.namenode.checkpoint.dir的值的路徑

 刪除之後,重新啓動集羣即可。

 

 

配置參數網址:

http://cloudtech.iteye.com/blog/1620089

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

任務在mapreduce.Job: Running job 卡住不動
可能是因爲調度執行了很多次web 頁面 All Applications 上看到很多進程都是UNASSIGNED
在機器上面執行
[root@master ~]# yarn application -list
顯示有很多任務在,雖然添加任務的腳本已經kill掉了但是任務隊列還是在yarn

hadoop執行

[root@master ~]# yarn application -list| awk '{print " yarn application-kill " $1}'| sh

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

歷史服務器:

Hadoop自帶一個歷史服務器,可以通過歷史服務器查看已經運行完的Mapreduce作業記錄,比如用了多少個Map、用了多少個Reduce、作業提交時間、作業啓動時間、作業完成時間等信息

默認情況下,Hadoop歷史服務器是沒有啓動的,我們可以通過下面的命令來啓動Hadoop歷史服務器 
$ sbin/mr-jobhistory-daemon.sh
 

starthistoryserver 
這樣我們就可以在相應機器的19888端口上打開歷史服務器的WEB UI界面,可以查看已經運行完的作業情況,歷史服務器可以單獨在一臺機器上啓動,主要是通過以下的參數配置: 
<property>
   <name>mapreduce.jobhistory.address</name>
   <value>master:10020</value>
</property>
 
<property>
  <name>mapreduce.jobhistory.webapp.address</name>
   <value>master:19888</value>
</property>
 
上面的參數是在mapred-site.xml文件中進行配置,mapreduce.jobhistory.addressmapreduce.jobhistory.webapp.address默認的值分別是master:10020master:19888,根據自己的情況進行相應的配置,參數的格式是host:port,配置完上述的參數之後,重新啓動Hadoop jobhistory,這樣我們就可以在mapreduce.jobhistory.webapp.address參數配置的主機上對Hadoop歷史作業情況經行查看。 
這些歷史數據是存放在HDFS中,我們可以通過下面的配置來設置在HDFS的什麼目錄下存放歷史作業記錄: 
<property>
   <name>mapreduce.jobhistory.done-dir</name>
  <value>${yarn.app.mapreduce.am.staging-dir}/history/done</value>
</property>
 
<property>
  <name>mapreduce.jobhistory.intermediate-done-dir</name>
  <value>${yarn.app.mapreduce.am.staging-dir}
             /history/done_intermediate</value>
</property>
 
<property>
  <name>yarn.app.mapreduce.am.staging-dir</name>
  <value>/tmp/hadoop-yarn/staging</value>
</property>
 
上面的配置都默認的值,我們可以在mapred-site.xml文件中進行修改,其中,mapreduce.jobhistory.done-dir參數的意思是在什麼目錄下存放已經運行完的Hadoop作業記錄;mapreduce.jobhistory.intermediate-done-dir的意思是正在運行的Hadoop作業記錄。

我們可以到mapreduce.jobhistory.done-dir參數配置的目錄下看看裏面存放的是什麼東西: 
[wyp@master /home/wyp/hadoop]# bin/hadoop fs -ls /jobs/done/

發佈了59 篇原創文章 · 獲贊 27 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章