Hadoop完全分布模式安裝實現(xiàn)詳解
本節(jié)向大家介紹一下Hadoop完全分布模式安裝方法,你可以和之前介紹的兩種模式做一下對比,看看那種模式更適合你,歡迎大家一起來學習Hadoop完全分布模式安裝。
Hadoop完全分布模式安裝
Hadoop概念
Hadoop是一個分布式系統(tǒng)基礎架構(gòu),由Apache基金會開發(fā)。用戶可以在不了解分布式底層細節(jié)的情況下,開發(fā)分布式程序。充分利用集群的威力高速運算和存儲。
簡單地說來,Hadoop是一個可以更容易開發(fā)和運行處理大規(guī)模數(shù)據(jù)的軟件平臺。
Hadoop實現(xiàn)了一個分布式文件系統(tǒng)(HadoopDistributedFileSystem),簡稱HDFS。HDFS有著高容錯性(fault-tolerent)的特點,并且設計用來部署在低廉的(low-cost)硬件上。而且它提供高傳輸率(highthroughput)來訪問應用程序的數(shù)據(jù),適合那些有著超大數(shù)據(jù)集(largedataset)的應用程序。HDFS放寬了(relax)POSIX的要求(requirements)這樣可以流的形式訪問(streamingaccess)文件系統(tǒng)中的數(shù)據(jù)。當前最新版本是hadoop0.20.1。下面就hadoop0.20.1為藍本,介紹在UbuntuLinux9.10下hadoop完全分布模式安裝的方法。
支持的平臺:
Linux,可作為開發(fā)和產(chǎn)品部署的平臺;
Windows,可作為開發(fā)平臺。
事先需要的軟件:
1.JavaTM1.6.x,必須安裝,建議選擇Sun公司發(fā)行的Java版本;
2.ssh必須安裝,并保證sshd運行,hadoop將以ssh進行通訊;
3.如果是windows,則需要裝Cygwin,用以支持shell命令。
安裝可用的模式:
1.本地模式;
2.偽分布模式;
3.完全分布模式。
Hadoop完全分布模式安裝步驟(這里的步驟只讓hadoop能跑,不帶任何調(diào)優(yōu)步驟):
1.下載并解壓hadoop到集群中某臺服務器目標目錄。
2.配置/etc/hosts文件
2.1確認集群中所有服務器均有hostname,并記錄IP
2.2每一臺服務器的/etc/hosts文件里配置hostname和IP對應關(guān)系,加快解析速度。
3.配置SSH免密碼登陸
3.1每臺服務器上運行:
$ssh-keygen-tdsa-P''-f~/.ssh/id_dsa
$cat~/.ssh/id_dsa.pub>>~/.ssh/authorized_keys
3.2把各臺服務器的~/.ssh/authorized_keys文件內(nèi)容合并到一個總的authorized_keys文件;
3.3把那個總的authorized_keys文件scp到每臺服務器,替換原有的authorized_keys文件;
3.4互相SSH對方機器,確認SSH登陸不需要密碼
4.配置各臺服務器時間,確保每臺服務器時間相同;Hadoop完全分布模式安裝過程中還要配置Hadoop。
5.配置hadoop
5.1配置conf/hadoop-env.sh文件
配置JAVA_HOME一行,配置正確的路徑。
5.2配置conf/core-site.xml文件
- viewplaincopytoclipboardprint?
- <configuration>
- <property>
- <name>fs.default.name</name>
- <value>hdfs://host:9000</value>
- </property>
- </configuration>
- <configuration>
- <property>
- <name>fs.default.name</name>
- <value>hdfs://host:9000</value>
- </property>
- </configuration>
注:這里的host必須改為對應的namenode的hostname
5.3配置conf/hdfs-site.xml文件
如果不修改使用默認設置也可以。
5.4配置conf/mapred-site.xml文件
- viewplaincopytoclipboardprint?
- <configuration>
- <property>
- <name>mapred.job.tracker</name>
- <value>localhost:9001</value>
- </property>
- </configuration>
- <configuration>
- <property>
- <name>mapred.job.tracker</name>
- <value>localhost:9001</value>
- </property>
- </configuration>
注:這里的host必須改為對應的namenode的hostname
6.配置conf/slaves和conf/master文件
slaves文件里寫datanode的hostname或IP,master里寫namenode、secondarynamenode的hostname或IP,每行寫一個服務器,以#開頭的行視為注釋。
7.分發(fā)hadoop
直接通過scp,把hadoop整個目錄復制到各臺服務器的相同目錄即可
8.格式化hadoop的namenode
執(zhí)行命令:$bin/hadoopnamenode-format
9.啟動hadoop
執(zhí)行命令:$bin/start-all.sh
至此,Hadoop完全分布模式安裝完畢,通常啟動到所有服務器完全識別出來需要一定的時間(我這里是5分鐘左右),要耐心等待,在namenode節(jié)點上,打開瀏覽器,輸入http://localhost:50070/即可看到整個hadoop情況,JobTracker情況可以看每一個服務器的http://localhost:50030/。
【編輯推薦】