• 搭建Hadoop集群(centos6.7+hadoop-2.7.3)


      hadoop集群有三种运行模式:单机模式、伪分布模式、完全分布模式。我们这里搭建第三种完全分布模式,即使用分布式系统,在多个节点上运行。

    1 环境准备

    1.1 配置DNS

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

    # vim /etc/hosts
    
    10.0.0.45  master
    10.0.0.46  slave1
    10.0.0.47  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_keys

    (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

    (5)将主节点上合并后的公钥复制到从节点上:

    
    
    [root@master .ssh]# scp authorized_keys slave1:/root/.ssh
    [root@master .ssh]# scp authorized_keys slave2:/root/.ssh

       配置完成,在各个节点上进行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 -vesrion

      若出现下面的配置信息则表示java环境配置成功了:

    2 部署Hadoop集群

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

    2.1 安装Hadoop

      下载hadoop安装包,下载地址:http://archive.apache.org/dist/hadoop/common/hadoop-2.7.3/,并解压:

    # tar xvf hadoop-2.7.3.tar.gz

      配置环境变量:

    # 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
    • slaves、hadoop-env.sh、yarn-env.sh

    下面就介绍文件的具体配置,按实际情况修改配置信息:

    (1)core-site.xml

    <configuration>
            <property>
                <name>fs.defaultFS</name>
                <value>hdfs://master:9000</value>
            </property>
            <property>
                <name>hadoop.tmp.dir</name>
                <value>/home/hadoop _tmp</value>
            </property>
    </configuration>

    (2)hdfs-site.xml

    <configuration>
           <property>
               <name>dfs.permissions.enabled</name>
               <value>false</value>
            </property>
            <property>
                <name>dfs.support.append</name>
                <value>true</value>
            </property>
            <property>
                <name>dfs.replication</name>
                <value>2</value>
            </property>
            <property>
                <name>dfs.datanode.data.dir</name>
                <value>file:///home/dfs_data</value>
            </property>
            <property>
                <name>dfs.namenode.name.dir</name>
                <value>file:///home/dfs_name</value>
            </property>
            <property>
                <name>dfs.namenode.rpc-address</name>
                <value>master:9000</value>
            </property>
            <property>
                <name>dfs.namenode.secondary.http-address</name>
                <value>slave1:50090</value>
            </property>
            <property>
                <name>dfs.namenode.secondary.https-address</name>
                <value>slave1:50091</value>
            </property>
    <property> <name>dfs.webhdfs.enabled</name> <value>true</value> </property> </configuration>

    (3)yarn-site.xml

    <configuration>
            <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>master</value>
            </property>
            <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
            </property>
            <property>
                <name>yarn.nodemanager.resource.memory-mb</name>
                <value>20480</value>
            </property>
            <property>
                <name>yarn.scheduler.maximum-allocation-mb</name>
                <value>10240</value>
            </property>
            <property>
                <name>yarn.nodemanager.resource.cpu-vcores</name>
                <value>5</value>
            </property>
            <property>
                <name>yarn.nodemanager.vmem-check-enabled</name>
                <value>false</value>
            </property>
    </configuration>

    (4)mapred-site.xml

    <configuration>
            <property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>
            </property>
    </configuration>

    (5)slaves

        启动Hadoop集群需要读取该文件,以确定从节点主机名,从而启动DataNode、NodeManager等守护进程,因此需要在该文件中添加从节点主机名。

    slave1
    slave2

    (6)hadoop-env.sh

       修改如下内容:

    export JAVA_HOME=/usr/java/jdk1.8.0_112

    (7)yarn-env.sh

      添加如下内容:

    export JAVA_HOME=/usr/java/jdk1.8.0_112

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

    # 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集群环境已经搭建好了,可以根据自己的业务需求,在上面愉快的“玩耍”了。

  • 相关阅读:
    CSS3 -- 透明色(rgba)
    CSS3 -- 多背景(backgrounds)
    CSS3 -- 背景原点(background-origin)
    CSS3 -- 背景裁剪(background-clip)
    CSS3 -- 背景尺寸(background-size)
    CSS3 -- 图片边框(border-image)
    CSS3 -- 边框颜色(border-color)
    CSS3 -- 盒模型(box-sizing)
    CSS -- 字体单位(px、em、rem)
    课程总结
  • 原文地址:https://www.cnblogs.com/qiuyuesu/p/8398091.html
Copyright © 2020-2023  润新知