Hadoop機(jī)架感知及啟動(dòng)停止方法詳解
在學(xué)習(xí)Hadoop的過(guò)程中,你可能會(huì)遇到Hadoop的機(jī)架感知方面的問(wèn)題,本節(jié)就向大家介紹一下Hadoop的機(jī)架感知方面的知識(shí)以及Hadoop的啟動(dòng)和停止的方法,歡迎大家一起來(lái)學(xué)習(xí)。下面是具體講解。
Hadoop的機(jī)架感知
HDFS和Map/Reduce的組件是能夠感知機(jī)架的。
NameNode和JobTracker通過(guò)調(diào)用管理員配置模塊中的APIresolve來(lái)獲取集群里每個(gè)slave的機(jī)架id。該API將slave的DNS名稱(或者IP地址)轉(zhuǎn)換成機(jī)架id。使用哪個(gè)模塊是通過(guò)配置項(xiàng)
topology.node.switch.mapping.impl來(lái)指定的。模塊的默認(rèn)實(shí)現(xiàn)會(huì)調(diào)用topology.script.file.name配置項(xiàng)指定的一個(gè)的腳本/命令。如果topology.script.file.name未被設(shè)置,對(duì)于所有傳入的IP地址
,模塊會(huì)返回/default-rack作為機(jī)架id。在Map/Reduce部分還有一個(gè)額外的配置項(xiàng)mapred.cache.task.levels,該參數(shù)決定cache的級(jí)數(shù)(在網(wǎng)絡(luò)拓?fù)渲校?。例如,如果默認(rèn)值是2,會(huì)建立兩級(jí)的cache-一級(jí)針對(duì)主機(jī)(主機(jī)->任務(wù)的映射)另一級(jí)針對(duì)機(jī)架(機(jī)架->任務(wù)的映射)。
啟動(dòng)Hadoop
啟動(dòng)Hadoop集群需要啟動(dòng)HDFS集群和Map/Reduce集群。
格式化一個(gè)新的分布式文件系統(tǒng):
$bin/hadoopnamenode-format
在分配的NameNode上,運(yùn)行下面的命令啟動(dòng)HDFS:
$bin/start-dfs.sh
bin/start-dfs.sh腳本會(huì)參照NameNode上${HADOOP_CONF_DIR}/slaves文件的內(nèi)容,在所有列出的slave上啟動(dòng)DataNode守護(hù)進(jìn)程。
在分配的JobTracker上,運(yùn)行下面的命令啟動(dòng)Map/Reduce:
$bin/start-mapred.sh
bin/start-mapred.sh腳本會(huì)參照J(rèn)obTracker上${HADOOP_CONF_DIR}/slaves文件的內(nèi)容,在所有列出的slave上啟動(dòng)TaskTracker守護(hù)進(jìn)程。
停止Hadoop
在分配的NameNode上,執(zhí)行下面的命令停止HDFS:
$bin/stop-dfs.sh
bin/stop-dfs.sh腳本會(huì)參照NameNode上${HADOOP_CONF_DIR}/slaves文件的內(nèi)容,在所有列出的slave上停止DataNode守護(hù)進(jìn)程。
在分配的JobTracker上,運(yùn)行下面的命令停止Map/Reduce:
$bin/stop-mapred.sh
bin/stop-mapred.sh腳本會(huì)參照J(rèn)obTracker上${HADOOP_CONF_DIR}/slaves文件的內(nèi)容,在所有列出的slave上停止TaskTracker守護(hù)進(jìn)程。
【編輯推薦】
- 技術(shù)分享 Hadoop集群搭建方法
 - 實(shí)例講解Hadoop用法
 - Hadoop集群與Hadoop性能優(yōu)化
 - HadoopHBase實(shí)現(xiàn)配置簡(jiǎn)單的單機(jī)環(huán)境
 - Hadoop命令大全
 















 
 
 

 
 
 
 