版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、工學院實驗報告課程名稱: 分布式系統(tǒng)及云計算概論 實驗項目名稱: Hadoop安裝以及執(zhí)行WordCount程序 學 院: 工學院 專業(yè)班級: 姓 名: 學 號: 指導(dǎo)教師: 2014年 6 月 16 日一、 實驗?zāi)康脑谔摂M機Ubantu上安裝Hadoop單機模式并且執(zhí)行WordCount程序。二、 實驗儀器硬件:虛擬機Ubantu軟件: Windows 7操作系統(tǒng)三、 實驗原理基于云計算的Hadoop實現(xiàn)。WordCountWordCount 例子讀取文本文件,并統(tǒng)計文件中單詞出現(xiàn)的頻數(shù)。WordCount對于hadoop的重要性,相當于HelloWorld對于JAVA的重要性。如果你想學習
2、MapReduce變成模型,那么學習WordCount是一個最好的開始。輸入輸入包含一組文件,文件中含有很多單詞輸出輸出是一個文本文件,文件的每一行包含一個單詞和這個單詞在所有輸入文件中出現(xiàn)的次數(shù)。輸入樣例input1:hello world bye worldinput2:hello hadoop bye hadoop輸出樣例:bye 2hadoop 2hello 2world 2四、實驗內(nèi)容及步驟實驗內(nèi)容: 一、安裝Linux操作系統(tǒng) 二、在Ubuntu下創(chuàng)建Hadoop用戶組和用戶 三、在Ubuntu下安裝JDK 四、修改機器名 五、安裝
3、ssh服務(wù) 六、建立ssh無密碼登錄本機 七、安裝Hadoop 八、在單機上運行Hadoop九、Hadoop執(zhí)行WordCount程序?qū)嶒灢襟E:一、安裝Linux操作系統(tǒng)在虛擬機上使用鏡像安裝好Ubantu 12.04系統(tǒng),此處不多做介紹,建議安裝的時候修改成中文版,更將有利于接下來的步驟。二、在Ubuntu下創(chuàng)建Hadoop用戶組和用戶這里考慮的是以后涉及到Hadoop應(yīng)用時,專門用該用戶操作。用戶組名和用戶名都設(shè)為:hadoop??梢岳斫鉃樵揾adoop用戶是屬于一個名為hadoop的用戶組,這是linux操作系統(tǒng)的知識,如果不清楚可以查看linux相關(guān)的書籍
4、。1、創(chuàng)建Hadoop用戶組,如圖(1)2、創(chuàng)建Hadoop用戶,如圖(2),除了Full name自己設(shè)置以外,其他的都可以直接Enter進入默認設(shè)置。3、給Hadoop用戶添加權(quán)限,打開/etc/sudoers文件,如圖(3)按回車鍵后就會打開/etc/sudoers文件了,給Hadoop用戶賦予root用戶同樣的權(quán)限。在root ALL=(ALL:ALL) ALL下添加hadoop ALL=(ALL:ALL) ALL,如圖(4)4、此時就可以重啟Ubantu進入新建
5、的hadoop組了,選擇的是你新建的hadoop組的Full name那個用戶組,如下圖所示,我設(shè)置的是hadoop01,所以我重啟進入的就是hadoop01.三、在Ubuntu下安裝JDK選擇的是jdk1.6.0_30版本。安裝文件名為jdk-6u30-linux-i586.bin.1、復(fù)制jdk到安裝目錄(1)假設(shè)jdk安裝文件在桌面,我們指定的安裝目錄是:/usr/local/java 。可是系統(tǒng)安裝后在/usr/local下并沒有java目錄,這需要我們?nèi)?chuàng)建一個java文件夾,如圖(5)(注:此時我已經(jīng)進入了hadoop01了)(2)切換到桌面下,執(zhí)行復(fù)制,如圖(6)2、安裝jdk(
6、1)切換到root用戶下,如圖(7)(注:如果因忘記密碼而認證失敗,可以先修改root用戶的密碼,再執(zhí)行第(1)步,修改root用戶密碼如圖(8)(2)運行jdk-6u30-linux-i586.bin,如圖(9)注:可能此時仍然沒有執(zhí)行權(quán)限,那是因為在linux中,文件的默認權(quán)限是644,即使是屬主用戶也沒有執(zhí)行權(quán)限,這時我們需要更改其權(quán)限,如果你想知道某個文件的權(quán)限,可以進入該文件所在的文件夾,執(zhí)行命令ls la 查看。這里將jdk-6u30-linux-i586.bin文件的權(quán)限改為777,即文件的屬主用戶,屬組用戶和其他用戶對該文件擁有所有權(quán)限,當然不推薦對系統(tǒng)中的文件這樣設(shè)置權(quán)限,因
7、為這樣就破壞了linux的安全性。)更改jdk-6u30-linux-i586.bin權(quán)限,如圖(10)更改權(quán)限后再執(zhí)行第(2)步,當看到如圖(11)情況時,說明你安裝成功了。(3)這時在/usr/local/java目錄下就多了一個jdk1.6.0_30文件夾.,可以查看一下,如圖(12)3、配置環(huán)境變量(1)打開/etc/profile文件,如圖(13)(2)添加變量如下:1. # /etc/profile: system-wide .profile file for the Bourne shell
8、;(sh(1) 2. # and Bourne compatible shells (bash(1), ksh(1), ash(1), .). 3. #set java environment 4. 5. export JAVA_HOME=/usr/local/java/jdk1.6.0_30 6. 7. export JRE_HOME=/u
9、sr/local/java/jdk1.6.0_30/jre 8. 9. export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH 10. 11. export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH (注:為了以后集群工作的方便,這里建議每臺機器的java環(huán)境最好一致。)一般更改/etc/profile文件后,需要重啟
10、機器才能生效。這里介紹一種不用重啟使其生效的方法,如圖(14)(3)查看java環(huán)境變量是否配置成功,如圖(15)四、修改機器名(這一步驟可以有,也可以不需要)每當Ubuntu安裝成功時,我們的機器名都默認為:ubuntu ,但為了以后集群中能夠容易分辨各臺服務(wù)器,需要給每臺機器取個不同的名字。機器名由 /etc/hostname文件決定。1、打開/etc/hostname文件,如圖(16)2、回車后就打開/etc/hostname文件了,將/etc/hostname文件中的Ubuntu改為你想取的機器名。這里我取“s18”。重啟系統(tǒng)后才會生效。 五、安裝ssh服
11、務(wù)這里的ssh和三大框架:spring,struts,hibernate沒有什么關(guān)系,ssh可以實現(xiàn)遠程登錄和管理,具體可以參考其他相關(guān)資料。1、安裝openssh-server(注:自動安裝openssh-server時,可能會進行不下去,可以先進行如下操作:如圖(17)) 更新過程可能會比較長,需要耐心等待。然后輸入如圖(18)此處也是比較慢,需要等待2、更新的快慢取決于您的網(wǎng)速了,如果中途因為時間過長您中斷了更新(Ctrl+z),當您再次更新時,會更新不了,報錯為:“Ubuntu無法鎖定管理目錄(/var/lib/dpkg/),是否有其他進程占用它?“需要如下操作,如圖(19)
12、 操作完成后繼續(xù)執(zhí)行第1步。這時假設(shè)您已經(jīng)安裝好了ssh,您就可以進行第六步了。六、建立ssh無密碼登錄本機ssh生成密鑰有rsa和dsa兩種生成方式,默認情況下采用rsa方式。 1、創(chuàng)建ssh-key,這里我們采用rsa方式,如圖(20)(注:回車后會在/.ssh/下生成兩個文件:id_rsa和id_rsa.pub這兩個文件是成對出現(xiàn)的) 2、進入/.ssh/目錄下,將id_rsa.pub追加到authorized_keys授權(quán)文件中,開始是沒有authorized_keys文件的,如圖(21)完成后就可以無密碼登錄本機了。3、登錄localhost,如圖(22
13、)( 注:當ssh遠程登錄到其它機器后,現(xiàn)在你控制的是遠程的機器,需要執(zhí)行退出命令才能重新控制本地主機。) 4、執(zhí)行退出命令,如圖(23)七、安裝Hadoop我采用的Hadoop版本是從 這個網(wǎng)站中的資源下載中的hadoop-0.20.2.tar.gz1、假設(shè)hadoop-0.20.2.tar.gz在桌面,將它復(fù)制到安裝目錄 /usr/local/下,如圖(24)2、解壓hadoop-0.20.2.tar.gz,如圖(25) 3、將解壓出的文件夾改名為Hadoop,如圖(26)4、將該hadoop文件夾的屬主用戶設(shè)為hadoop,如圖(27)5、打開ha
14、doop/conf/hadoop-env.sh文件,如圖(28)6、配置conf/Hadoop-env.sh(找到#export JAVA_HOME=.,去掉#,然后加上本機jdk的路徑),如圖(29)7、打開conf/core-site.xml文件 編輯如下:(注:9000最好是手打,避免產(chǎn)生不必要的錯誤)8、打開conf/mapred-site.xml文件,編輯如下:(注:9001最好是手打,避免產(chǎn)生不必要的錯誤)9、打開conf/hdfs-site.xml文件,編輯如下:10、打開conf/masters文件,添加作為secondarynamenode的主機名,作為單
15、機版環(huán)境,這里只需填寫localhost就Ok了。 11、打開conf/slaves文件,添加作為slave的主機名,一行一個。作為單機版,這里也只需填寫localhost就Ok了八、在單機上運行Hadoop1、進入Hadoop目錄下,格式化hdfs文件系統(tǒng),初次運行hadoop時一定要有該操作,如圖(30)當你看到下圖時,就說明你的hdfs文件系統(tǒng)格式化成功了。3、啟動bin/start-all.sh,如圖(31)4、檢測Hadoop是否啟動成功,如圖(32)如果有Namenode,SecondaryNameNode,TaskTracker,DataNode,JobTr
16、acker五個進程,就說明你的Hadoop單機 版環(huán)境配置好了。九、Hadoop執(zhí)行WordCount程序1、首先如果你沒打開hadoop,那么就參照第八個步驟的第3個步驟,開啟hadoop,用jps驗證。2、首先在"/usr/local/hadoop"目錄下創(chuàng)建文件夾"file"。3、接著創(chuàng)建兩個文本文件file1.txt和file2.txt,使file1.txt內(nèi)容為"Hello World",而file2.txt的內(nèi)容為"Hello Hadoop"。這里按cd .回到hadoops18:$,按照如圖
17、步驟創(chuàng)建2個txt。4、在HDFS上創(chuàng)建輸入文件夾,hdfs路徑如紅框。5、上傳本地file中文件到集群的input目錄下6、這個步驟不知道為什么原因,但是我在錯誤的情況下修改的一些地方,建議直接先到第7步驗證后再回來看第6步。(1)(2)首先查看自己的虛擬機的IP地址,包括之前第四步設(shè)置的主機名。查看IP地址使用命令ifconfig,查看主機名修改使用sudo gedit /etc/hostname,路徑如下輸入這個修改,增添IP地址,(注:不知道是不是修改了這些的原因就可以執(zhí)行程序了)。(3)前面2個設(shè)好后還是不行的話,看看是不是這里沒有設(shè)置好7、接下來有2種方法運行wordcount.j
18、ava,首先介紹第一種(1)運行WordCount程序如果提示你output已經(jīng)存在,那么輸入./hadoop dfs rmr output刪除output文件夾即可,在如下路徑中輸入接著重新第(1)步(2)運行過程,(注:該過程可能需要5-10分鐘)(3)查看結(jié)果接下來介紹第二種方法(1)新建一個目錄,方法如下圖(2)輸入如下命令,如箭頭所示,編譯WordCount.java程序編譯完后在/home/admin/WordCount目錄會發(fā)現(xiàn)三個class文件 WordCount.class,WordCount$Map.class,WordCount$Reduce.class。cd 進入 /usr/local/hadoop/file目錄,然后執(zhí)行:jar cvf WordCount.jar *.class就會生成 WordCount.jar 文件。(3)因為我們已經(jīng)構(gòu)建好了2個txt,所以我們現(xiàn)在只要執(zhí)行現(xiàn)在生成的WordCount.jar 文件就好了。(4)查看結(jié)果和第一種方法一致至此,我們已經(jīng)完全驗證完如何在Hadoop的單機模式下運行WordCount.java程序。五、
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度智慧生活門面商鋪租賃合同2篇
- 2025年消防安全技術(shù)服務(wù)與消防設(shè)備采購安裝合同3篇
- 2024年煙花爆竹經(jīng)營單位主要負責人考試題庫附答案 (一)
- 2024年用電監(jiān)察員(中級)職業(yè)鑒定理論考試題庫(含答案)
- 二零二五版智能化布草洗滌項目合同2篇
- 2025年度物流加盟合作伙伴廣告宣傳與品牌推廣協(xié)議3篇
- 2025年度個人借款合同變更與解除范本4篇
- 2025年度家庭用車個人貸款購車合同(含補貼政策)4篇
- 2024石頭購銷合同
- 霸王鞭舞課程設(shè)計理念
- 《沙盤技術(shù)》教學大綱
- 職業(yè)培訓師培訓課件
- (新版)多旋翼無人機超視距駕駛員執(zhí)照參考試題庫(含答案)
- 哈利波特中英文全集
- DLT5210.1-電力建設(shè)施工質(zhì)量驗收及評價規(guī)程全套驗評表格之歐陽法創(chuàng)編
- 500句漢語日常對話
- 《抽搐的鑒別與處理》課件
- 2024-2030年中國凈菜加工行業(yè)產(chǎn)能預(yù)測及投資規(guī)模分析報告版
- 自來水廠建設(shè)項目可行性研究報告
- 承諾保證協(xié)議
- 2025年公司副總經(jīng)理述職報告范文
評論
0/150
提交評論