hadoop-0.20.1部署手冊(cè)新手必備
本節(jié)向大家介紹一下hadoop-0.20.1部署步驟,主要包括部署Hadoop和初始化和啟動(dòng)hadoop集群以及測(cè)試三部分內(nèi)容,相信通過(guò)本節(jié)的學(xué)習(xí)大家對(duì)hadoop-0.20.1部署有一定的了解。
hadoop-0.20.1部署
因?yàn)樾枰治龃罅康脑L問(wèn)日志,現(xiàn)有的分析方式(單機(jī))不能滿足需求,因此需要部署hadoop來(lái)解決這個(gè)問(wèn)題。在我做分布式文件系統(tǒng)之前,曾經(jīng)部署測(cè)試過(guò)hadoop,使用的版本為hadoop-0.19.0,記得當(dāng)時(shí)配置起來(lái)很快就成功了。這次測(cè)試,我使用的是***版本hadoop-0.20.1,在部署過(guò)程中,花了不少時(shí)間才做成功(2天)。為備忘,特記錄之。
hadoop-0.20.1跟舊的版相比,有些文件發(fā)生了變化,主要的變化是conf目錄,
網(wǎng)上現(xiàn)有的hadoop文章,需要修改的文件是hadoop-site.xml,可是hadoop-0.20.1版本確沒(méi)有這個(gè)文件,取而代之的是core-site.xml。
一、部署hadoop
hadoop部署分兩步:名稱節(jié)點(diǎn)(namenode)無(wú)密碼訪問(wèn)各數(shù)據(jù)節(jié)點(diǎn)(datanode)和配置hadoop.我的實(shí)驗(yàn)環(huán)境為一個(gè)名稱節(jié)點(diǎn),兩個(gè)數(shù)據(jù)節(jié)點(diǎn).不幸的是其中的一個(gè)數(shù)據(jù)節(jié)點(diǎn)壞了。因此只能用一個(gè)數(shù)據(jù)節(jié)點(diǎn)來(lái)測(cè)試。在這個(gè)測(cè)試中,namenode的ip:192.168.199.135,datanode的ip:192.168.199.136.
(一)、名稱節(jié)點(diǎn)(namenode)無(wú)密碼訪問(wèn)各數(shù)據(jù)節(jié)點(diǎn)(datanode)
1、名稱節(jié)點(diǎn)和數(shù)據(jù)節(jié)點(diǎn)各自創(chuàng)建用戶hadoop,使用相同的密碼。
2、以hadoop用戶名登陸名稱節(jié)點(diǎn)執(zhí)行ssh-keygen-trsa然后一路回車,完畢后生成文件.ssh/id_rsa.pub,把這個(gè)文件復(fù)制到當(dāng)前位置,命名為authorized_keys;然后執(zhí)行命令ssh127.0.0.1,如果不需要密碼則直接登陸進(jìn)去的話,就達(dá)到要求;否則需檢查authorized_keys的權(quán)限,看是否為644(-rw-r–r–)。接下來(lái),同樣也hadoop用戶登陸數(shù)據(jù)節(jié)點(diǎn)服務(wù)器,創(chuàng)建.ssh目錄,并給與600權(quán)限(chmod600.ssh);再把名稱服務(wù)器上的authorized_keys復(fù)制到目錄./ssh,注意權(quán)限和目錄結(jié)構(gòu)跟名稱節(jié)點(diǎn)保持一致,然后再?gòu)拿Q節(jié)點(diǎn)用ssh登陸數(shù)據(jù)節(jié)點(diǎn),如果不需要密碼能登陸成功,則ssh的配置結(jié)束。再來(lái)看一下hadoop-0.20.1部署中Hadoop的配置。
(二)hadoop配置
1、下載jdk并設(shè)置。我的JAVA_HOME=/usr/local/jdk1.6.0_06
2、下載hadoop,解包,復(fù)制到/usr/local/hadoop.即HADOOP_HOME=/usr/local/hadoop
3、數(shù)據(jù)存放目錄分離,即數(shù)據(jù)的實(shí)際存放不在HADOOP_HOME(網(wǎng)上的n多文章是在hadoop安裝目錄).我用2個(gè)1TB的硬盤單獨(dú)來(lái)存放實(shí)際的數(shù)據(jù)塊,其名稱為/disk2,/disk3.格式化這兩個(gè)硬盤并創(chuàng)建文件系統(tǒng),然后掛接到這2個(gè)目錄。相關(guān)步驟省略。
4、設(shè)置目錄、文件的屬主。chown-Rhadoop:hadoop/disk2/disk3/usr/local/hadoop
5、在文件/usr/local/hadoop/conf/mapred-site.xml加入如下內(nèi)容:
- <property>
- <name>mapred.job.tracker</name>
- <value>hadoopm:9001</value>
- <description>ThehostandportthattheMapReducejobtrackerrunsat.If“local”,thenjobsarerunin-processasasinglemapand
- reducetask.</description>
- </property>
6、修改文件/usr/local/hadoop/conf/slaves及/usr/local/hadoop/conf/masters,把數(shù)據(jù)節(jié)點(diǎn)的主機(jī)名加到slaves、名稱節(jié)點(diǎn)主機(jī)名加到masters??梢约佣鄠€(gè),每行一個(gè)。注意主機(jī)名需要在每個(gè)服務(wù)器的/etc/hosts映射好。
7、修改文件/usr/local/hadoop/conf/hadoop-env.sh,加入exportJAVA_HOME=/usr/local/jdk1.6.0_06一行即可。
8、在每個(gè)數(shù)據(jù)節(jié)點(diǎn)重復(fù)1~6這些步驟。
二、初始化和啟動(dòng)hadoop集群
(一)hadoop的大部分操作都是在命名節(jié)點(diǎn)進(jìn)行的。以hadoop用戶登陸系統(tǒng)然后執(zhí)行hadoopnamenode-format,一般都能順利完成這個(gè)過(guò)程。執(zhí)行完初始化后,各數(shù)據(jù)節(jié)點(diǎn)并沒(méi)有進(jìn)行任何操作(最重要的事情就是生成一堆目錄)。
(二)啟動(dòng)hadoop服務(wù)。命名服務(wù)器以hadoop用戶執(zhí)行start-all.sh.查看進(jìn)程,如果正常,應(yīng)該看見(jiàn)2-3個(gè)java進(jìn)程。啟動(dòng)正常的話,數(shù)據(jù)節(jié)點(diǎn)開(kāi)始生成相關(guān)的目錄。其對(duì)比輸出如下:
三、測(cè)試
1、查看hadoop狀態(tài),使用命令$hadoopdfs-report.
2、創(chuàng)建目錄。$hadoopdfs-mkdirsery,然后再傳幾個(gè)大文件$hadoopdfs-put7.*sery.傳了900M左右的數(shù)據(jù)(2個(gè)iso文件),很快傳完。
3、故障測(cè)試。需要2個(gè)數(shù)據(jù)節(jié)點(diǎn),先關(guān)閉一個(gè)數(shù)據(jù)節(jié)點(diǎn),然后網(wǎng)hadoop創(chuàng)建目錄和拷貝數(shù)據(jù)。完畢后啟動(dòng)被關(guān)閉的數(shù)據(jù)節(jié)點(diǎn)的服務(wù),觀察其運(yùn)行情況。本節(jié)關(guān)于hadoop-0.20.1部署介紹到這里。
【編輯推薦】
- Hadoop完全分布模式安裝實(shí)現(xiàn)詳解
- Windows下輕松實(shí)現(xiàn)Hadoop開(kāi)發(fā)環(huán)境安全配置
- Hadoop文件系統(tǒng)如何快速安裝?
- Hadoop集群搭建過(guò)程中相關(guān)環(huán)境配置詳解
- Hadoop完全分布模式安裝實(shí)現(xiàn)詳解