前提:1.機器最好都做ssh免密登入,最後在啟動hadoop的時候會簡單很多 免密登入看 免密登入
2.叢集中的虛拟機最好都關閉防火牆,否則很麻煩
3叢集中的虛拟機中必須安裝jdk.
具體安裝步驟如下:
1.将
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIn5GcuQTN1EDNyIjYykzNzYzYiFTM5cTNiFmNhZ2NjVzYkRGZfdWbp9CXt92Yu4GZjlGbh5SZslmZxl3Lc9CX6MHc0RHaiojIsJye.png)
檔案拷貝到linux系統中(可以拷貝到是以的虛拟機,也可以拷貝到一台虛拟機,最後進行複制)
2.解壓到/usr/local/hadoop ,看你需要安裝到哪個目錄就解壓到哪個目錄,解壓指令 tar -zxvf ~/hadoop-1.2.1-bin.tar.gz -C /usr/local/hadoop ,解壓完成就安裝完了
接下來就應該修改配置檔案
3.配置namenode和資料存儲的位置,修改安裝後hadoop-1.1.2下的conf檔案夾下的core.site.xml檔案
添加如下資訊:(配置的namenode的ip和hadoop臨時檔案的位址)
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://node05:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop-1.2</value>
</property>
</configuration>
core-site.xml
4.配置節點數(datanode) 編輯slaves檔案
5.配置SecondaryNameNode,編輯masters檔案,配置如下:
我一共用了三台虛拟機,node05是我的namenode節點.,node06,node07是我的datanode節點.同時node06也是我的SecondaryNameNode節點
6.配置資料的副本數 編輯hdfs-site.xml檔案(副本數應該小于等于datanode的數量)
具體配置如下:
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
</configuration>
hdfs-site.xml
7.将我們安裝的hadoop複制到其餘幾台虛拟機中,注意配置檔案保持一緻,否則會失敗
8.格式化namenode,到hadoop安裝後的bin目錄下執行 ./hadoop namenode -format指令
如果出現Error:JAVA_HOME.....錯誤 請在hadoop 的conf目錄下的hadoop-env.sh檔案中配置如下:
9.接下來就可以啟動hadoop了
啟動的時候,到bin目錄下執行 ./start-dfs.sh指令,(因為我這裡沒有安裝hdfs是以執行的這個指令)
10:測試是否成功,在每台虛拟機中輸入jps測試是否啟動成功
node05:namenode:
node06(是datanode也是SecondaryNameNode)
node07 datanode:
11,在實體機中,修改hosts檔案,将我們的叢集的ip和域名添加進去:
通路我們的namenode檢視hadoop叢集資訊
Live Nodes的節點數正确為2
如果Live Nodes的值為0
啟動過程中動态檢視hadoop的日志檔案tail -f /usr/local/hadoop/hadoop-1.1.2/logs/hadoop-root-namenode-node05.log 檢視有哪些錯誤,
如過提示
2018-01-25 20:54:09,903 INFO org.apache.hadoop.hdfs.server.namenode.DecommissionManager: Interrupted Monitor
java.lang.InterruptedException: sleep interrupted
修改/etc/hosts檔案