1,下載Hadoop
目前在Ubuntu的軟件庫里面 ?沒有發現Hadoop的壓縮包,沒猜錯Hadoop不是可執行文件 只是一個壓縮包吧!所以我們只能自己到官網下載(http://hadoop.apache.org/releases.html);
在Apache社區中,下載軟件的時候常看到source類型和binary類型的文件包,第一種其實就是源碼,您可以根據自己的環境進行編譯 生成適合自己運行環境的,第二種是我們課直接使用的;
cd ?/usr ? 切換到usr目錄下
sudo mkdir ?hadoop ?創建hadoop文件夾
sudo cd hadoop 進入hadoop文件夾
(wget是從網絡上直接下載文件的命令,其支持http ?ftp 等協議,默認下載文件到當前目錄;)
由于我使用的是虛擬機,下載速度很慢,所以我直接使用本地下載,然后上傳到目錄下;
apt-get install lrzsz ? 安裝lrzsz腳本,此腳本支持文件傳輸,類似于FileZ;
(http://freecode.com/projects/lrzsz/)
解壓縮文件:
cd ?/usr/hadoop
sudo tar -xzf hadoop-2.7.3.tar.gz ? ? tar和gz都是linux下面的壓縮算法文件的后綴;通常采用tar命令來解壓文件; tar 的參數選項有主選項 ?和選擇選項,主要選項例如上面的 -x ? 是解壓的意思 ?還有 -c是壓縮的意思; ? ?f是制定文件名 ? ?f選項一定放在最后 ? ? z是代碼gz的壓縮解密;
2,hadoop目錄結構介紹
為了便于觀察我在window下面解壓了Hadoop壓縮文件,得出的出如圖目錄;
bin:Hadoop最基本的管理腳本和使用腳本的目錄,這些腳本是sbin目錄下管理腳本的基礎實現,用戶可以直接使用這些腳本管理和使用Hadoop。
etc:Hadoop配置文件所在的目錄,包括core-site,xml、hdfs-site.xml、mapred-site.xml等從Hadoop1.0繼承而來的配置文件和yarn-site.xml等Hadoop2.0新增的配置文件。
include:對外提供的編程庫頭文件(具體動態庫和靜態庫在lib目錄中),這些頭文件均是用C++定義的,通常用于C++程序訪問HDFS或者編寫MapReduce程序。
lib:該目錄包含了Hadoop對外提供的編程動態庫和靜態庫,與include目錄中的頭文件結合使用。
libexec:各個服務對用的shell配置文件所在的目錄,可用于配置日志輸出、啟動參數(比如JVM參數)等基本信息。
sbin:Hadoop管理腳本所在的目錄,主要包含HDFS和YARN中各類服務的啟動/關閉腳本。
share:Hadoop各個模塊編譯后的jar包所在的目錄。
3,配置單點Hadoop
》基礎配置: ?配置Hadoop運行的jdk;
sudo vi ?..../etc/hadoop/hadoop-env.sh ? ?...代表hadoop解壓存放的目錄
修改 export JAVA_HOME = jdk安裝目錄;
》啟動
mkdir .../input ? 創建一個輸入參數文件加
cp .../etc/hadoop/*.xml ? ? ?把hadoop默認的配置文件都copy到input里面
/usr/hadoop/hadoop-2.7.3/bin/hadoop jar .../share/hadoop/mapreduce/
hadoop-mapreduce-examples-*.jar grep /usr/hadoop/input /usr/hadoop/output 'dfs[a-z.]+'
4,偽分布式Hadoop
》基礎配置:
ssh免密碼登陸 ? ? 如果想要ssh面密碼登陸,必須使用 ssh的keygen生成密匙對;
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa ?ssh-keygen是ssh算法工具, -t指定算法,-P 是密碼 -f是文件名;
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys ? 把公鑰追加到認證文件中;
chmod ?600 ~/.ssh/authorized_keys ?設置認證文件只有所有者可以讀寫操作;
因為在免密碼登陸的時候涉及到生產的密匙對的權限問題即密匙文件必須是只能用戶所有者操能操作,所以我們必須知道文件權限;
(注: Linux中權限管理 ?有三個要素 ?一個要素是操作者 ? 一個是操作 ?一個是權限;操作者在Linux中按照用戶 ?用戶組來管理;操作主要有 讀(R) 寫(W) 執行(X)三種,操作可以用數字轉換 ?r=4 w=2 x=1;權限則是用來衡量操作者對文件或文件夾具有哪些操作要素;權限中我們同通過 所有者權限 ?所在組權限和其他組權限來管理 ??其中我們可以通過chomn來改變文件所有者 ? ?通過chgrp 改變文件所在組 ? 通過chmod來改變用戶權限。 ?我們在ls -a的時候可以看見文件的權限 ? ?-rw-r----- ?第一個-代表這個是文件 ? rw- 代表文件所有著具有讀寫權限 ? r-- 代表本組人員具有讀權限 ?---代表其他用戶組沒有權限對此文件操作)