Hadoop2.5.2集群安装

说明:转载我同事关于hadoop的文章,给大家分享下~

地址:http://gao-xianglong.iteye.com/blog/2189773

 

《Hadoop2.5.2集群安装》

 

1、环境介绍

操作系统:CentOS  X64

物理机器:192.168.1.224(Master)、192.168.1.226(Slave1)、192.168.1.226(Slave2)

JDK版本:JDK7.X

Hadoop版本:Hadoop2.5.2

 

2、修改主机名称

通过命令“hostname”查看当前机器的机器名称,然后分别在Master、Slave1、Slave2机器的/etc/sysconfig/network文件上修改下主机名称(非必须)并保存,如下所示:

Shell代码  收藏代码

#Master机器(192.168.1.224)  
NETWORKING=yes  
HOSTNAME=Master  
  
#Slave1机器(192.168.1.225)  
NETWORKING=yes  
HOSTNAME=Slave1  
  
#Slave2机器(192.168.1.226)  
NETWORKING=yes  
HOSTNAME=Slave2

 

3、修改hosts文件

分别在Master、Slave1、Slave2机器上修改下hosts文件并保存,如下所示:

Shell代码  收藏代码

192.168.1.224  Master  
192.168.1.225  Slave1  
192.168.1.226  Slave2

4、确保JDK成功安装并可用

当成功在Master、Slave1、Slave2机器上安装JDK后(笔者使用JDK7.x),还需要在“/etc/profile”文件中配置Java的环境变量,并通过命令“source “/etc/profile”命令使修改后的配置生效,如下所示:

Shell代码  收藏代码

 

  1. #JAVA  
    export JAVA_HOME=/usr/java/jdk1.7.0_67   
    export PATH=$JAVA_HOME/bin:$PATH   
    #export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

 

5、Haddop的安装

使用命令“tar -zxvf”命令将gz压缩文件解压。笔者Hadoop的安装目录为:“/home/hadoop”,解压后的Hadoop目录为“/home/hadoop/hadoop-2.5.2”,最好确保Master、Slave1、Slave2机器上的Hadoop安装路径一致。

 

6、配置Hadoop环境变量

成功安装Hadoop后,接下来要做的事情就是配置Hadoop的环境变量,并通过命令“source “/etc/profile”命令使修改后的配置生效,如下所示:

Shell代码  收藏代码

 

  1. #HADOOP  
    export HADOOP_HOME=/home/hadoop/hadoop-2.5.2  
    export HADOOP_COMMON_HOME=$HADOOP_HOME  
    export HADOOP_HDFS_HOME=$HADOOP_HOME  
    export HADOOP_MAPRED_HOME=$HADOOP_HOME  
    export HADOOP_YARN_HOME=$HADOOP_HOME  
    export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop  
      
    export CLASSPATH=.:$JAVA_HOME/lib:$HADOOP_HOME/lib:$CLASSPATH  
    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

 

7、修改Hadoop的一系列配置文件

/home/hadoop/hadoop-2.5.2/etc/hadoop/core-site.xml修改,如下所示:

Xml代码  收藏代码

  1. <?xml version="1.0" encoding="UTF-8"?>  
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>  
    <configuration>  
        <property>  
            <name>fs.defaultFS</name>  
            <value>hdfs://Master:9000</value>  
        </property>  
    </configuration>

 

/home/hadoop/hadoop-2.5.2/etc/hadoop/hdfs-site.xml修改,如下所示:

Xml代码  收藏代码

  1. <?xml version="1.0" encoding="UTF-8"?>  
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>  
    <configuration>  
        <property>  
            <name>dfs.replication</name>    
            <value>1</value>  
        </property>  
        <property>  
            <name>dfs.namenode.name.dir</name>          
            <value>/home/hadoop/dfs/name</value>  
        </property>  
        <property>  
            <name>dfs.datanode.data.dir</name>  
            <value>>/home/hadoop/dfs/data</value>  
        </property>  
        <property>  
            <name>dfs.webhdfs.enabled</name>  
            <value>true</value>  
        </property>    
    </configuration>

 

