Centos6 安装Hadoop集群环境

一、环境准备

1.1 配置DNS:

进入配置文件,添加主节点和从节点的IP映射关系

#vim /etc/hosts
192.168.254.155 master
192.168.254.156 slave1
192.168.254.157 slave2

1.2 关闭防火墙

#service iptables stop    //关闭服务
#chkconfig iptables off     //关闭开机自启动

1.3 配置免密登陆

1. 每个节点都首先要进入/root/.ssh目录下,生成密钥:

#ssh-keygen -t rsa //输入命令之后连续回车就行了

2. 在主节点上,将公钥拷贝到一个特定的文件中
[root@master .ssh]# cp id_rsa.pub authorized_key
3. 将每个从节点上生成的公钥复制到主节点上:
[root@slave1 .ssh]# scp id_rsa.pub master:/root/.ssh/id_rsa_slave1.pub
[root@slave2 .ssh]# scp id_rsa.pub master:/root/.ssh/id_rsa_slave2.pub
4. 在主节点上合并从节点的公钥:
[root@master .ssh]# cat id_rsa_slave1.pub>>authorized_keys 
[root@master .ssh]# cat id_rsa_slave2.pub>>authorized_keys

配置完成后、在各个节点上进行ssh访问,若无需密码就能访问,则配置成功

1.4 配置JAVA环境

首先下载jdk,保存到指定目录下,设置环境变量

# vim  /etc/profile
export JAVA_HOME=/usr/java/jdk1.8.0_112
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
# source /etc/profile     //使配置生效 

验证配置是否成功:

java -version

二、 部署Hadoop集群:

在各个节点上安装和配置Hadoop的过程都基本相同,因此可以在每个节点上安装好hadoop后,在主节点master上进行统一配置,然后通过scp命令将修改的配置文件拷贝到各个从节点上即可。

2.1 安装Hadoop

下载安装hadoop安装包;

#1. 下载并解压:
#tar -zxvf hadoop-2.7.3.tar.gz
#2. 配置环境变量:
# vim /etc/profile

export HADOOP_HOME=/home/hadoop-2.7.3
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop
2.2 修改配置文件:进入hadoop的配置文件目录$HADOOP_HOME/etc/hadoop,可以看到有许多配置文件,Hadoop集群配置主要是对以下几个文件的修改

core-site.xml
hdfs-site.xml
yarn-site.xml
mapred-site.xml
slave、hadoop-env.sh、yarn-env.sh

下面介绍文件的具体配置、按照实际情况修改配置信息;
(1) core-site.xml


  
        fs.defaultFS    #默认文件系统名称,用于指定host,post
       hdfs://master:9000
  
  
       hadoop.tmp.dir  #指定临时文件的存储路径
       file:/home/hadoop/tmp
  
  
      io.file.buffer.size  #用于指定序列文件的缓冲区大小
       131702
  

(2) hdfs-site.xml


       
           dfs.permissions.enabled
           false
        
        
            dfs.support.append
            true
        
             
                dfs.namenode.name.dir      #用于指定namenode存储路径
           file:/home/michael/soft/hadoop/dfs/name
       
       
                dfs.datanode.data.dir  #用于指定datenode存储路径
                file:/home/michael/soft/hadoop/dfs/data
       
       
               dfs.replication #用于指定副本个数
                3
       
       
               dfs.namenode.secondary.http-address  #二主节点的端口
               master:9001
       
       
               dfs.webhdfs.enabled 
                true        #启用webHDFS检测namenode和datanode
       

(3) yarn-site.xml
此目录下没有该文件,我们需要将mapred-site.xml.template 复制一份,改成此名。然后再修改:


        
            yarn.resourcemanager.hostname
            master
        
        
            yarn.nodemanager.aux-services
            mapreduce_shuffle
        
        
            yarn.nodemanager.resource.memory-mb
            20480
        
        
            yarn.scheduler.maximum-allocation-mb
            10240
        
        
            yarn.nodemanager.resource.cpu-vcores
            5
        
        
            yarn.nodemanager.vmem-check-enabled
            false
        

(4) mapred-site.xml


        
            mapreduce.framework.name
            yarn
        

(5) slaves
启动hadoop集群需要读取该文件,以确定从节点主机名,从而启动Datanode,Nodemanager等守护进程,因此需要在该文件中添加从节点主机名。
slave1
slave2

(6) hadoop-env.sh
修改如下内容:
export JAVA_HOME=/usr/java/jdk1.8.0_171

(7) yarn-env.sh
添加如下内容:
export JAVA_HOME=/usr/java/jdk1.8.0_171

到此,完成了主节点上所有配置,只需要将这些配置信息复制到各个节点:

# scp /home/hadoop-2.7.3/etc/hadoop/* slave1:/home/hadoop-2.7.3/etc/hadoop/
# scp /home/hadoop-2.7.3/etc/hadoop/* slave2:/home/hadoop-2.7.3/etc/hadoop/

2.3 启动Hadoop

(1)第一次启动HDFS需要初始化,在节点上执行:
# cd /home/hadoop-2.7.3   
# ./bin/hadoop namenode -format

(2) 启动HDFS:
# ./sbin/start-dfs.sh   //启动后,访问http://master:50070/ 可以看到HDFS WEB 界面

(3)启动YARN:
#。/sbin/start-yarn.sh     //成功启动后,访问http://master:8088/即可看到YARN Web界面。

这里也可以直接执行下面的命令一键启动,但第一次启动不建议这样做:
# start-all.sh
到此、Hadoop集群环境已经搭建好了。

你可能感兴趣的:(Centos6 安装Hadoop集群环境)