自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Ubuntu 12.10 +Hadoop 1.2.1版本集群配置

系統(tǒng) Linux Hadoop
Hadop是一種分布式系統(tǒng)基礎(chǔ)架構(gòu),由Apache基金會開發(fā)。用戶可以在不了解分布式底層細(xì)節(jié)的情況下,開發(fā)分布式程序,充分利用集群的威力高速運(yùn)算和存儲。

一、引言

Hadoop是一種分布式系統(tǒng)基礎(chǔ)架構(gòu),由Apache基金會開發(fā)。用戶可以在不了解分布式底層細(xì)節(jié)的情況下,開發(fā)分布式程序,充分利用集群的威力高速運(yùn)算和存儲。Hadoop 1.2.1版本下載地址:http://apache.dataguru.cn/hadoop/common/hadoop-1.2.1/

二、準(zhǔn)備安裝環(huán)境

我的本機(jī)是環(huán)境是windows8.1系統(tǒng) +VMvare9虛擬機(jī)。VMvare中虛擬了3個ubuntu 12.10的系統(tǒng),JDK版本為1.7.0_17.集群環(huán)境為一個master,兩個slave,節(jié)點(diǎn)代號分別為node1,node2,node3.保證以下ip地址可以相互ping通,并且在/etc/hosts中進(jìn)行配置

機(jī)器名 Ip地址 作用
node1 202.193.74.173 NameNode,JobTraker
node2 202.193.75.231 DataNode,TaskTraker
node3
202.193.74.3
DataNode,TaskTraker

三、安裝環(huán)境

1、首先修改機(jī)器名

使用root權(quán)限,使用命令:

  1. sudo vi /etc/hosts 

其中node1、node2、node3的/etc/hosts配置為:

/etc/hosts的配置很重要,如果配置的不合適會出各種問題,會影響到后面的SSH配置以及Hadoop的DataNode節(jié)點(diǎn)的啟動。

2、安裝JDK

Ubuntu下的JDK配置請參考: http://developer.51cto.com/art/200907/135215.htm

3、添加用戶

在root權(quán)限下使用以下命令添加hadoop用戶,在三個虛擬機(jī)上都添加這個用戶

  1. sudo adduser hadoop 

將下載到的hadoop-1.2.1.tar文件放到/home/hadoop/目錄下解壓,然后修改解壓后的文件夾的權(quán)限,命令如下:

  1. sudo tar -xvzf hadoop-1.2.1.tar #解壓命令 
  2.  
  3. chown -R hadoop:hadoop hadoop-1.2.1(文件夾名) 

#p#

4、安裝和配置SSH

4.1)在三臺實(shí)驗(yàn)機(jī)器上使用以下命令安裝ssh:

  1. sudo apt-get install ssh 

安裝以后執(zhí)行測試:

  1. netstat -nat  #查看22端口是否開啟 
  2.  
  3. ssh localhost #測試ssh是否成功連接 

輸入當(dāng)前用戶名和密碼按回車確認(rèn),說明安裝成功,同時ssh登陸需要密碼。

這種默認(rèn)安裝方式完后,默認(rèn)配置文件是在/etc/ssh/目錄下。sshd配置文件是:/etc/ssh/sshd_config

4.2)配置SSH無密碼訪問

在Hadoop啟動以后,Namenode是通過SSH(Secure Shell)來啟動和停止各個datanode上的各種守護(hù)進(jìn)程的,這就須要在節(jié)點(diǎn)之間執(zhí)行指令的時候是不須要輸入密碼的形式,故我們須要配置SSH運(yùn)用無密碼公鑰認(rèn)證的形式。

以本文中的三臺機(jī)器為例,現(xiàn)在node1是主節(jié)點(diǎn),他須要連接node2和node3。須要確定每臺機(jī)器上都安裝了ssh,并且datanode機(jī)器上sshd服務(wù)已經(jīng)啟動。