访问namenode的hdfs使用50070端口,访问datanode的webhdfs使用50075端口。要想不区分端口,直接使用namenode的IP和端口进行所有的webhdfs操作,就需要在所有的datanode上都设置hdfs-site.xml中的dfs.webhdfs.enabled为true。

 

/home/hadoop/hadoop-2.5.2/etc/hadoop/mapred-site.xml修改,如下所示:

Xml代码  收藏代码

  1. <?xml version="1.0"?>  
    <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>  
    <configuration>  
        <property>  
            <name>mapreduce.framework.name</name>  
            <value>yarn</value>  
        </property>  
        <property>  
            <name>mapreduce.jobhistory.address</name>  
            <value>MasterServer:10020</value>  
        </property>  
        <property>  
            <name>mapreduce.jobhistory.webapp.address</name>  
            <value>MasterServer:19888</value>  
        </property>  
    </configuration>

 

jobhistory是Hadoop自带了一个历史服务器,用于记录Mapreduce历史作业。默认情况下,jobhistory没有启动,可用手动通过命令启动,如下所示:

Shell代码  收藏代码

  1. jobhistory-daemon.sh start historyserver

  

/home/hadoop/hadoop-2.5.2/etc/hadoop/yarn-site.xml修改,如下所示:

Xml代码  收藏代码

  1. <?xml version="1.0"?>  
    <configuration>  
         <property>    
            <name>yarn.nodemanager.aux-services</name>    
            <value>mapreduce_shuffle</value>    
         </property>    
         <property>    
            <name>yarn.resourcemanager.address</name>    
            <value>Master:8032</value>    
         </property>    
         <property>    
            <name>yarn.resourcemanager.scheduler.address</name>    
            <value>Master:8030</value>    
         </property>    
         <property>    
            <name>yarn.resourcemanager.resource-tracker.address</name>    
            <value>Master:8031</value>    
         </property>    
         <property>    
            <name>yarn.resourcemanager.admin.address</name>    
            <value>Master:8033</value>    
         </property>    
         <property>    
            <name>yarn.resourcemanager.webapp.address</name>    
            <value>Master:8088</value>    
         </property>    
    </configuration>

 

/home/hadoop/hadoop-2.5.2/etc/hadoop/slaves修改,如下所示:

Shell代码  收藏代码

  1. Slave1  
    Slave2

 

分别在/home/hadoop/hadoop-2.5.2/etc/hadoop/hadoop-env.sh和yarn-env.sh中配置Java环境变量,如下所示:

Shell代码  收藏代码

  1. export JAVA_HOME=/usr/java/jdk1.7.0_67  

 

8、将配置好的Hadoop拷贝到从机上

使用命令“scp -r hadoop-2.5.2 hadoop@Slave1:/home/hadoop”和“scp -r hadoop-2.5.2hadoop@Slave2:/home/hadoop”执行数据拷贝。

 

9、启动Hadoop

在正式 启动Hadoop之前,分别在Master、Slave1、Slave2机器上格式化HDFS,如下所示:

Shell代码  收藏代码

  1. hdfs namenode –format

 

当成功格式化后,接下来便可以在Master上通过命令“start-all.sh”启动Hadoop,同时也可以通过“stop-all.sh”停止Hadoop运行(会由Master负责带动Slave节点的启动和停止)。

 

当成功启动Hadoop后,我们便可以在每一个节点下执行命令jps,查看Hadoop的进程,如下所示:

Shell代码  收藏代码

 

  1. #Master上的Hadoop进程  
    30791 SecondaryNameNode  
    30943 ResourceManager  
    30607 NameNode  
      
    #Slave1上的Hadoop进程  
    9902 DataNode  
    10001 NodeManager  
      
    #Slave2上的Hadoop进程  
    9194 DataNode  
    9293 NodeManager

 

除此之外,开发人员还可以通过http://ip:50070、http://ip:8088http://ip:19888通过浏览器查阅Hadoop集群中每一个节点的运行状态。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

^白开水^

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值