主要步驟請參考 http://dngood.blog.51cto.com/446195/775368。
裏邊的步驟都比較詳細(也就是如何去配置hadoop環境 ,即 how)。
這裏我着重記錄下爲什麼要這樣做(也就是why)
操作系統環境:
linux (GNU/Linux是hadoop產品開發和運行的平臺。)
完全分佈式模式只能佈置在linux下(unix未測試,hadoop官方也未給出明確說明。 windows目前來說只能作爲一個開發平臺,而不能作爲一個運行平臺)
所需軟件
1.java 1.5.x,必須安裝,建議選擇Sun公司發行的Java版本。(這個也不多說了,hadoop的運行環境)
2.ssh 必須安裝並且保證 sshd一直運行,以便用Hadoop 腳本管理遠端Hadoop守護進程。(比如 啓動hadoop集羣環境時候,start-all.sh 會調用其他機器上的啓動腳本,這時候需要權限之類的。 可以簡單理解爲配置好了ssh,權限這些事情就交給ssh做了)
3.hadoop 這個...不用多說了
java 和 ssh 的安裝這裏就不再多說,網上很容易搜到。
ssh的配置 文中講的也是比較清楚的,如果想更多的瞭解ssh,可以參考原文作者給出的ssh連接。http://dngood.blog.51cto.com/446195/724207
配置 host和主機名
修改/etc/hosts文件。給集羣的機器ip地址起一個別名,在下邊的配置文件中(如原文中的 四 hadoop 配置 一章)更容易使用和理解。
linux下創建hadoop用戶
理論上不創建也可以,但是還是很建議單獨創建hadoop用戶,便於管理。
配置 hadoop配置文件時候的注意事項:
在修改配置文件時候,value裏邊的 namenode之類的字段,是要在/etc/hosts 裏邊的存在的host,不然可能找不到結點。
<name>mapred.job.tracker</name>
<value>namenode:9001</value>
修改 hadoop/conf/core-site.xml 時候的注意事項:
要配置hadoop.tmp.dir,不然重啓機器之後,會造成http://yourNameNode:50070/dfshealth.jsp 不能訪問的問題。(log會報 INFO org.apache.hadoop.ipc.RPC: Server at localhost/127.0.0.1:9000 not available yet, Zzzzz... )
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadooptmp</value>
<description>A base for other temporary directories.</description>
</property>
遠程拷貝的命令:scp
eg:scp -r hadoop hadoop@datanode1:/home/hadoop/
啓動hadoop集羣環境後,測試結點是否正常工作的命令: jps
jps位於jdk的bin目錄下,其作用是顯示當前系統的java進程情況,及其id號。
PS:用了幾天才發現,這些都是很入門的配置,too young,too simple。路還很長...
==============================================================
我也是剛開始學習hadoop,學習的資料來自於 《hadoop實戰》和《hadoop權威指南》 以及網上搜到的一些資料。
這些筆記是學習的過程中自己積累的,然後用更加淺顯的話表述出來,希望也能幫助到初學者。當然裏邊會有很多錯誤,也希望大家指出,我會認真改正,謝謝