關(guān)于Hadoop的配置,按照我的理解,應(yīng)該有六個文件需要修改,它們都在Hadoop的conf文件夾下,分別是 :
masters/slavers:配置masters和slavers的機器IP
hadoop-env.sh :Hadoop 運行時的環(huán)境變量,比如JAVA_HOME,LOG之類的
core-site.xml :Hadoop 的核心配置文件,對應(yīng)并覆蓋core-default.xml 中的配置項
hdfs-site.xml :HDFS 的配置文件,對應(yīng)并覆蓋hdfs-default.xml 中的配置項
mapred-site.xml :
Map/Reduce的配置文件,對應(yīng)并覆蓋mapred-default.xml 中的配置項
上面提到的三個*-default.xml 是Hadoop的默認配置項,理論上都是只讀的,如果要修改,就通過對應(yīng)的用戶配置文件來覆蓋其設(shè)置。
?
1、先配置masters/slavers,NameNode和JobTracker是master, DataNode01和DataNode02是salvers
Masters:
?
- vi?/hadoop/conf/masters??
?
?
- 192.168.100.101??
- 192.168.100.102??
?
Slavers:
- vi?/hadoop/conf/slavers??
?
?
- 192.168.100.103??
- 192.168.100.104??
?
2、先配置hadoop-env.sh,這里最重要的是配置JAVA_HOME,在我的機器上是這樣的:
?
- export?JAVA_HOME=/usr/lib/jvm/java-6-sun??
其余的可以考慮配置日志文件路徑:
?
?
- export?HADOOP_LOG_DIR=${HADOOP_HOME}/logs??
3、配置 core-site.xml ,通過文檔可以知道這里一般是配置NameNode的地址,即機器名或IP:
?
- < configuration > ????
- ???????? < property > ??
- ???????????????? < name > fs.default.name </ name > ?????
- ???????????????? < value > hdfs://192.168.100.101:9000 </ value > ?????
- ???????? </ property > ???
- </ configuration > ???
4、配置 hdfs-site.xml ,這里一般配置文件存放路徑以及文件權(quán)限:
?
?
- < configuration > ????
- ???? < property > ????
- ???????? <!--?DFS中存儲文件命名空間信息的目錄?--> ????
- ???????? < name > dfs.name.dir </ name > ????
- ???????? < value > /hadoop/dfs/name </ value > ????
- ???? </ property > ????
- ???? < property > ????
- ???????? <!--?DFS中存儲文件數(shù)據(jù)的目錄?--> ????
- ???????? < name > dfs.data.dir </ name > ?????
- ???????? < value > /hadoop/dfs/data </ value > ????
- ???? </ property > ????
- ???? < property > ????
- ???????? <!--?是否對DFS中的文件進行權(quán)限控制(測試中一般用false)--> ????
- ???????? < name > dfs.permissions </ name > ????
- ???????? < value > false </ value > ????
- ??? </ property > ????
- </ configuration > ???
5、配置 mapred-site.xml , 這里配置的東西有很多,都是跟Map-Reduce相關(guān)的,不過暫時先配置如下幾項:
?
- < configuration > ??
- ???? < property > ????
- ???????? <!--?JobTracker節(jié)點?--> ????
- ???????? < name > mapred.job.tracker </ name > ????
- ???????? < value > hdfs://192.168.100.102:9001 </ value > ????
- ???? </ property > ????
- ???? < property > ????
- ???????? <!--?map/reduce的系統(tǒng)目錄(使用的HDFS的路徑)?--> ????
- ???????? < name > mapred.system.dir </ name > ????
- ???????? < value > /hadoop/mapred/system </ value > ????
- ???? </ property > ????
- ???? < property > ????
- ???????? <!--?map/reduce的臨時目錄(可使用“,”隔開,設(shè)置多重路徑來分攤磁盤IO)?--> ????
- ???????? < name > mapred.local.dir </ name > ????
- ???????? < value > /hadoop/mapred/local </ value > ????
- ???? </ property > ????
- </ configuration > ???
?
?
這些配置都可以在一臺機器上搞定,由于Hadoop所有機器是使用同樣的配置,所以可以通過scp命令將conf下的內(nèi)容拷貝復(fù)制到各個機器上:
?
- scp?-rp?/hadoop/conf?fox@192.168.100.102/hadoop/??
只復(fù)制conf是由于我拷貝虛擬機時就已經(jīng)把JAVA,Hadoop 都安裝好后才拷貝的,這樣可以保證所有文件在同一目錄。
?
?
啟動
然后,激動人心的時刻到了,所有配置都搞定了,我們可以啟動了!
不過還有一件事情必須要先做, 格式化名稱空間。
在NameNode上,執(zhí)行如下命令:
?
- cd?/hadoop/bin??
- ./hadoop?namenode?-format??
?
?
然后就可以執(zhí)行最后一個命令了:
?
- ./start-all.sh??
如果一切順利的話,應(yīng)該就成功了:
?
?
如果要關(guān)閉的話,可以執(zhí)行
?
- ./stop-all.sh??
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
