Hadoop2.2.0單節點安裝和配置環境圖文詳解

jopen 8年前發布 | 8K 次閱讀 分布式/云計算/大數據

摘要:最近也是剛剛入門hadoop,配置環境就折騰了很久,在網上也查看了給位大神的帖子,從中也學到 了很多東西,但是很多都是比較雜,在這里我就貼出我配置的一些心得,望各位指教。
一、簡介
二、在Ubuntu下創建hadoop用戶組和用戶
三、在Ubuntu下安裝JDK
四、安裝ssh服務
五、建立ssh無密碼登錄本機
六、安裝hadoop
七、在單機上運行hadoop。

一:簡介(這里簡單用圖片展示下):



二、在Ubuntu下創建hadoop用戶組和用戶 ,這里考慮的是以后涉及到hadoop應用時,專門用該用戶操作。用戶組名和用戶名都設為:hadoop。可以理解為該hadoop用戶是屬于一個名為hadoop的用戶組。

1、創建hadoop用戶組,如圖


2、創建hadoop用戶,


3、給hadoop用戶添加權限,打開/etc/sudoers文件,如圖


按回車鍵后就會打開/etc/sudoers文件了,給hadoop用戶賦予root用戶同樣的權限。在root  ALL=(ALL:ALL)  ALL下添加hadoop  ALL=(ALL:ALL)  ALL,如圖


三、在Ubuntu下安裝JDKhttp://blog.csdn.net/u011067360/article/details/21396209

每當Ubuntu安裝成功時,我們的機器名都默認為:ubuntu ,但為了以后集群中能夠容易分辨各臺服務器,需要給每臺機器取個不同的名字。機器名由 /etc/hostname文件決定。
1、打開/etc/hostname文件,如圖


打開/etc/hostname文件,將/etc/hostname文件中的ubuntu改為你想取的機器名,重啟系統后才會生效。

四:安裝ssh服務 

這里的ssh和三大框架:spring,struts,hibernate沒有什么關系,ssh可以實現遠程登錄和管理,具體可以參考其他相關資料。

1、安裝openssh-server,


自動安裝openssh-server時,可能會進行不下去,可以先進行如下操作:

執行如下命令升級部分軟件udo apt-get update,如圖:


操作完成后繼續執行第1步。
這時您已經安裝好了ssh,您就可以進行第五步了;

五、 建立ssh無密碼登錄本機 
ssh生成密鑰有rsa和dsa兩種生成方式,默認情況下采用rsa方式。
1、創建ssh-key,,這里我們采用rsa方式,如圖


回車后會在~/.ssh/下生成兩個文件:id_rsa和id_rsa.pub這兩個文件是成對出現的,

2、進入~/.ssh/目錄下,將id_rsa.pub追加到authorized_keys授權文件中,開始是沒有authorized_keys文件的,如圖


完成后就可以無密碼登錄本機了。

3、登錄localhost,在命令行中輸入:ssh localhost,結果如圖,


至此,hadoop的ssh環境就搭好了,接下來就是配置hadoop的環境了。

六、安裝Hadoop2.2,搭建集群

1、在hadoopMaster上安裝hadoop

       首先到Apache官網上下載hadoop2.2的壓縮文件,將其解壓到當前用戶的根文件夾中(home/fyzwjd/),將解壓出的文件夾改名為hadoop。

$ sudo mv hadoop-2.2.0 hadoop

配置之前,先在本地文件系統創建以下文件夾:~/hadoop/tmp、~/dfs/data、~/dfs/name。 主要涉及的配置文件有7個:都在/hadoop/etc/hadoop文件夾下,可以用gedit命令對其進行編輯。

~/hadoop/etc/hadoop/hadoop-env.sh  
~/hadoop/etc/hadoop/yarn-env.sh  
~/hadoop/etc/hadoop/slaves  
~/hadoop/etc/hadoop/core-site.xml  
~/hadoop/etc/hadoop/hdfs-site.xml  
~/hadoop/etc/hadoop/mapred-site.xml  
~/hadoop/etc/hadoop/yarn-site.xml

         (1)     配置文件1:hadoop-env.sh
              修改JAVA_HOME值(export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_51)
        (2)     配置文件2:yarn-env.sh
              修改JAVA_HOME值(export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_51)
      (3)     配置文件3:slaves ( hadoopSalve1  、hadoopSlave2 )

       (4)    配置文件4:core-site.xml

