hadoop2.x的配置二

3、yarn-site.xmlnode

1.ResourceManager的配置,參考:Hadoop YARN配置參數剖析(1)—RM與NM相關參數linux

!yarn.resourcemanager.ha.enabled=false。web

非YARN HA使用默認配置shell

YARN HA使用以下配置apache

<property>
 <name>yarn.resourcemanager.ha.enabled</name>
 <value>true</value>
</property>

!yarn.resourcemanager.ha.rm-ids=。瀏覽器

非YARN HA使用默認配置服務器

YARN HA使用以下配置app

<property>
 <name>yarn.resourcemanager.ha.rm-ids</name>
 <value>rm1,rm2</value>
</property>

!yarn.resourcemanager.ha.id=。webapp

非YARN HA使用默認配置ide

YARN HA使用以下配置

<property>
 <name>yarn.resourcemanager.ha.id</name>
 <value>rm1</value>
</property>

注意:此配置在不一樣的機器上ResourceManager是不同的,在另一臺ResourceManger,值就是rm2了,而在別的NodeManger上,這一項就須要刪除,不配置。

!yarn.resourcemanager.hostname.rm1=。

非YARN HA使用默認配置

YARN HA使用以下配置

<property>
 <name>yarn.resourcemanager.hostname.rm1</name>
 <value>bigdata1</value>
</property>

!yarn.resourcemanager.hostname.rm2=。

非YARN HA使用默認配置

YARN HA使用以下配置

<property>
 <name>yarn.resourcemanager.hostname.rm2</name>
 <value>bigdata2</value>
</property>

!yarn.resourcemanager.recovery.enabled=false。

非YARN HA使用默認配置

YARN HA使用以下配置

<property>
 <name>yarn.resourcemanager.recovery.enabled</name>
 <value>true</value>
</property>

!yarn.resourcemanager.store.class=org.apache.hadoop.yarn.server.resourcemanager.recovery.FileSystemRMStateStore。

非YARN HA使用默認配置

YARN HA使用以下配置

<property>
 <name>yarn.resourcemanager.store.class</name>
 <value>org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore</value>
</property>

!yarn.resourcemanager.zk-address=。

非YARN HA使用默認配置

YARN HA使用以下配置

<property>
 <name>yarn.resourcemanager.zk-address</name>
 <value>bigdata2:2181,bigdata3:2181,bigdata4:2181</value>
</property>

!yarn.resourcemanager.cluster-id=。

非YARN HA使用默認配置

YARN HA使用以下配置

<property>
 <name>yarn.resourcemanager.cluster-id</name>
 <value>yarn-cluster</value>
</property>

!yarn.resourcemanager.ha.automatic-failover.enabled=true。

非YARN HA使用默認配置

YARN HA使用以下配置

<property>
 <name>yarn.resourcemanager.ha.automatic-failover.enabled</name>
 <value>true</value>
</property>

!yarn.resourcemanager.ha.automatic-failover.zk-base-path=/yarn-leader-election。

非YARN HA時,這個屬性應該用不上,因此使用默認配置。

YARN HA使用默認配置

!yarn.client.failover-proxy-provider=org.apache.hadoop.yarn.client.ConfiguredRMFailoverProxyProvider。

非YARN HA使用默認配置

YARN HA使用默認配置

注意:此處不能使用RMFailoverProxyProvider,由於RMFailoverProxyProvider是個接口,會提示找不到init方法。

!yarn.resourcemanager.hostname=0.0.0.0。

非YARN HA使用以下配置

<property>
 <name>yarn.resourcemanager.hostname</name>
 <value>master</value>
</property>

YARN HA使用默認配置

配置好yarn.resourcemanager.hostname,後面不少配置默認都須要使用到此屬性,是指ResourceManager的地址。

注意:hadoop2.0.0版本沒有此屬性。

!yarn.resourcemanager.address=${yarn.resourcemanager.hostname}:8032。

非YARN HA使用默認配置

YARN HA使用以下配置

<property>
 <name>yarn.resourcemanager.address.rm1</name>
 <value>bigdata1:23140</value>
</property>
<property>
 <name>yarn.resourcemanager.address.rm2</name>
 <value>bigdata2:33140</value>
</property>

ResourceManager 對客戶端暴露的地址。客戶端經過該地址向RM提交應用程序,殺死應用程序等。

注意:hadoop2.0.0版本默認值爲0.0.0.0:8032,可改成:master:8032。

!yarn.resourcemanager.scheduler.address=${yarn.resourcemanager.hostname}:8030

非YARN HA使用默認配置

YARN HA使用以下配置

<property>
 <name>yarn.resourcemanager.scheduler.address.rm1</name>
 <value>bigdata1:23130</value>
</property>
<property>
 <name>yarn.resourcemanager.scheduler.address.rm2</name>
 <value>bigdata2:33130</value>
