1. 程式人生 > >Centos 7.0 下hadoop叢集模式安裝(以3個節點為例,master,slave1,slave2)超詳細

Centos 7.0 下hadoop叢集模式安裝(以3個節點為例,master,slave1,slave2)超詳細

一、目標:

構建由3PC機構成的hadoop環境,安裝完成後使用HDFSMapreduceHbase等完成一些小例子。

二、硬體需求:

3Centos 7.0 系統PC機,每臺PC4G記憶體,500G硬碟,雙核CPU

三、軟體需求:

每臺PC機裝有Centos 7.0系統,其中一臺namenode,安裝系統時命名master;另外兩臺為datanode,安裝系統時分別命名為slave1slave2

四、Hadoop叢集模式安裝過程:

1 修改3臺主機上的/etc/hosts,主機名和IP地址分配:masterslave1slave2

首先、以root身份在master主機上修改/etc/hosts

檔案的內容:(注意,修改IP時以3臺真實聯網的IP為準)


2master主機上的/etc/hosts複製到其它2臺主機上(複製過程需要輸入root認證密碼)


3 因為Hadoop叢集中所有節點主機上都以hadoop賬戶安裝、配置、載入執行,所以首先需要以root身份在3個節點上建立一個hadoop賬戶,預設情況下所有主機的/home目錄下建立一個hadoop的目錄為hadoop賬戶的宿主目錄。


4 設定主機間無密碼信任連線:

4.1master主機上以hadoop賬戶身份使用ssh-keygen命令生成master主機hadoop賬戶金鑰對。此時在master節點主機的~

/.ssh目錄生成金鑰對id_rsadi_rsa.pub,可以通過ls命令列表檢視。

4.2 再分別用ssh命令操作slave1slave2主機生成2臺節點的金鑰對。



4.3 將剛剛生成的金鑰對中的公鑰複製到master節點的~/.ssh/目錄之下

4.4masterslave1slave2主機的公鑰寫入master主機~/.ssh目錄的認證檔案authorized_keys


4.5chmod命令修改認證檔案authorized_keys的屬性為600


4.6 將~/.ssh/authorized_keys認證檔案複製到所有節點主機的~/.ssh/目錄中,並進行密碼連線測試。


5 hadoop目錄結構的建立

5.1 chadoop目錄建立:mkdir ~/chadoop

5.2 tmp目錄建立:mkdir ~/chadoop/tmp

5.3 dfs目錄以及其下namedata目錄的建立:mkdir -p~/chadoop/dfs/name ~/chadoop/dfs/data


6 Java SDK安裝與配

6.1 Java SDK下載(wget http://202.118.69.111/res/jdk-8u121-linux-x64.tar.gz,並對其移動改名。


6.2 Java SDK環境變數的設定,將~/.bash_profile加入JAVA——HOMECLASSPATHPATH

(配置環境變數命令vi ~/.bash_profile,配置完後需用命令生效. ~/.bash_profile並可用(java-version檢視環境變數是否生效)

注意:配置環境變數時一定要填寫到安裝目錄bin之前的目錄,否則不會成功。
7 hadoop下載與安裝 7.1 hadoop下載解壓並移動
7.2環境變數的配置 (配置環境變數命令vi~/.bash_profile,配置完後需用命令生效. ~/.bash_profile
7.3因為時hadoop叢集模式,所以我們還要修改/chadoop/hadoop/hadoop-2.8.0/etc/hadoop目錄下的檔案(core-site.xml,hdfs-site.xml, mapred-site.xml, yarn-site.xml,hadoop-env.sh, mapred-env.sh,yarn-env.sh slaves) core-site.xml
hdfs-site.xml
mapred-site.xml
yarn-site.xml
hadoop-env.sh
mapred-env.sh

yarn-env.sh
slaves

8 master主節點克隆到slave1slave2節點

8.1克隆畫像檔案

scp ~/.bash_profile[email protected]:~/

scp ~/.bash_profile[email protected]2:~/


8.2畫像檔案生效

ssh [email protected] . ~/.bash_profile

ssh [email protected] . ~/.bash_profile


8.3 chadoop目錄克隆到slave1slave2


9master節點主機上格式化hdfs檔案系統

9.1 hdfs namenode -format



9.2啟動hadoop(啟動前關閉所有節點主機的防火牆,開放所有埠號)

service firewalld stop(會提示輸入root使用者密碼)

chkconfig firewalld off

(首先關閉主節點,再分別利用ssh命令進入slave1slave2關閉其餘節點防火牆)


9.3 hadoop的啟動

啟動命令:start-all.sh

檢驗hadoop程序:jpsmaster節點有4ResourceManager, Jps, NameNode, SecondaryNamenodeslave1slave23NodeManager, DataNode, Jps


9.4 hadoop的停止

命令:stop-all.sh

10 hadoop的操作

10.1hdfs檔案系統裡面操作。首先,用-mkdir命令在hdfs中建立一個mydir目錄,然後用-put命令上載檔案,步驟如下:

hdfs dfs -mkdir /mydir

hdfs dfs -put ~/chadoop/hadoop/hadoop-2.8.0/etc/hadoop/*/mydir

hdfs dfs -ls /mydir


10.2利用hadoop平臺上Mapreduce程式執行(統計所給例子詞頻)

命令:hadoop jar~/chadoop/hadoop/hadoop-2.8.0/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.0.jarwordcount /mydir/* /mydir/output

 


注意:hadoop jar(演算法包位置)(例子輸入資料夾)(例子結果輸出資料夾)

10.3結果檢視(hdfs dfs -cat/mydir/output/part-r-00000


11 hadoopWeb方式查詢

hadoop內建了tomcat應用伺服器,安裝執行後可以通過瀏覽器瀏覽執行

hadoophdfs系統的觀察埠是50070

應用程式的觀察埠是8088