( 說明:hadoop@hadoop~]$ssh-keygen  -t  rsa

這個命令將為hadoop上的用戶hadoop生成其密鑰對,詢問其保存路徑時直接回車采用默認(rèn)路徑,當(dāng)提示要為生成的密鑰輸入passphrase的時候,直接回車,也就是將其設(shè)定為空密碼。生成的密鑰對id_rsa,id_rsa.pub,默認(rèn)存儲在/home/hadoop/.ssh目錄下然后將id_rsa.pub的內(nèi)容復(fù)制到每個機(jī)器(也包括本機(jī))的/home/dbrg/.ssh/authorized_keys文件中,如果機(jī)器上已經(jīng)有authorized_keys這個文件了,就在文件末尾加上id_rsa.pub中的內(nèi)容,如果沒有authorized_keys這個文件,直接復(fù)制過去就行.)

4.3)首先設(shè)置namenode的ssh為無需密碼自動登陸,

切換到hadoop用戶( 保證用戶hadoop可以無需密碼登錄,因?yàn)槲覀兒竺姘惭b的hadoop屬主是hadoop用戶。)

  1. su hadoop 
  2. cd /home/hadoop 
  3. ssh-keygen -t rsa 

最后一個命令輸入完成以后一直按回車,

完成后會在/home/hadoop/目錄下產(chǎn)生完全隱藏的文件夾.ssh,

進(jìn)入.ssh文件夾,然后將id_rsa.pub復(fù)制到authorized_keys文件,命令如下,

  1. cd .ssh # 進(jìn)入.ssh目錄 
  2. cp id_rsa.pub authorized_keys #生成authorized_keys文件 
  3.  
  4. ssh localhost  #測試無密碼登陸,第一可能需要密碼 
  5. ssh node1 #同上一個命令一樣 

node1無密碼登陸的效果:

4.4)配置node1無密碼訪問node2和node3

首先以node2為例,node3參照node2的方法

在node2中執(zhí)行以下命令:

  1. su hadoop 
  2. cd /home/hadoop  
  3. ssh-keygen -t rsa #生成公鑰和私鑰,一路回車 

在node1中進(jìn)入/home/hadoop/.ssh目錄中,復(fù)制authorized_keys到node2的.ssh文件夾中

執(zhí)行以下命令

  1. scp authorized_keys hadoop@node2:/home/hadoop/.ssh #復(fù)制authorized_keys到node2的.ssh目錄中去 

修改已經(jīng)傳輸?shù)絥ode2的authorized_keys的許可權(quán)限,需要root權(quán)限

  1. chmod 644 authorized_keys    
  2.  
  3. ssh node2 #測試無密碼訪問node2   

node3同上面的執(zhí)行步驟

#p#

5、安裝hadoop

將當(dāng)前用戶切換到hadoop用戶,如果集群內(nèi)機(jī)器的環(huán)境完全一樣,可以在一臺機(jī)器上配置好,然后把配置好的軟件即hadoop-0.20.203整個文件夾拷貝到其他機(jī)器的相同位置即可。 可以將Master上的Hadoop通過scp拷貝到每一個Slave相同的目錄下,同時根據(jù)每一個Slave的Java_HOME 的不同修改其hadoop-env.sh 。

5.1)配置conf/hadoop-env.sh文件

切換到hadoop-1.2.1/conf目錄下,添加JAVA_HOME路徑

5.2)配置/conf/core-site.xml

  1. <?xml version="1.0"?>   
  2. <?xml-stylesheet type="text/xsl"href="configuration.xsl"?>   
  3. <configuration>   
  4. <property>   
  5.  <name>fs.default.name</name>   
  6.   <value>hdfs://node1:49000</value>   
  7. </property>   
  8. <property>   
  9.   <name>hadoop.tmp.dir</name>   
  10.  <value>/home/hadoop/hadoop_home/var</value>   
  11. </property>   
  12. </configuration>   