</property>

ResourceManager 對ApplicationMaster暴露的訪問地址。ApplicationMaster經過該地址向RM申請資源、釋放資源等。

注意:hadoop2.0.0版本默認值爲0.0.0.0:8030,可改成:master:8030

!yarn.resourcemanager.resource-tracker.address=${yarn.resourcemanager.hostname}:8031

非YARN HA使用默認配置

YARN HA使用以下配置

<property>
 <name>yarn.resourcemanager.resource-tracker.address.rm1</name>
 <value>bigdata1:23125</value>
</property>
<property>
 <name>yarn.resourcemanager.resource-tracker.address.rm2</name>
 <value>bigdata2:33125</value>
</property>

ResourceManager 對NodeManager暴露的地址.。NodeManager經過該地址向RM彙報心跳,領取任務等。

注意:hadoop2.0.0版本默認值爲0.0.0.0:8031,可改成:master:8031

!yarn.resourcemanager.webapp.address=${yarn.resourcemanager.hostname}:8088

非YARN HA使用默認配置

YARN HA使用以下配置

<property>
 <name>yarn.resourcemanager.webapp.address.rm1</name>
 <value>bigdata1:23188</value>
</property>
<property>
 <name>yarn.resourcemanager.webapp.address.rm2</name>
 <value>bigdata2:33188</value>
</property>

ResourceManager對外web ui地址。用戶可經過該地址在瀏覽器中查看集羣各種信息。

注意:hadoop2.0.0版本默認值爲0.0.0.0:8088,可改成:master:8088

!yarn.resourcemanager.admin.address=${yarn.resourcemanager.hostname}:8033

非YARN HA使用默認配置

YARN HA使用以下配置

<property>
 <name>yarn.resourcemanager.admin.address.rm1</name>
 <value>bigdata1:23141</value>
</property>
<property>
 <name>yarn.resourcemanager.admin.address.rm2</name>
 <value>bigdata2:33141</value>
</property>

ResourceManager 對管理員暴露的訪問地址。管理員經過該地址向RM發送管理命令等。

注意:hadoop2.0.0版本默認值爲0.0.0.0:8033,可改成:master:8033

!yarn.resourcemanager.webapp.https.address=${yarn.resourcemanager.hostname}:8090,推薦使用默認配置。

ResourceManager對外的https地址。

注意:hadoop2.0.0版本默認值爲0.0.0.0:8090,可改成:master:8090

!yarn.resourcemanager.nodemanagers.heartbeat-interval-ms=1000,推薦使用默認配置。

NodeManager心跳間隔,單位爲ms。

注意:hadoop2.0.0版本沒有此屬性。

2.NodeManager的配置,參考:Hadoop YARN配置參數剖析(1)—RM與NM相關參數

2.1.yarn.nodemanager.aux-services=,推薦使用以下配置。

<property>
 <name>yarn.nodemanager.aux-services</name>
 <value>mapreduce_shuffle</value>
</property>

NodeManager上運行的附屬服務。需配置成mapreduce_shuffle,纔可運行MapReduce程序。注意在hadoop2.0.0版本配置成mapreduce.shuffle,hadoop2.2.0版本之後配置成mapreduce_shuffle,具體參照官方文檔。

注意:hadoop2.0.0版本默認值爲空,可改成:mapreduce.shuffle

參考:關於 hadoop-2.2 配置中的 yarn.nodemanager.aux-services 項

2.2.yarn.nodemanager.local-dirs=${hadoop.tmp.dir}/nm-local-dir此目錄是本地目錄。推薦使用默認配置。

中間結果存放位置,相似於1.0中的mapred.local.dir。注意,這個參數一般會配置多個目錄,已分攤磁盤IO負載。

2.3.yarn.nodemanager.log-dirs=${yarn.log.dir}/userlogs此目錄是本地目錄。推薦使用以下配置。

<property>
 <name>yarn.nodemanager.log-dirs</name>
 <value>${hadoop.tmp.dir}/userlogs</value>
</property>

job運行日誌存放地址(可配置多個目錄)。若是此處須要使用默認值,則最好在yarn-env.sh配置yarn.log.dir變量,在yarn-env.sh中,默認是yarn.log.dir=$YARN_HOME/logs

2.4.yarn.nodemanager.log.retain-seconds=10800,推薦使用以下配置。(若是啓用了日誌彙集功能,推薦使用默認設置)

<property>
 <name>yarn.nodemanager.log.retain-seconds</name>
 <value>864000</value>
</property>

單位爲秒,默認是3個小時,864000秒是10天。NodeManager上日誌最多存放時間(只有在不啓用日誌彙集功能時有效)。若是服務器沒有持續運行,這部分的日誌是不怎麼會刪的。

