天天看點

Hadoop使用(一)

hadoop架構

Hadoop使用主/從(Master/Slave)架構,主要角色有NameNode,DataNode,secondary NameNode,JobTracker,TaskTracker組成。

其中NameNode,secondary NameNode,JobTracker運作在Master節點上,DataNode和TaskTracker運作在Slave節點上。

1,NameNode

NameNode是HDFS的守護程式,負責記錄檔案是如何分割成資料塊的,以及這些資料塊被存儲到哪些資料節點上。它的功能是對記憶體及I/O進行集中管理。

2,DataNode

叢集中每個從伺服器都運作一個DataNode背景程式,背景程式負責把HDFS資料塊讀寫到本地檔案系統。需要讀寫資料時,由NameNode告訴用戶端去哪個DataNode進行具體的讀寫操作。

3,Secondary NameNode

Secondary NameNode是一個用來監控HDFS狀态的輔助背景程式,如果NameNode發生問題,可以使用Secondary NameNode作為備用的NameNode。

4,JobTracker

JobTracker背景程式用來連接配接應用程式與Hadoop,使用者應用送出到叢集後,由JobTracker決定哪個檔案處理哪個task執行,一旦某個task失敗,JobTracker會自動開啟這個task。

4,TaskTracker

TaskTracker負責存儲資料的DataNode相結合,位于從節點,負責各自的task。

hadoop的安裝

1)安裝SSH

sudo apt-get install ssh

2)安裝java

Hadoop使用(一)

3)安裝hadoop

下載下傳并解壓縮

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

可以使用三種模式安裝,測試階段可以使用單機模式。

在啟動的時候可能會遇到很多問題,比如 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檢視服務是否啟動

Hadoop使用(一)

使用ssh localhost

出現如下提示

Hadoop使用(一)

輸入密碼後

出現歡迎頁面,配置成功

Hadoop使用(一)

免密碼登入

ssh-keygen -t rsa

Hadoop使用(一)

進入.ssh目錄

執行

cp id_rsa.pub authorized_keys

重新ssh localhost,可以不輸入密碼

單機僞分布式:

進入目錄/hadoop/conf

編輯 ~/hadoop/conf/core-site.xml

然後進入hadoop/bin目錄

執行 ./hadoop namenode -format

Hadoop使用(一)

執行start-all.sh

Hadoop使用(一)

啟動完成

打開浏覽器,輸入http://localhost:50030

就可以看到如下界面

Hadoop使用(一)

運作示例 bin/hadoop jar hadoop-mapred-examples-0.21.0.jar wordcount in out

得到輸出結果,配置成功!

安裝eclipse插件

插件的路徑在0.21下有所更改,路徑如下

Hadoop使用(一)

将插件拷到eclipse pluglin目錄下

重新開機eclipse

啟動後多出一個目錄

就可以使用eclipse進行程式設計了。

hadoop使用:

<a href="http://www.cnblogs.com/skyme/archive/2011/10/26/2223984.html">hadoop使用(一)</a>

<a href="http://www.cnblogs.com/skyme/archive/2011/10/27/2225202.html">hadoop使用(二)</a>

<a href="http://www.cnblogs.com/skyme/archive/2011/10/28/2226850.html">hadoop使用(三)</a>

<a href="http://www.cnblogs.com/skyme/archive/2012/07/29/2227507.html">hadoop使用(四)</a>

<a href="http://www.cnblogs.com/skyme/archive/2012/06/01/2529855.html">hadoop使用(五)</a>

<a href="http://www.cnblogs.com/skyme/archive/2012/06/04/2534876.html">hadoop使用(六)</a>

hbase實戰:

<a href="http://www.cnblogs.com/skyme/archive/2012/07/25/2608310.html">hbase實戰——(1.1  nosql介紹)</a>