fs.default.name是NameNode的URI。hdfs://主機(jī)名:端口/

hadoop.tmp.dir :Hadoop的默認(rèn)臨時路徑,這個最好配置,如果在新增節(jié)點(diǎn)或者其他情況下莫名其妙的DataNode啟動不了,就刪除此文件中的tmp目錄即可。不過如果刪除了NameNode機(jī)器的此目錄,那么就需要重新執(zhí)行NameNode格式化的命令。

5.3)配置/conf/mapred-site.xml

  1. <?xmlversionxmlversionxmlversionxmlversion="1.0"?>   
  2. <?xml-stylesheettypexml-stylesheettypexml-stylesheettypexml-stylesheettype="text/xsl" href="configuration.xsl"?>   
  3. <configuration>   
  4. <property>   
  5.   <name>mapred.job.tracker</name>   
  6.   <value>node1:49001</value>   
  7. </property>   
  8. <property>   
  9.   <name>mapred.local.dir</name>   
  10.  <value>/home/hadoop/hadoop_home/var</value>   
  11. </property>   
  12. </configuration>   

mapred.job.tracker是JobTracker的主機(jī)(或者IP)和端口。主機(jī):端口。其中/home/hadoop/hadoop_home/var目錄需要提前創(chuàng)建,并且注意用chown -R 命令來修改目錄權(quán)限

5.4)配置/conf/hdfs-site.xml

  1. <?xmlversionxmlversionxmlversionxmlversion="1.0"?>   
  2. <?xml-stylesheettypexml-stylesheettypexml-stylesheettypexml-stylesheettype="text/xsl" href="configuration.xsl"?>   
  3. <configuration>   
  4. <property>   
  5. <name>dfs.name.dir</name>   
  6. <value>/home/hadoop/name1</value> #hadoop的name目錄路徑   
  7. <description>  </description>   
  8. </property>   
  9. <property>   
  10. <name>dfs.data.dir</name>   
  11. <value>/home/hadoop/data1</value>   
  12. <description> </description>   
  13. </property>   
  14. <property>   
  15.   <name>dfs.replication</name>   
  16.   <!-- 我們的集群又兩個結(jié)點(diǎn),所以rep兩份 -->   
  17.   <value>2</value>   
  18. </property>   
  19. </configuration>   

dfs.name.dir是NameNode持久存儲名字空間及事務(wù)日志的本地文件系統(tǒng)路徑。 當(dāng)這個值是一個逗號分割的目錄列表時,nametable數(shù)據(jù)將會被復(fù)制到所有目錄中做冗余備份。

dfs.replication是數(shù)據(jù)需要備份的數(shù)量,默認(rèn)是3,如果此數(shù)大于集群的機(jī)器數(shù)會出錯。

此處的name1和data1等目錄不能提前創(chuàng)建,如果提前創(chuàng)建會出問題。

5.5)配置master和slaves主從節(jié)點(diǎn)

配置conf/masters和conf/slaves來設(shè)置主從結(jié)點(diǎn),注意最好使用主機(jī)名,并且保證機(jī)器之間通過主機(jī)名可以互相訪問,每個主機(jī)名一行。

vi masters:

輸入:

node1

vi slaves:

輸入:

node2

node3

配置結(jié)束,把配置好的hadoop文件夾拷貝到其他集群的機(jī)器中,并且保證上面的配置對于其他機(jī)器而言正確,

  1. scp -r /home/hadoop/hadoop-1.2.1 root@node2:/home/hadoop/ #輸入node2的root密碼即可傳輸,如果java安裝路徑不一樣,需要修改conf/hadoop-env.sh 

安裝結(jié)束

#p#

四、Hadoop啟動與測試

1、格式化一個新的分布式文件系統(tǒng)

  1. cd hadoop-1.2.1   
  2. bin/hadoop namenode -format #格式化文件系統(tǒng)  

成功的情況下輸入一下(我的hadoop已經(jīng)使用,不想重新格式化選擇了No)

