『轉載』hadoop 1.X到2.X的變化

         表1新舊hadoop腳本/變量/位置變化表html

改變項node

原框架中web

新框架中(Yarn)bash

備註架構

配置文件
位置app

${hadoop_home_dir}
/conf框架

${hadoop_home_dir}
/etc/hadoop/webapp

Yarn 框架也兼容老的${hadoop_home_dir}/conf 位置配置,啓動時會檢測是否存在老的 conf 目錄,若是存在將加載 conf 目錄下的配置,不然加載 etc 下配置分佈式

啓停腳本oop

${hadoop_home_dir}
/bin/start(stop)-all.sh

${hadoop_home_dir}
/sbin/start(stop)-dfs.sh

${hadoop_home_dir}/bin
/start(stop)-all.sh

新的 Yarn 框架中啓動分佈式文件系統和啓動Yarn 分離,啓動 / 中止分佈式文件系統的命令位於 ${hadoop_home_dir}/sbin 目錄下,啓動/ 中止 Yarn 框架位於${hadoop_home_dir}/bin/ 目錄下

JAVA_HOME
全局變量

${hadoop_home_dir}
/bin/start-all.sh 中

${hadoop_home_dir}/etc
/hadoop/hadoop-env.sh
${hadoop_home_dir}/etc
/hadoop/Yarn-env.sh

Yarn 框架中因爲啓動 hdfs 分佈式文件系統和啓動 MapReduce 框架分離,JAVA_HOME 須要在hadoop-env.sh 和 Yarn-env.sh 中分別配置

HADOOP_LOG_DIR全局變量

不須要配置

${hadoop_home_dir}/etc
/hadoop/hadoop-env.sh

老框架在 LOG,conf,tmp 目錄等均默認爲腳本啓動的當前目錄下的 log,conf,tmp 子目錄Yarn 新框架中 Log 默認建立在 Hadoop 用戶的 home 目錄下的 log 子目錄,所以最好在${hadoop_home_dir}/etc/hadoop/hadoop-env.sh配置 HADOOP_LOG_DIR,不然有可能會由於你啓動hadoop 的用戶的 .bashrc 或者 .bash_profile 中指定了其餘的 PATH 變量而形成日誌位置混亂,而該位置沒有訪問權限的話啓動過程當中會報錯

  • 因爲新的 Yarn 框架與原 Hadoop MapReduce 框架相比變化較大,核心的配置文件中不少項在新框架中已經廢棄,而新框架中新增了不少其餘配置項,看下錶所示會更加清晰:

表2 新舊hadoop框架配置項變化表

 

配置文件 配置項 Hadoop 0.20.X 配置 Hadoop 0.23.X 配置 說明
core-site.xml 系統默認分佈式文件 URI fs.default.name

fs.defaultFS

 
 

hdfs-site.xml

 

DFS name node 存放 name table 的目錄

 

dfs.name.dir

 

dfs.namenode.name.dir

新框架中 name node 分紅 dfs.namenode.name.dir( 存放 naname table  dfs.namenode.edits.dir(存放 edit 文件),默認是同一個目錄

   

DFS data node 存放數據 block 的目錄

 

dfs.data.dir

 

dfs.datanode.data.dir

 

新框架中 DataNode 增長更多細節配置,位於 dfs.datanode. 配置項下,如dfs.datanode.data.dir.permdatanode local 目錄默認權限);dfs.datanode.addressdatanode 節點監聽端口);等

   

分佈式文件系統數據塊複製數

 

dfs.replication

 

dfs.replication

 

新框架與老框架一致,值建議配置爲與分佈式 cluster 中實際的 DataNode 主機數一致

 

mapred-site.xml

 

Job 監控地址及端口

 

mapred.job.tracker

 無  

新框架中已改成 Yarn-site.xml 中的 resouceManager  nodeManager 具體配置項,新框架中歷史 job 的查詢已從 Job tracker 剝離,納入單獨的mapreduce.jobtracker.jobhistory 相關配置,

   

