Hadoop2.6.0 單機、偽分布式部署

系統環境:
操作系統:CentOS 6.5
Hadoop:2.6.0

為了方便起見,打印當前系統狀態


當前系統狀態

vim /etc/hosts,host信息如下:

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
10.211.55.150 master

準備工作

  1. 安裝idk 1.7
  2. 配置su命令免密碼,詳見我的另一篇文章《免密碼使用sudo和su》
    以下流程有些步驟必須需要切換到root權限執行,為了便于敘述,后續所有步驟都在root權限下操作
  3. 配置ssh免密碼登錄
ssh-keygen -t rsa -P ""  //然后一直回車即可
cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys

配置完成后可以使用ssh localhost測試下是否配置成功

  1. 下載hadoop2.6.0 apache官網下載地址

Hadoop安裝

+ 解壓并移動文件到hadoop文件夾

su root
cd /
tar -zxvf hadoop-2.6.0.tar.gz
mkdir hadoop
mv hadoop-2.6.0 hadoop
  • 系統環境變量
export HADOOP_HOME=/hadoop/hadoop-2.6.0
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
  • Hadoop環境變量
cd /hadoop/hadoop-2.6.0/etc/hadoop
vi hadoop-env.sh

修改:

export JAVA_HOME=/usr/jdk1.7.0_80

Hadoop單機模式驗證

所謂的本地模式:在運行程序的時候,比如wordcount是在本地磁盤運行的

到這一步時,單機模式已經部署完畢,我們可以跑一個小程序驗證下。

  • 我們先切換到Hadoop目錄,創建一個input文件夾,并拷貝一些文件到該文件夾中。
cd $HADOOP_HOME
mkdir input
cp etc/hadoop/*.xml input
  • 執行下hadoop自帶的wordcound小程序驗證
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar wordcount input output
  • 查看執行結果
cat output/*

這里就不演示運算結果了,一般也不會出什么問題,我們繼續配置偽分布模式。

Hadoop偽分布模式

切換路徑到/hadoop/hadoop-2.6.0/etc/hadoop

  • vi core-site.xml
<configuration>

<property>
<name>hadoop.tmp.dir</name>
<value>/hadoop/tmp</value>
</property>

<!--
  接收Client連接的RPC端口,用于獲取文件系統metadata信息。
-->
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>

</configuration>

  • vi hfs-site.xml
<configuration>
<!--
  備份只有一份。
-->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>

<property>
<name>dfs.namenode.name.dir</name>
<value>/hadoop/dfs/name</value>
</property>

<property>
<name>dfs.datannode.data.dir</name>
<value>/hadoop/dfs/data</value>
</property>
</configuration>

如果不想讓程序運行在yarn上,到此為止配置已經完成,我們可以驗證下。
首先我們需要創建hadoop臨時文件夾和hdfs文件夾

cd /hadoop
mkdir tmp
mkdir dfs/{name,data}
  • 格式化namenode
hdfs namenode -format
  • 啟動集群
start-dfs.sh

啟動后我們可以通過管理頁面上看到相應的信息,顯示如下頁面證明啟動成功。
瀏覽器輸入:localhost:50070

NameNode Information

當然,我們可以運行下wordcount驗證下(方法同yarn部分)

yarn配置

還是切換路徑到/hadoop/hadoop-2.6.0/etc/hadoop

  • vi mapred-site.xml
    這里需要注意,2.6.0并沒有提供mapred-site.xml文件,而是提供了一個mapred-site.xml.template文件,這里我們需要將擴展名中的.template去掉
mv mapred-site.xml.template mapred-site.xml

接著修改文件內容

<configuration>

<!--
<property>
<name>mapred.job.tracker</name>
<value>master:9001</value>
</property>
-->

<property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>

</configuration>
                  

這里還要注意下,如果不想程序運行在yarn上,還需要將template后綴加上,要不會運行失敗。

  • vi yarn-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>

<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

下面還是驗證運行wordcount驗證下:

  • 先停止集群
stop-all.sh
  • 啟動集群
start-dfs.sh
start-yarn.sh
  • 查看hadoop運行狀態
hdfs dfsadmin -report
運行報告

啟動成功后也可以在hadoop進程管理頁面中查看,瀏覽器輸入localhost:8088

hadoop進程管理頁面

在這里我們可以看到hadoop運行的程序詳細信息,由于目前還沒有執行任何程序,所以這里什么都沒顯示。

  • 在hdfs上創建input文件夾
hdfs dfs -mkdir -p input
  • 拷貝一些本地文件到hdfs的input文件夾中,執行路徑切換到/hadoop/hadoop-2.6.0
hdfs dfs -put etc/hadoop input
  • 執行wordcount程序
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar wordcount input output

執行過程如圖:

執行過程

執行成功后,控制臺中會顯示 Job job_1452520008224_0001 completed successfully。

  • 查看結果
hdfs dfs -cat output/*

詞頻統計結果,部分截圖(這個結果和你input文件夾內容相關)

wordcount結果展示

你可以將結果從hdfs內拷貝到當前路徑中

hdfs dfs -get output output

hdfs常用命令,可以詳見本人另一篇文章 《常用HDFS命令》

到此,Hadoop單機模式和偽分布式模式已經介紹完。

問題說明:

WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

網上查了查,很多解釋說是hadoop-2.6.0.tar.gz安裝包是在32位機器上編譯的,64位的機器加載本地庫.so文件時出錯。可我找了下,發現官網上下載的安裝包實際上就是64位的。估計有可能是某些系統不支持本地庫吧,** 這個不影響使用 **,大家可以無視。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,431評論 6 544
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,637評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,555評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,900評論 1 318
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,629評論 6 412
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,976評論 1 328
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,976評論 3 448
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,139評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,686評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,411評論 3 358
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,641評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,129評論 5 364
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,820評論 3 350
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,233評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,567評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,362評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,604評論 2 380

推薦閱讀更多精彩內容