網絡上關於如何單機模式安裝Hadoop的文章不少,按照其步驟走下來多數都失敗,按照其操做彎路走過了很多但終究仍是把問題都解決了,因此順便本身詳細記錄下完整的安裝過程。html
此篇主要介紹在Ubuntu安裝完畢後,如何進行Hadoop的安裝和配置。java
我所記錄的筆記適合沒有Linux基礎的朋友跟我一塊兒操做,同時歡迎高手參觀指導。apache
環境約定ubuntu
如下環境基於攥寫時間:5th July 2015。vim
宿主機器:Windows 8windows
虛擬機環境:WMware Wrokstation 11bash
Ubuntu版本:Ubuntu Desktop 14.04.2網絡
物理環境:ssh
筆記本Thinkpad T420 i5 CPU 4+4=8G內存, 500G硬盤。jvm
其它:
JavaJDK版本:7
Hadoop版本:2.7.0
首先,登陸Ubuntu,進入到命令模式,能夠經過兩個方法,就是點擊左上角的Search按鈕,輸入Ter而後在下面的結果界面就能夠找到控制檯Terminal。
另一個方法就是經過快捷鍵Ctrl+Alt+T。
首先打開虛擬機的網絡鏈接。Ubuntu的配置過程當中包括更新和軟件的安裝都要以來於互聯網環境。
回到控制檯,輸入以下命令開始更新系統(需聯網)。sudo是常常會用到的,提示系統以最高權限運行,有些相似windows下的UAC。
sudo apt-get update
系統會提示輸入密碼,而後開始下載和安裝更新。
完成更新後,接下來在系統中首先建立名稱爲hadoop的用戶名和組。
首先建立組:
sudo addgroup Hadoop
而後再建立用戶。
sudo adduser -ingroup hadoop Hadoop
輸入這個命令後系統會提示輸入密碼,而後關於Full Name等信息一路回車就能夠。
最後輸入以下命令,使新創建的hadoop帳戶擁有最高的權限。
sudo gedit /etc/sudoers
系統會彈出Ubuntu Desktop的Gedit工具,這是一個可視化的文本編輯工具,跟windows下的記事本同樣。在Ubuntu Server下沒有圖形化界面,能夠經過vim完成相似的編輯和配置工做。
在打開的配置文件中,在root下面加入下面一行。
hadoop ALL=(ALL:ALL) ALL
須要留意的是,若是手動敲入這行內容,hadoop後面跟的是/t,也就是鍵盤的Tab。若是這裏輸入不對的話會致使Ubuntu系統出現很大的問題。
編輯完成後點擊Gedit上面的Save按鈕而後關閉這個工具(Ubuntu Desktop下關閉和最大化等按鈕是在每一個窗體的左上方),回到控制檯。
接下來配置ssh服務,使系統能夠遠程登陸。
輸入以下命令安裝ssh。
sudo apt-get install openssh-server
而後經過以下命令開啓ssh服務。
sudo /etc/init.d/ssh start
最後經過以下命令,查看ssh服務是否啓動。
ps -e | grep ss
如圖看到sshd的話說明ssh啓動成功。
接下來配置ssh的免密碼登陸,確保其它節點能夠不須要密碼就能夠登陸到系統。(目前不太肯定單擊模式中這一步是否必要,但爲了後續搭建多節點環境因此先跟着配置。)
首先輸入以下命令生成公匙和私匙。
ssh-keygen -t rsa -P ""
而後經過以下命令把公匙的內容加入到authorized_keys中。
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
至此ssh的配置完成。
接下來安裝java的jdk,輸入以下命令開始安裝。安裝過程會略微長一些。
sudo apt-get install openjdk-7-jdk
安裝完畢後,能夠經過以下命令肯定Java的版本。
java –version
接下來下載Hadoop。
打開Ubuntu Desktop的Firefox,輸入如下網址:
找到頁面的Get started,點擊Download。
在下載頁中,找到2.7.0版本的二進制下載連接。
而後系統會導航到另一個下載頁面,從衆多地址中選擇一個就能夠了。
點擊一個連接以後開始下載。
點擊Save File以後,下載文件會默認存放在本地Ubuntu的Home/Wade/Downloads下,請留意Wade是我創建的用戶名。
回到控制檯,敲入cd命令,會回到/home/wade目錄。因此直接敲入Downloads就能夠進入到下載目錄。
進入到Downloads目錄後,輸入以下指令將hadoop文件解壓出來。
sudo tar xzf hadoop-2.7.0.tar.gz
而後使用下面的命令將解壓後的目錄移動到/usr/local/hadoop目錄。
sudo mv hadoop-2.7.0 /usr/local/hadoop
接下來給前面創建的hadoop用戶賦予相關的權限,不然hadoop用戶沒法配置這個目錄下面的文件。
sudo chown -R hadoop:hadoop /usr/local/hadoop
接下來配置java home,首先經過以下命令肯定java的安裝位置。
update-alternatives - -config java
其中/usr/lib/jvm/java-7-openjdk-amd64是咱們須要的部分。
接下來把這個配置到bashrc中,輸入以下命令。
sudo gedit ~/.bashrc
系統會打開Gedit,而後把以下內容附加到文件的末尾。bashrc配置文件很重要,若是有差錯會致使系統很大的問題。若是你的版本和前面的操做跟個人都同樣的話,那麼下面的配置內容是不須要更改的。
#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
配置以後的文件。點擊Save後關閉。
接下來經過以下命令使配置生效。
source ~/.bashrc
再輸入以下命令,配置hadoop的環境文件。
sudo gedit /usr/local/hadoop/etc/hadoop/hadoop-env.sh
找到export JAVA段,配置成以下內容。
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
配置後的文件以下圖。
接下來經過以下命令讓配置生效。
source /usr/local/hadoop/etc/hadoop/hadoop-env.sh
至此hadoop的配置工做完成。
接下來測試一下hadoop的環境,咱們將運行一個hadoop自帶的程序WordCount。
這個應用咱們統計一下在hadoop目錄下README.txt文件各個英文單詞出現的次數。
首先使用如下命令定位到hadoop目錄。
cd /usr/local/Hadoop
在這個目錄下建立一個input文件夾。
sudo mkdir input
而後將README.txt文件夾複製到input文件夾下。
sudo cp README.txt input
而後運行以下命令開始統計。
sudo bin/hadoop jar share/hadoop/mapreduce/sources/hadoop-mapreduce-examples-2.7.0-sources.jar org.apache.hadoop.examples.WordCount input output
看到以下輸出說明執行成功了。
輸入以下命令查看統計結果。(cat命令是顯示文本內容的命令,若是編輯文件的話在ubuntu desktop下能夠用gedit,server下能夠用vim)
cat output/*
至此hadoop單擊模式搭建完畢。
參考博客:
http://www.cnblogs.com/maybe2030/p/4591195.html
http://www.cnblogs.com/kinglau/p/3794433.html
注:其中第一個地址的內容有些細節在我這裏沒法走通,因此我這裏根據其要表達的意思作了相關的修正。