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