<configuration>  
<property>  
<name>fs.defaultFS</name>  
<value>hdfs://hadoopMaster:9000</value>  
</property>  
<property>  
<name>io.file.buffer.size</name>  
<value>131072</value>  
</property>  
<property>  
<name>hadoop.tmp.dir</name>  
<value>file:/home/fyzwjd/hadoop/tmp</value>  
<description>Abasefor other temporary directories.</description>  
</property>  
<property>  
<name>hadoop.proxyuser.fyzwjd.hosts</name>  
<value>*</value>  
</property>  
<property>  
<name>hadoop.proxyuser.fyzwjd.groups</name>  
<value>*</value>  
</property>  
</configuration>

     (5)     配置文件5:hdfs-site.xml

<configuration>  
<property>  
<name>dfs.namenode.secondary.http-address</name>  
<value>hadoopMaster:9001</value>  
</property>  
<property>  
<name>dfs.namenode.name.dir</name>  
<value>file:/home/fyzwjd/dfs/name</value>  
</property>  
<property>  
<name>dfs.datanode.data.dir</name>  
<value>file:/home/fyzwjd/dfs/data</value>  
</property>  
<property>  
<name>dfs.replication</name>  
<value>3</value>  
</property>  
<property>  
<name>dfs.webhdfs.enabled</name>  
<value>true</value>  
</property>  
</configuration>

  (6)    配置文件6:mapred-site.xml

<configuration>  
<property>  
<name>mapreduce.framework.name</name>  
<value>yarn</value>  
</property>  
<property>  
<name>mapreduce.jobhistory.address</name>  
<value>hadoopMaster:10020</value>  
</property>  
<property>  
<name>mapreduce.jobhistory.webapp.address</name>  
<value>hadoopMaster:19888</value>  
</property>  
</configuration>

  (7)    配置文件7:yarn-site.xml

<configuration>  
<property>  
<name>yarn.nodemanager.aux-services</name>  
<value>mapreduce_shuffle</value>  
</property>  
<property>  
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>  
<value>org.apache.hadoop.mapred.ShuffleHandler</value>  
</property>  
<property>  
<name>yarn.resourcemanager.address</name>  
<value>hadoopMaster:8032</value>  
</property>  
<property>  
<name>yarn.resourcemanager.scheduler.address</name>  
<value>hadoopMaster:8030</value>  
</property>  
<property>  
<name>yarn.resourcemanager.resource-tracker.address</name>  
<value>hadoopMaster:8035</value>  
</property>  
<property>  
<name>yarn.resourcemanager.admin.address</name>  
<value>hadoopMaster:8033</value>  
</property>  
<property>  
<name>yarn.resourcemanager.webapp.address</name>  
<value>hadoopMaster:8088</value>  
</property>  
</configuration>

2、如果是真機分布式,則將hadoop文件夾拷貝到hadoopSlave1和hadoopSlave2上。

scp –r/home/fyzwjd/hadoop fyzwjd@hadoopSlave1:~/  
scp –r/home/fyzwjd/hadoop fyzwjd@hadoopSlave2:~/

七、驗證與運行
    所有的組件啟動和停止服務都在/hadoop/sbin目錄下,一般啟動hadoop前會格式化namenode。具體命令參考如下:

1、進入安裝目錄: cd ~/hadoop/  
格式化namenode:./bin/hdfs namenode –format  
啟動hdfs: ./sbin/start-dfs.sh  
此時在hadoopMaster上面運行的進程有:namenodesecondarynamenode  
hadoopSlave1和hadoopSlave2上面運行的進程有:datanode  


2、啟動yarn: ./sbin/start-yarn.sh  
此時在hadoopMaster上面運行的進程有:namenodesecondarynamenoderesourcemanager  
hadoopSlave1和hadoopSlave2上面運行的進程有:datanode nodemanaget 


3、查看集群狀態:./bin/hdfs dfsadmin –report  
查看文件塊組成: ./bin/hdfsfsck/ -files -blocks  
查看HDFS: http://hadoopMaster:50070  
查看RM: http:// hadoopMaster:8088  





來自: http://blog.csdn.net//u011067360/article/details/21561061

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!