![Hadoop-0.21.0分布式集群配置_第1頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/16/ee921474-c861-4c20-b580-94a609534c8b/ee921474-c861-4c20-b580-94a609534c8b1.gif)
![Hadoop-0.21.0分布式集群配置_第2頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/16/ee921474-c861-4c20-b580-94a609534c8b/ee921474-c861-4c20-b580-94a609534c8b2.gif)
![Hadoop-0.21.0分布式集群配置_第3頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/16/ee921474-c861-4c20-b580-94a609534c8b/ee921474-c861-4c20-b580-94a609534c8b3.gif)
![Hadoop-0.21.0分布式集群配置_第4頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/16/ee921474-c861-4c20-b580-94a609534c8b/ee921474-c861-4c20-b580-94a609534c8b4.gif)
![Hadoop-0.21.0分布式集群配置_第5頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/16/ee921474-c861-4c20-b580-94a609534c8b/ee921474-c861-4c20-b580-94a609534c8b5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、Hadoop-分布式集群配置編制日期:2021-9-8文件信息文件標(biāo)題Hadoop-分布式集群配置起草工程組發(fā)布日期2010年08月26日說明參考,但根據(jù)版本的變化做了相應(yīng)的調(diào)整本文主要是以安裝和使用.0為例,指出在部署Hadoop的時候容易遇到的問題以及如何解決。1. 硬件環(huán)境共有3臺機(jī)器,均使用的linux系統(tǒng),Java使用的是jdk。IP配置如下:hadoop1:192.168.0.97(NameNode)hadoop2:192.168.0.226(DataNode)hadoop3:192.168.0.100 (DataNode)這里有一點需要強(qiáng)調(diào)的就是,務(wù)必要確保每臺機(jī)器的主機(jī)名和IP
2、地址之間能正確解析。一個很簡單的測試方法就是ping一下主機(jī)名,比方在hadoop1上ping hadoop2,如果能ping通就OK!假設(shè)不能正確解析,可以修改/etc/hosts文件,如果該臺機(jī)器作Namenode用,那么需要在hosts文件中加上集群中所有機(jī)器的IP地址及其對應(yīng)的主機(jī)名;如果該臺機(jī)器作Datanode用,那么只需要在hosts文件中加上本機(jī)IP地址和Namenode機(jī)器的IP地址。以本文為例,hadoop1(NameNode)中的/etc/hosts文件看起來應(yīng)該是這樣的:127.0.0.1
3、; hadoop1 localhost hadoop1 hadoop1 hadoop2 hadoop2 had
4、oop3 hadoop3hadoop2(DataNode)中的/etc/hosts文件看起來就應(yīng)該是這樣的:127.0.0.1 hadoop2 localhost hadoop1
5、; hadoop1 hadoop2 hadoop2hadoop3(DataNode)中的/etc/hosts文件看起來就應(yīng)該是這樣的:127.0.0.1 hadoop3 localhost &
6、#160; hadoop1 hadoop1 hadoop3 hadoop3對于Hadoop來說,在HDFS看來,節(jié)點分為Namenode和Datanode,其中Namenode只有一個,Datanode可以是很多;在MapReduce看來,節(jié)點又分為Jobtracker和Tasktracker,其中Jobtracker
7、只有一個,Tasktracker可以是很多。我是將namenode和jobtracker部署在hadoop1上,hadoop2, hadoop3作為datanode和tasktracker。當(dāng)然你也可以將namenode,datanode,jobtracker,tasktracker全部部署在一臺機(jī)器上。2. 目錄結(jié)構(gòu)由于Hadoop要求所有機(jī)器上hadoop的部署目錄結(jié)構(gòu)要相同,并且都有一個相同的用戶名的帳戶。我的三臺機(jī)器上是這樣的:都有一個hadoop的帳戶,主目錄是/home/hadoop。解壓:hadoop hadoop1:$tar -zxvf hadoop-0.21.0Hadoop部
8、署目錄結(jié)構(gòu)如下:/home/hadoop/hadoop0.21.0,所有的hadoop版本放在這個目錄中。將hadoop0.21.0壓縮包解壓至hadoop0.21.0中,為了方便以后升級,建議建立一個鏈接指向要使用的hadoop版本,不妨設(shè)為hadoop,hadoop hadoop1:$ln -s hadoop-0.21.0 hadoop這樣一來,所有的配置文件都在/home/hadoop/hadoop/conf/目錄中,所有執(zhí)行程序都在/home/hadoop/hadoop/bin目錄中。但是由于上述目錄中hadoop的配置文件和hadoop的安裝目錄是放在一起的,這樣一旦日后升級hado
9、op版本的時候所有的配置文件都會被覆蓋,因此建議將配置文件與安裝目錄別離,一種比擬好的方法就是建立一個存放配置文件的目錄,/home/hadoop/hadoop/hadoop-config,然后將/home/hadoop/hadoop/conf/目錄中的masters,slaves,hadoop-hadoop-config目錄中,并指定環(huán)境變量$HADOOP_CONF_DIR指向該目錄。環(huán)境變量在/home/hadoop/.bashrc和/etc/profile中設(shè)定。如:HADOOP_CONF_DIR=/home/hadoop/hadoop/hadoop-configexport HADOO
10、P_CONF_DIR綜上所述,為了方便以后升級版本,我們需要做到配置文件與安裝目錄別離,并通過設(shè)定一個指向我們要使用的版本的hadoop的鏈接,這樣可以減少我們對配置文件的維護(hù)。3. SSH設(shè)置在Hadoop啟動以后,Namenode是通過SSH(Secure Shell)來啟動和停止各個節(jié)點上的各種守護(hù)進(jìn)程的,這就需要在節(jié)點之間執(zhí)行指令的時候是不需要輸入密碼的方式,故我們需要配置SSH使用無密碼公鑰認(rèn)證的方式。首先要保證每臺機(jī)器上都裝了SSH效勞器,且都正常啟動。實際中我們用的都是OpenSSH,這是SSH協(xié)議的一個免費開源實現(xiàn)。以本文中的3臺機(jī)器為例,現(xiàn)在hadoop1是主節(jié)點,它需要主動
11、發(fā)起SSH連接到hadoop2,對于SSH效勞來說,hadoop1就是SSH客戶端,而hadoop2, hadoop3那么是SSH效勞端,因此在hadoop2,hadoop3上需要確定sshd效勞已經(jīng)啟動。簡單的說,在hadoop1上需要生成一個密鑰對,即一個私鑰,一個公鑰。將公鑰拷貝到hadoop2上,這樣,比方當(dāng)hadoop1向hadoop2發(fā)起ssh連接的時候,hadoop2上就會生成一個隨機(jī)數(shù)并用hadoop1的公鑰對這個隨機(jī)數(shù)進(jìn)行加密,并發(fā)送給hadoop1,hadoop1收到這個加密的數(shù)以后用私鑰進(jìn)行解密,并將解密后的數(shù)發(fā)送回hadoop2,hadoop2確認(rèn)解密的數(shù)無誤后就允許h
12、adoop1進(jìn)行連接了。這就完成了一次公鑰認(rèn)證過程。對于本文中的3臺機(jī)器,首先在hadoop1上生成密鑰對:hapoophadoop1:$ssh-keygen -t dsa P f /.ssh/id_dsa這個命令將為hadoop1上的用戶hadoop生成其密鑰對。生成的密鑰對id_rsa,id_rsa.pub,在/home/hadoop/.ssh目錄下。hapoophadoop1:.ssh$cat /.ssh/id_dsa.pub >> /.ssh/authorized_keyshadoop/.ssh/authorized_keys文件中。對于hadoop2:hapoop had
13、oop2:$mkdir .ssh對于hadoop3:hapoop hadoop3:$mkdir .sshhapoop hapoop1:.ssh$scp authorized_keys hapoop2:/home/hapoop/.ssh/hapoop hapoop1:.ssh$scp authorized_keys hapoop3:/home/hapoop/.ssh/ 此處的scp就是通過ssh進(jìn)行遠(yuǎn)程copy,此處需要輸入遠(yuǎn)程主機(jī)的密碼,即hadoop2,hadoop3機(jī)器上hadoop帳戶的密碼,當(dāng)然,你也可以用其他方法將authorized_keys文件拷貝到其他機(jī)器上。hadoophad
14、oop2:.ssh$chmod 640 authorized_keyshadoophadoop3:.ssh$chmod 640 authorized_keys 這一步非常關(guān)鍵,必須保證authorized_keys只對其所有者有讀寫權(quán)限,其他人不允許有寫的權(quán)限,否那么SSH是不會工作的。hadoop hadoop2:.ssh $ls -ladrwx- 2 hadoop hadoop.drwx- 3 hadoop hadoop.-rw-r-r- 1 hadoop hadoop authorized_keys 注意每個機(jī)器上的.ssh目錄的ls -la都應(yīng)該和上面是一樣的接著,在3臺機(jī)器上都需要對
15、sshd效勞進(jìn)行配置,修改文件/etc/ssh/sshd_config。#去除密碼認(rèn)證PasswordAuthentication no (?如果這樣,putty就不能登陸Linux了,去掉)AuthorizedKeysFile .ssh/authorized_keys至此各個機(jī)器上的SSH配置已經(jīng)完成,可以測試一下了,比方hadoop1向hadoop2發(fā)起ssh連接。hadoophadoop1:$ssh hadoop2如果ssh配置好了,就會出現(xiàn)以下提示信息The authenticity of host hadoop2 can't be established.Key finger
16、print is 1024 5f:a0:0b:65:d3:82:df:ab:44:62:6d:98:9c:fe:e9:52.Are you sure you want to continue connecting (yes/no)?OpenSSH告訴你它不知道這臺主機(jī),但是你不用擔(dān)憂這個問題,因為你是第一次登錄這臺主機(jī)。鍵入“yes。這將把這臺主機(jī)的“識別標(biāo)記加到“/.ssh/know_hosts文件中。第二次訪問這臺主機(jī)的時候就不會再顯示這條提示信息了。然后你會發(fā)現(xiàn)不需要輸入密碼就可以建立ssh連接了,恭喜你,配置成功了,不過,別忘了測試本機(jī)ssh hadoop1。(應(yīng)該是只設(shè)置hadoop
17、1對hadoop2發(fā)送ssh連接和hadoop1對hadoop3發(fā)送ssh連接,下面的需要配置嗎?)同樣,hadoop1對hadoop3發(fā)起ssh連接,再在hadoop3發(fā)起對hadoop1的連接。這里不在贅述。4. Hadoop環(huán)境變量在/home/hadoop/hadoop/hadoop-config目錄下的hadoop-env.sh中設(shè)置Hadoop需要的環(huán)境變量,其中JAVA_HOME是必須設(shè)定的變量。HADOOP_HOME變量可以設(shè)定也可以不設(shè)定,如果不設(shè)定,HADOOP_HOME默認(rèn)的是bin目錄的父目錄,即本文中的/home/hadoop/hadoop。我的是這樣設(shè)置的:expo
18、rt HADOOP_HOME=/home/hadoop/hadoopexport _205. Hadoop配置文件修改slaves文件如前所述,在hadoop1(NameNode)的hadoop-config/目錄下,翻開slaves文件,該文件用來指定所有的DataNode,一行指定一個主機(jī)名。即本文中的hadoop2、hadoop3,因此slaves文件看起來應(yīng)該是這樣的:hadoop2IPhadoop3IP修改masters文件翻開masters文件,該文件用來指定NameNode,內(nèi)容如下:hadoop1IP在hadoop的安裝目錄分別找到三個文件,然后copy到hadoop-conf
19、ig/目錄下,這三個文件包含Hadoop的所有配置項,然后把這個分別改名為core-site.xml,hdfs-site.xml,mapred-site.xml,我們根據(jù)需要修改如下:注意:下面的配置文件中不要有中文或中文的符號,否那么報錯c:<property> <name>hadoop.tmp.dir</name> <value>/home/hadoop/hadoop/tmp</value></property><property> <name>fs.defaultFS</name>
20、 <value>hdfs:/master IP:9000</value></property>這里不需要修改此文件。<property> <name>mapreduce.jobtracker.address</name> <value>master IP:9001</value> <description>NameNode</description></property>6. 部署Hadoop前面講的這么多Hadoop的環(huán)境變量和配置文件都是在hadoop1這臺機(jī)器上的,現(xiàn)在需要將hadoop部署到其他的機(jī)器上,保證目錄結(jié)構(gòu)一致。hadoophadoop1:$scp -r /home/hadoop/hadoop hadoop2:/home/hadoop/hadoophadoop1:$scp -r /home/hadoop/hadoop hadoop3:/home/hadoop/ 至此,可以說,Hadoop已經(jīng)在各個機(jī)器上部署完畢了,下面就讓我們開始啟動Hadoop吧。7. 啟動Hadoop啟動
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國航空機(jī)載設(shè)備市場調(diào)查研究報告
- 2025年中國鋼制焊接氨直通截止閥市場調(diào)查研究報告
- 2025年中國竹條涼席市場調(diào)查研究報告
- 2025年中國滾筒/平板啤模加工材料市場調(diào)查研究報告
- 2025年中國摩托車小圓不銹鋼儲物箱市場調(diào)查研究報告
- 城中大型水管支架施工方案
- 重慶南川區(qū)自建房施工方案
- 2025年衛(wèi)星支架、分配器項目發(fā)展計劃
- 第6單元 20美麗的小興安嶺(教學(xué)設(shè)計)2024-2025學(xué)年三年級語文上冊同步教學(xué)(統(tǒng)編版)
- 2024-2025學(xué)年新教材高中歷史課時分層作業(yè)18冷戰(zhàn)與國際格局的演變新人教版必修中外歷史綱要下
- 瑜伽課程合同轉(zhuǎn)讓協(xié)議書范本
- 個人經(jīng)營性貸款合同模板
- 2025年山東化工職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測試近5年??及鎱⒖碱}庫含答案解析
- 課題申報參考:生活服務(wù)數(shù)字化轉(zhuǎn)型下社區(qū)生活圈建設(shè)理念、模式與路徑研究
- 舞臺機(jī)械基礎(chǔ)知識培訓(xùn)
- 人教版數(shù)學(xué)八年級下冊 第16章 二次根式 單元測試(含答案)
- 甘肅省民航機(jī)場集團(tuán)招聘筆試沖刺題2025
- 中學(xué)班主任培訓(xùn)內(nèi)容
- 心理學(xué)基礎(chǔ)知識考試參考題庫500題(含答案)
- 北師大版小學(xué)三年級數(shù)學(xué)下冊全冊教案
- DCMM練習(xí)題練習(xí)試題
評論
0/150
提交評論