hadoop框架
Hadoop使用主/從(Master/Slave)架構(gòu),主要角色有NameNode,DataNode,secondary NameNode,JobTracker,TaskTracker組成。
其中NameNode,secondary NameNode,JobTracker運(yùn)行在Master節(jié)點(diǎn)上,DataNode和TaskTracker運(yùn)行在Slave節(jié)點(diǎn)上。
1,NameNode
NameNode是HDFS的守護(hù)程序,負(fù)責(zé)記錄文件是如何分割成數(shù)據(jù)塊的,以及這些數(shù)據(jù)塊被存儲(chǔ)到哪些數(shù)據(jù)節(jié)點(diǎn)上。它的功能是對(duì)內(nèi)存及I/O進(jìn)行集中管理。
2,DataNode
集群中每個(gè)從服務(wù)器都運(yùn)行一個(gè)DataNode后臺(tái)程序,后臺(tái)程序負(fù)責(zé)把HDFS數(shù)據(jù)塊讀寫到本地文件系統(tǒng)。需要讀寫數(shù)據(jù)時(shí),由NameNode告訴客戶端去哪個(gè)DataNode進(jìn)行具體的讀寫操作。
3,Secondary NameNode
Secondary NameNode是一個(gè)用來(lái)監(jiān)控HDFS狀態(tài)的輔助后臺(tái)程序,如果NameNode發(fā)生問(wèn)題,可以使用Secondary NameNode作為備用的NameNode。
4,JobTracker
JobTracker后臺(tái)程序用來(lái)連接應(yīng)用程序與Hadoop,用戶應(yīng)用提交到集群后,由JobTracker決定哪個(gè)文件處理哪個(gè)task執(zhí)行,一旦某個(gè)task失敗,JobTracker會(huì)自動(dòng)開(kāi)啟這個(gè)task。
4,TaskTracker
TaskTracker負(fù)責(zé)存儲(chǔ)數(shù)據(jù)的DataNode相結(jié)合,位于從節(jié)點(diǎn),負(fù)責(zé)各自的task。
hadoop的安裝
1)安裝SSH
sudo apt-get install ssh
2)安裝java
3)安裝hadoop
下載并解壓縮
tar -zxvf hadoop-0.21.0.tar.gz
4)改變配置
指定java安裝路徑
使用vi
vi conf/hadoop-env.sh
添加
export JAVA_HOME = /usr/java/jdk1.7.0_01
可以使用三種模式安裝,測(cè)試階段可以使用單機(jī)模式。
在啟動(dòng)的時(shí)候可能會(huì)遇到很多問(wèn)題,比如 22 connection refused
可以安裝openssh,使用apt-get
sudo apt-get install openssh-client
sudo apt-get install openssh-server
sudo apt-get install chkconfig
使用chkconfig --list | grep sshd查看服務(wù)是否啟動(dòng)
使用ssh localhost
出現(xiàn)如下提示
輸入密碼后
出現(xiàn)歡迎頁(yè)面,配置成功
免密碼登錄
ssh-keygen -t rsa
進(jìn)入.ssh目錄
執(zhí)行
cp id_rsa.pub authorized_keys
重新ssh localhost,可以不輸入密碼
單機(jī)偽分布式:
進(jìn)入目錄/hadoop/conf
編輯 ~/hadoop/conf/core-site.xml
<configuration> <property> <name>fs. default .name</name> <value>hdfs: //localhost:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/tmp/hadoop/hadoop-${user.name}</value> </property> </configuration> |
編輯 ~/hadoop/conf/hdfs-site.xml
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration> |
編輯 ~/hadoop/conf/mapred-site.xml
<configuration> <property> <name>mapred.job.tracker</name> <value>localhost:9001</value> </property> </configuration> |
然后進(jìn)入hadoop/bin目錄
執(zhí)行 ./hadoop namenode -format
執(zhí)行start-all.sh
啟動(dòng)完成
打開(kāi)瀏覽器,輸入http://localhost:50030
就可以看到如下界面
運(yùn)行示例 bin/hadoop jar hadoop-mapred-examples-0.21.0.jar wordcount in out
得到輸出結(jié)果,配置成功!
安裝eclipse插件
插件的路徑在0.21下有所更改,路徑如下
將插件拷到eclipse pluglin目錄下
重啟eclipse
啟動(dòng)后多出一個(gè)目錄
就可以使用eclipse進(jìn)行編程了。
聯(lián)系客服