2、啟動所有節(jié)點(diǎn)

  1. bin/start-all.sh 

3、查看集群的狀態(tài):

 

  1. hadoop dfsadmin -report 

4、Hadoop測試

瀏覽NameNode和JobTracker的網(wǎng)絡(luò)接口,它們的地址默認(rèn)為:

NameNode - http://node1:50070/

JobTracker - http://node1:50030/

要想檢查守護(hù)進(jìn)程是否正在運(yùn)行,可以使用 jps 命令(這是用于 JVM 進(jìn)程的ps 實(shí)用程序)。這個命令列出 5 個守護(hù)進(jìn)程及其進(jìn)程標(biāo)識符。

將輸入文件拷貝到分布式文件系統(tǒng):

  1. bin/hadoop fs -mkdir input #創(chuàng)建input目錄   
  2.    
  3. bin/hadoop fs -put conf/core-site.xml input #拷貝文件到input目錄   
  4.    
  5. bin/hadoop jar hadoop-examples-1.2.1.jar grep input output 'dfs[a-z]' #使用Hadoop運(yùn)行示例  

到此為止,hadoop已經(jīng)配置完成,當(dāng)然在配置的過程中會遇到各種錯誤,主要都是權(quán)限問題和網(wǎng)絡(luò)ip配置問題,請注意。

五、Hadoop一些常用的操作命令

1、hdfs常用操作:

hadoopdfs -ls 列出HDFS下的文件

hadoop dfs -ls in 列出HDFS下某個文檔中的文件

hadoop dfs -put test1.txt test 上傳文件到指定目錄并且重新命名,只有所有的DataNode都接收完數(shù)據(jù)才算成功

hadoop dfs -get in getin 從HDFS獲取文件并且重新命名為getin,同put一樣可操作文件也可操作目錄

hadoop dfs -rmr out 刪除指定文件從HDFS上

hadoop dfs -cat in/* 查看HDFS上in目錄的內(nèi)容

hadoop dfsadmin -report 查看HDFS的基本統(tǒng)計信息,結(jié)果如下

hadoop dfsadmin -safemode leave 退出安全模式

hadoop dfsadmin -safemode enter 進(jìn)入安全模式

2、負(fù)載均衡

start-balancer.sh,可以使DataNode節(jié)點(diǎn)上選擇策略重新平衡DataNode上的數(shù)據(jù)塊的分布。


祝大家能夠順利配置好hadoop運(yùn)行環(huán)境,有問題可以留言一起探討。

 

責(zé)任編輯:奔跑的冰淇淋 來源: Linux公社
相關(guān)推薦

2012-09-04 13:15:10

Ubuntu 12.1

2012-11-01 17:15:04

2012-10-19 09:55:41

Ubuntu 12.1

2012-10-19 14:28:10

Ubuntu 12.1

2013-11-22 09:57:03

hadoop1.2.1zookeeper-3hbase-0.94.

2012-09-07 13:28:55

Ubuntu 12.1

2010-02-22 10:07:28

Ubuntu tomc

2012-10-19 10:37:09

Ubuntu 12.1代號繽紛的綠咬鵑

2012-10-16 13:52:26

Ubuntu

2012-09-03 13:38:43

Ubuntu 12.1Wayland

2012-11-02 10:36:38

Ubuntu 12.1

2012-05-25 11:13:01

Ubuntu 12.1視頻

2012-07-27 14:13:39

Ubuntu操作系統(tǒng)

2012-06-25 10:30:06

Hadoop集群

2013-04-27 19:23:57

Ubuntu 13.0

2012-11-07 17:25:46

hadoopUbuntu 12.0

2011-07-21 09:56:02

Ubuntu 12.0Ubuntu 12.1Ubuntu 13.0

2012-06-08 16:12:51

Ubuntu 12.1下載地址

2010-06-04 10:35:14

2012-11-06 13:42:43

Opera 12.10瀏覽器
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號