1. 程式人生 > >Hadoop安裝配置、執行第一個WordCount示例程式

Hadoop安裝配置、執行第一個WordCount示例程式

作業系統ubuntu。本篇目的是在單機模式下執行成功WordCount示例程式。

本篇小結安裝步驟,遇到的問題和解決辦法。

疑惑點及其思考。

Hadoop是為linux而開發的,所以開發hadoop程式,包括spark最好在linux環境下。目錄如下:

一:Hadoop執行環境安裝:

java1.6安裝配置

Hadoop使用者建立

SHH安裝及配置

二:安裝Hadoop 2.x

下載

安裝

配置

三:WordCount示例程式執行測試

建立input

拷貝檔案到input目錄

執行示例程式

檢視輸入目錄output

詳細過程如下:

一:Hadoop執行環境安裝:

java1.6安裝配置:

具體過程分為:下載Oracle JDK, 新建安裝目錄,解壓,配置環境變數,讓環境變數生效,檢驗java安裝結果。

下載:到官網下載linux版本的oracle JDK

新建目錄:命令mkdir

解壓檔案:命令tar -zxvf解壓檔案到新建目錄

配置環境變數:命令vim ~/.bashrc或者gedit ~/.bashrc修改配置檔案。新增安裝路徑JAVA_HOME等。

讓環境變數生效:命令source ~/.bashrc

檢驗安裝結果:命令java -version.能出現安裝java的版本資訊,則表示成功。

注意事項:linux系統預設安裝了openJDK,為了效能,個人還是建議刪除openJDK.到官網下載oracle JDK並安裝。

Hadoop使用者建立

建立Hadoop使用者:命令sudo useradd -m hadoop -s /bin/bash. 建立hadoop使用者,並使用bash作為shell.

設定密碼:命令sudo passwd hadoop.

新增hadoop使用者管理員許可權:命令sudo adduser hadoop su.

網上另一種方法是:命令sudo gedit /etc/sudoers.在開啟的檔案中在root All=(All:All)All下一行新增hadoop All=(All:All)All.

登出當前使用者,並用hadoop使用者登陸。

SSH安裝及配置

用hadoop登陸後,更新apt.命令sudo apt-get update.

安裝SSH:命令sudo apt-get install openssh-server. 預設的openssh-client已經安裝。

啟動服務:命令sudo /etc/init.d/ssh start

檢視服務是否啟動:ps -e | grep ssh

登陸ssh:命令ssh localhost。輸入hadoop使用者密碼即可登陸。這樣每次登陸都必須輸入密碼,比較費勁,所以需要設定免密碼登陸。

生成金鑰並加入授權:命令ssh-keygen

無密碼登陸ssh:命令ssh localhost就能無密碼登陸了。

二:安裝Hadoop 2.x

下載:

到官網下載最新且最穩定(stable)的版本,格式為.tar.gz,為已編譯好版本。src是hadoop原始碼,需要重新編譯才可用。

md5檔案用於校驗下載檔案是否完整。一般不用。

安裝:

解壓:tar -zxvf命令解壓到 /usr/local目錄下

改名:mv命令改名為hadoop

修改檔案許可權:

方法一:sudo chmod 774 /usr/local/hadoop

方法二:sudo chown -R hadoop ./hadoop

配置:

配置~/.bashrc檔案:用gedit開啟,檔案末尾新增如下:

#HADOOP VARIABLES START

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64

export HADOOP_INSTALL=/usr/local/hadoop

export PATH=$PATH:$HADOOP_INSTALL/bin

export PATH=$PATH:$HADOOP_INSTALL/sbin

export HADOOP_MAPRED_HOME=$HADOOP_INSTALL

export HADOOP_COMMON_HOME=$HADOOP_INSTALL

export HADOOP_HDFS_HOME=$HADOOP_INSTALL

export YARN_HOME=$HADOOP_INSTALL

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native

export HADOOP_OPTS="-Djava.library.path=$HADOOP_INSTALL/lib"

#HADOOP VARIABLES END

配置檔案/usr/local/hadoop/etc/hadoop/hadoop-env.sh

修改這一行為:export JAVA_HOME=/usr/lib/jvm/java

測試haoop是否安裝成功,見下圖:

三:WordCount示例程式執行測試

建立input

命令mkdir input, 建立input目錄。

拷貝檔案到input目錄

cp README.txt input, 拷貝檔案到input目錄,作為輸入。

執行示例程式

bin/hadoop jar share/hadoop/mapreduce/sources/hadoop-mapreduce-examples-2.4.0-sources.jar org.apache.hadoop.examples.WordCount input output

見下圖:

執行結果如下:


檢視輸入目錄output

命令cat output/*,結果如下:

參考文章:

1.http://www.powerxing.com/install-hadoop/

2.http://www.cnblogs.com/kinglau/p/3794433.html

3.http://wenku.baidu.com/link?url=nlVL80JkbQkGD9T8lZqlrxSqTHCmm2A5z4EYcfvoHYe4CZIyh0VseZxIJ5fpJbGXRruHv7UCB-e-bTh_8NvLGplQSpcVyQ_iMuSowhZm6ty