第三方 MapReduce 框架

 無  

mapreduce.framework.name

 

新框架支持第三方 MapReduce 開發框架以支持如 SmartTalk/DGSG 等非 Yarn 架構,注意一般狀況下這個配置的值都設置爲 Yarn,若是沒有配置這項,那麼提交的 Yarn job 只會運行在 locale 模式,而不是分佈式模式。

 

Yarn-site.xml

 

The address of the applications manager interface in the RM

 無  

Yarn.resourcemanager.address

 

新框架中 NodeManager  RM 通訊的接口地址

   

The address of the scheduler interface

 無  

Yarn.resourcemanager.scheduler.address

 

同上,NodeManger 須要知道 RM 主機的 scheduler 調度服務接口地址

   

The address of the RM web application

無   

Yarn.resourcemanager.webapp.address

 

新框架中各個 task 的資源調度及運行情況經過經過該 web 界面訪問

   

The address of the resource tracker interface

 無  

Yarn.resourcemanager.resource-tracker.address

 

新框架中 NodeManager 須要向 RM 報告任務運行狀態供 Resouce 跟蹤,所以 NodeManager 節點主機須要知道 RM 主機的 tracker 接口地址

 

 原文地址:http://www.aboutyun.com/thread-7513-1-1.html

配置文件

配置項

Hadoop 0.20.X 配置

Hadoop 0.23.X 配置

說明

core-site.xml

系統默認分佈式文件 URI

fs.default.name

fs.defaultFS

 

hdfs-site.xml

DFS name node 存放 name table 的目錄

dfs.name.dir

dfs.namenode.name.dir

新框架中 name node 分紅 dfs.namenode.name.dir( 存放 naname table  dfs.namenode.edits.dir(存放 edit 文件),默認是同一個目錄

 

DFS data node 存放數據 block 的目錄

dfs.data.dir

dfs.datanode.data.dir

新框架中 DataNode 增長更多細節配置,位於 dfs.datanode. 配置項下,如dfs.datanode.data.dir.permdatanode local 目錄默認權限);dfs.datanode.addressdatanode 節點監聽端口);等

 

分佈式文件系統數據塊複製數

dfs.replication

dfs.replication

新框架與老框架一致,值建議配置爲與分佈式 cluster 中實際的 DataNode 主機數一致

mapred-site.xml

Job 監控地址及端口

mapred.job.tracker

新框架中已改成 Yarn-site.xml 中的 resouceManager  nodeManager 具體配置項,新框架中歷史 job 的查詢已從 Job tracker 剝離,納入單獨的mapreduce.jobtracker.jobhistory 相關配置,

 

第三方 MapReduce 框架

mapreduce.framework.name

新框架支持第三方 MapReduce 開發框架以支持如 SmartTalk/DGSG 等非 Yarn 架構,注意一般狀況下這個配置的值都設置爲 Yarn,若是沒有配置這項,那麼提交的 Yarn job 只會運行在 locale 模式,而不是分佈式模式。

 

 

 

 

 

Yarn-site.xml

The address of the applications manager interface in the RM

Yarn.resourcemanager.address

新框架中 NodeManager  RM 通訊的接口地址

 

The address of the scheduler interface

Yarn.resourcemanager.scheduler.address

同上,NodeManger 須要知道 RM 主機的 scheduler 調度服務接口地址

 

The address of the RM web application

Yarn.resourcemanager.webapp.address

新框架中各個 task 的資源調度及運行情況經過經過該 web 界面訪問

 

The address of the resource tracker interface

Yarn.resourcemanager.resource-tracker.address

新框架中 NodeManager 須要向 RM 報告任務運行狀態供 Resouce 跟蹤,所以 NodeManager 節點主機須要知道 RM 主機的 tracker 接口地址

相關文章
相關標籤/搜索