3.yarn.application.classpath=$HADOOP_CONF_DIR,$HADOOP_COMMON_HOME/share/hadoop/common/*,$HADOOP_COMMON_HOME/share/hadoop/common/lib/*,$HADOOP_HDFS_HOME/share/hadoop/hdfs/*,$HADOOP_HDFS_HOME/share/hadoop/hdfs/lib/*,$HADOOP_YARN_HOME/share/hadoop/yarn/*,$HADOOP_YARN_HOME/share/hadoop/yarn/lib/*,推薦使用以下配置。

<property>
 <name>yarn.application.classpath</name>
 <value>$HADOOP_CONF_DIR,$HADOOP_COMMON_HOME/share/hadoop/common/*,$HADOOP_COMMON_HOME/share/hadoop/common/lib/*,$HADOOP_HDFS_HOME/share/hadoop/hdfs/*,$HADOOP_HDFS_HOME/share/hadoop/hdfs/lib/*,$HADOOP_YARN_HOME/share/hadoop/yarn/*,$HADOOP_YARN_HOME/share/hadoop/yarn/lib/*,$HADOOP_YARN_HOME/share/hadoop/mapreduce/*,$HADOOP_YARN_HOME/share/hadoop/mapreduce/lib/*</value>
</property>

相比於默認配置,此配置在最後加上了mapreduce下的包,防止某些應用(mapreduce應用,hive)提示包找不到的錯誤。此配置在window和linux的默認配置是不同的,看官方的默認配置文件。

4.日誌彙集的配置,參考:Hadoop YARN配置參數剖析(2)—權限與日誌彙集相關參數

日誌彙集是YARN提供的日誌中央化管理功能,它能將運行完成的Container/任務日誌上傳到HDFS上,從而減輕NodeManager負 載,且提供一箇中央化存儲和分析機制。默認狀況下,Container/任務日誌存在在各個NodeManager上,若是啓用日誌彙集功能須要額外的配 置。

4.1.yarn.log-aggregation-enable=false,推薦使用以下配置。

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

是否啓用日誌彙集功能。

4.2.yarn.log-aggregation.retain-seconds=-1,推薦使用以下配置。

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

單位爲秒?864000秒是10天。在HDFS上彙集的日誌最多保存多長時間。

4.3.yarn.log-aggregation.retain-check-interval-seconds=-1,推薦使用默認配置。

多長時間檢查一第二天志,並將知足條件的刪除,若是是0或者負數,則爲上一個值的1/10,即yarn.log-aggregation.retain-seconds值的1/10。

注意:hadoop2.0.0版本沒有此屬性。

4.4.yarn.nodemanager.remote-app-log-dir=/tmp/logs此目錄是hdfs目錄。推薦使用以下配置。

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

當應用程序運行結束後,日誌被轉移到的HDFS目錄(啓用日誌彙集功能時有效)。

4.5.yarn.nodemanager.remote-app-log-dir-suffix=logs此目錄是hdfs目錄。推薦使用默認配置。

遠程日誌目錄子目錄名稱(啓用日誌彙集功能時有效)。

4、mapred-site.xml

1.mapreduce.framework.name=local,推薦使用以下配置。

<property>
 <name>mapreduce.framework.name</name>
 <value>yarn</value>
</property>

2.yarn.app.mapreduce.am.staging-dir=/tmp/hadoop-yarn/staging,此目錄是hdfs目錄。推薦使用默認配置。

job運行時的臨時文件夾,後面歷史服務器會用到此目錄。

3.jobhistory server的配置,jobhistory server是yarn集羣跑的job的一些信息,不包含任務運行日誌!你能夠將jobhistory server運行在slave機器上,減輕master的負擔。

3.1.mapreduce.jobhistory.address=0.0.0.0:10020,推薦使用以下配置。

<property>
 <name>mapreduce.jobhistory.address</name>
 <value>slave1:10020</value>
</property>

3.2.mapreduce.jobhistory.webapp.address=0.0.0.0:19888,推薦使用以下配置。

<property>
 <name>mapreduce.jobhistory.webapp.address</name>
 <value>slave1:19888</value>
</property>

3.3.mapreduce.jobhistory.done-dir=${yarn.app.mapreduce.am.staging-dir}/history/done此目錄是hdfs目錄。推薦使用默認配置。

已完成的job信息存儲的目錄。

注意:hadoop2.0.0版本沒有此屬性。

3.4.mapreduce.jobhistory.intermediate-done-dir=${yarn.app.mapreduce.am.staging-dir}/history/done_intermediate此目錄是hdfs目錄。推薦使用默認配置。

正在執行的job信息的存儲目錄。

注意:hadoop2.0.0版本沒有此屬性。

參考:配置hadoop的jobhistory服務器

相關文章
相關標籤/搜索