1. 程式人生 > >Windows 7(64位) 配置Eclipse+Hadoop2.5.1開發環境

Windows 7(64位) 配置Eclipse+Hadoop2.5.1開發環境

本文承接《CentOS 7 快速架設hadoop 2.5.1叢集》一文。

1.增加hadoop使用者並登陸。

使用者名稱hadoop,密碼 hadoop (使用者要與master上一樣,為測試方便可以直接放入管理員群組),同hadoop登陸系統


2.安裝JDK。

安裝與叢集master機器相同版本的jdk:jdk-7u71-windows-x64.exe


3.安裝eclipse。

將官網下的eclipse-jee-luna-SR1-win32-x86_64.zip解壓到c:\eclipse,將下載的hadoop-eclipse-plugin-2.5.1.jar(網上搜下)放入c:\eclipse\plugins目錄


4.修改hosts。

編輯C:\Windows\System32\drivers\etc\hosts,與master上hosts相同


5.安裝本地hodoop。

將官網下的hadoop-2.5.1.tar.gz解壓 C:\hadoop-2.5.1 (主要作用是提供jar包,好像/etc/hadoop裡的四個XML配置無關),配置HADOOP_HOME環境變數為C:\hadoop-2.5.1


6.安裝hadoop-common-bin-master。
https://github.com/srccodes/hadoop-common-2.2.0-bin 下載hadoop-common-2.2.0-bin-master.zip (在右下角)

解壓,將bin目錄中所有檔案放到 C:\hadoop-2.5.1\bin 將hadoop.dll放到c:\windows\system32


7.配置eclipse中hadoop目錄。

單擊Window-->preferences設定hadoop installation directory


 8、配置eclipse中hadoop location。
單擊Window -> Open Perspective -> Other 選擇、Map/Reduce, 圖示是個藍色的象。 就可以看到mapreduce檢視了;接下來進行設定mapreduce開發環境,在eclipse下端,控制檯旁邊會多一個Tab,叫“Map/Reduce Locations”,在下面空白的地方點右鍵,選擇“New Hadoop location...”,彈出配置框如圖所示:
 

Location Name: master
MR Master: master 9001

DFS: master 9000


8、執行第一個程式WordCount
a.建立專案:File->New-->other-->Map/Reduce project 專案名:MR1 點完成
b.建立WordCount類:在src上點右鍵new-->class 彈出對話方塊中 packages輸入 org.apache.hadoop.examples , Name張輸入WordCount,儲存,關閉WordCount.java
c.偷樑換柱:然後將原始碼中hadoop-2.5.1-src.tar解壓出來的hadoop-2.5.1-src\hadoop-mapreduce-project\hadoop-mapreduce-examples\src\main\java\org\apache\hadoop\examples\WordCount.java 覆蓋 專案中的WordCount.java.
d.建立測試文字,可多個,任意副檔名,將文字檔案放入.:
 
e.然後右鍵 Run As -> Run configuration ,彈出配置視窗單擊左邊的javap Application 選擇WordCount程式,然後在右側的
Arguments Program arguments 中配置執行引數:
hdfs://master:9000/user/hadoop/input   hdfs://master:9000/user/hadoop/output 

分別對應程式輸入目錄和輸出目錄(output若存在可先刪除),點選apply,然後再在wordcount上右鍵 ->run on hadoop 程式就能執行並在eclipse中列印日誌資訊了。


補充:若Eclipse執行Hadoop示例提示:

log4j:WARN No appenders could be found for logger (org.apache.hadoop.metrics2.lib.MutableMetricsFactory).

log4j:WARN Please initialize the log4j system properly.

說明沒有log4j.properties。建立一個個放到bin目錄下即可,參考內容如下:

log4j.rootLogger=debug, stdout, R

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.appender.stdout.layout.ConversionPattern=%5p - %m%n

log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=firestorm.log

log4j.appender.R.MaxFileSize=100KB
log4j.appender.R.MaxBackupIndex=1

log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n

log4j.logger.com.codefutures=DEBUG