由於下載的是hadoop的最新版,網上各種雜七雜八的東西都不適用。好在官網上說的也夠清楚了。如果有人看這篇文章的話,最大的忠告就是看官網。
官網2.6.0的安裝教程:http://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-common/SingleCluster.html
hdfs指令:http://hadoop.apache.org/docs/r2.6.0/hadoop-project-dist/hadoop-common/FileSystemShell.html
注意:2.6.0默認的都是64位系統的,如果用32位的機器總是會出現下面的警告: 這個可以無視,不會影響結果
Java HotSpot(TM) Client VM warning: You have loaded library /home/software/hadoop-2.6.0/lib/native/libhadoop.so.1.0.0 which might have disabled stack guard. The VM will try to fix the stack guard now.
It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'.
14/12/04 21:52:59 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
1.安裝jdk 我寫在另一篇文章里了http://www.cnblogs.com/dplearning/p/4140334.html
2. ssh免密碼登陸 http://www.cnblogs.com/dplearning/p/4140352.html
3.配置
etc/hadoop/core-site.xml:
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration>
etc/hadoop/hdfs-site.xml:
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>
4. $ bin/hdfs namenode -format //格式化
5. $ sbin/start-dfs.sh //開啟進程
成功的話,jps查看進程應該是
如果沒有DataNode 查看一下日志
如果有錯誤
java.io.IOException: Incompatible clusterIDs in /tmp/hadoop-root/dfs/data: namenode clusterID = CID-2b67ec7b-5edc-4911-bb22-1bb8092a7613; datanode clusterID = CID-aa4ac802-100d-4d29-813d-c6b92dd78f02
那么,應該是/tmp/hadoop-root 文件夾中還有之前殘留的文件,全部清空后重新format,重新啟動程序應該就好了。
運行例子:
1.先在hdfs上建個文件夾 bin/hdfs dfs -mkdir -p /user/kzy/input
bin/hdfs dfs -mkdir -p /user/kzy/output
2.先上傳一些文件:bin/hdfs dfs -put etc/hadoop/ /user/kzy/input 把etc/hadoop文件上傳到hdfs的/user/kzy/input中
3.執行指令
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar grep /user/kzy/input/hadoop /user/kzy/output/o 'dfs[a-z.]+'
注意/user/kzy/output/o 是個沒有建立過的文件夾,如果用已有的文件夾會有個警告
4.查看結果
bin/hdfs dfs -cat /user/kzy/output/o/*
再運行一些wordcount,官網的在http://hadoop.apache.org/docs/r2.6.0/hadoop-mapreduce-client/hadoop-mapreduce-client-core/MapReduceTutorial.html#Example:_WordCount_v1.0
運行
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar wordcount /user/kzy/input/hadoop /user/kzy/output/wordcount
用
bin/hdfs dfs -cat /user/kzy/output/wordcount/* 看結果