本文hadoop的版本為hadoop-2.2.0
一、安裝java jdk
1、下載java jdk1.7版本,放在/home/software目錄下,
2解壓:tar -zxvf java-jdk*****.jar
3、vim /etc/profile
#在文件最后添加 export JAVA_HOME=/home/software/jdk1.7 export PATH=$PATH:$JAVA_HOME/bin #刷新配置 source /etc/profile
4、檢測是否成功安裝:java -version
二、安裝hadoop
1、在linux根路徑創建目錄cloud:sudo mkdir cloud
2、解壓hadoop到cloud目錄中:tar -zxvf hadoop-2.2.0.tar.gz -C /cloud/
3、進入目錄:/cloud/hadoop/etc/hadoop
三、修改配置文件
1、修改hadoop-env.sh,配置java jdk路徑,大概在27行配置,如下:
export JAVA_HOME=/home/software/jdk1.7
2、修改core-site.xml,配置內容如下
<configuration> <!-- 指定HDFS老大(namenode)的通信地址 --> <property> <name>fs.defaultFS</name> <value>hdfs://locahost:9000</value> </property> <!-- 指定hadoop運行時產生文件的存儲路徑 --> <property> <name>hadoop.tmp.dir</name> <value>/cloud/hadoop/tmp</value> </property> </configuration>
3、修改hdfs-site.xml,修改配置如下
<!-- 設置hdfs副本數量 --> <property> <name>dfs.replication</name> <value>1</value> </property>
4、修改mapred-site.xml 由於在配置文件目錄下沒有,需要修改名稱:mv mapred-site.xml.template mapred-site.xml
<configuration> <!-- 通知框架MR使用YARN --> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> </configuration>
5、修改yarn-site.xml,修改內容如下
<configuration> <!-- reducer取數據的方式是mapreduce_shuffle --> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.resourcemanager.hostname</name> <value>localhost</value> </property> </configuration>
6、講hadoop添加到環境變量,然后更新一下環境變量:source /etc/profile
export JAVA_HOME=//home/software/jdk1.7
export HADOOP_HOME=/cloud/hadoop
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
四、啟動hadoop
1、格式化hadoop,進入目錄:/cloud/hadoop/etc/hadoo,執行下列之一命令即可
hadoop namenode -format (過時)
hdfs namenode -format
2、啟動hdfs和yarn
先啟動HDFS
sbin/start-dfs.sh
再啟動YARN
sbin/start-yarn.sh
3、驗證是否成功,使用命令:jps,輸出如下即表示配置成功。
12272 Jps 4135 JobTracker 9500 SecondaryNameNode 9943 NodeManager 9664 ResourceManager 8898 NameNode 9174 DataNode
4、可以在瀏覽器中查看hdfs和mr的狀態.hdfs管理界面:http://localhost:50070 MR的管理界面:http://localhost:8088
五、hdfs基本操作和wordcount程序
1、進入hadoop安裝目錄中的share:/cloud/hadoop/share/hadoop/mapreduce
2、ls列出當前路徑下的文件,內容如下,其中帶有example字樣的為樣例程序
hadoop-mapreduce-client-app-2.2.0.jar hadoop-mapreduce-client-common-2.2.0.jar hadoop-mapreduce-client-core-2.2.0.jar hadoop-mapreduce-client-hs-2.2.0.jar hadoop-mapreduce-client-hs-plugins-2.2.0.jar hadoop-mapreduce-client-jobclient-2.2.0.jar hadoop-mapreduce-client-jobclient-2.2.0-tests.jar hadoop-mapreduce-client-shuffle-2.2.0.jar hadoop-mapreduce-examples-2.2.0.jar lib lib-examples sources
3、新建words文件,內容輸入如下,然后使用命令上傳到hdfs目錄下:hadoop fs -put words hdfs://localhost:9000/words
hello tom hello kitty hello world hello tom
4、在命令行中敲入:hadoop jar hadoop-mapreduce-examples-2.2.0.jar wordcount hdfs://localhost:9000/wordshdfs://localhost:9000/out
5、打開頁面:http://localhost:50070/dfshealth.jsp
6、點擊上圖中的Browse the filesystem,跳轉到文件系統界面,如下所示:
7、繼續點擊上圖的out/part-r-00000,wordcount程序最終運行的結果如圖所示: