zoukankan      html  css  js  c++  java
  • hadoop-2.7.3完全分布式部署

    一、环境介绍

            

         IP       host JDK linux版本 hadop版本
    192.168.0.1 master 1.8.0_111 centos7.2.1511 hadoop-2.7.3
    192.168.0.2 slave1 1.8.0_111 centos7.2.1511 hadoop-2.7.3
    192.168.0.3 slave1 1.8.0_111 centos7.2.1511 hadoop-2.7.3

    二、系统环境配置

        1.  安装JDK  

    tar –zvxf jdk-8u111-linux-x64.tar.gz –C /usr/local/

        2.  配置系统级的JDK环境变量(root权限)

             vi  /etc/profile,增加如下配置

    export JAVA_HOME=/usr/local/jdk1.8.0_111
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

        3.  安装hadoop

    tar -zxvf hadoop-2.7.3.tar.gz -C /usr/local/

        4.  配置hadoop的系统变量(非必须)

            在/etc/profile中增加HADOOP_HOME

    export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL
    export JAVA_HOME=/usr/local/jdk1.8.0_111
    export HADOOP_HOME=/usr/local/hadoop-2.7.3
    export PATH=$ZOOKEEPER_HOME/bin:$HADOOP_HOME/bin:$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$HADOOP_HOME/bin

       5. 环境配置生效

    source /etc/profile

        6. 配置host

        vi  /etc/hosts

    192.168.0.1 master
    192.168.0.2 salve1
    192.168.0.3 salve2

        7. 修改hostname(非必须)

            vi  /etc/sysconfig/network,将HOSTNAME改成相应的host

        8.  配置ssh免密码登录

            ssh-keygen -t dsa,回车三次(三个节点都执行),会在/home/<用户>下面新建一个.ssh文件夹,.ssh中有两个文件。

    id_dsa
    id_dsa.pub

            在.ssh中touch  authorzied_keys,将其他两台机器中的id_dsa.pub追加到authorzied_keys中,然后修改authorzied_keys和.ssh的权限,chmod 600 authorzied_keys,chmod 700 .ssh

        9.  关闭防火墙

    1) 永久性生效,重启后不会复原
    开启: chkconfig iptables on
    关闭: chkconfig iptables off
    
    2) 即时生效,重启后复原
    开启: service iptables start
    关闭: service iptables stop

        10.  集群时钟同步(时间一致则省去这步)

    ln -fs /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
    ntpdate time.nist.gov

    三、hadoop配置

        1.  hadoop环境变量配置涉及etc/hadoop目录下的三个文件:hadoop-env.sh,mapred-env.sh,yarn-env.sh,将这些文件中的JAVA_HOME改为JAVA_HOME=/usr/local/jdk1.8.0_111

        2.  修改hadoop的配置文件

            2.1.  core-site.xml    

    <configuration>
    <property>
          <name>fs.defaultFS</name>
          <value>hdfs://master:9000</value>
          <description>主节点namenode的host和端口</description>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/hadoop/tmp</value>
        <description>hdfs中namenode和datanode数据的默认存放目录,可在hdfs中分别配置其目录</description>
    </property>
    </configuration>

            2.2.  hdfs-site.xml

    <configuration>
    <property>
        <name>dfs.name.dir</name>
        <value>/usr/hadoop/hdfs/name</value>
        <description>namenode数据的存放目录</description>
    </property>
    <property>
        <name>dfs.data.dir</name>
        <value>/usr/hadoop/hdfs/data</value>
        <description>datanode数据的存放目录</description>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
    <property>
            <name>dfs.namenode.secondary.http-address</name>
            <value>master:9001</value>
            <description>secondarynamenode的web地址</description>
    </property>
    <property>
    	<name>dfs.webhdfs.enabled</name>
    	<value>true</value>
        <description>提供web访问hdfs的权限</description>
    </property>
    </configuration>

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

            2.3.  mapred-site.xml

    <configuration>
    <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
    </property>
    <property>
            <name>mapreduce.jobhistory.address</name>
            <value>master:10020</value>
            <description>jobhistory是Hadoop自带了一个历史服务器,记录Mapreduce历史作业</description>
    </property>
    <property>
            <name>mapreduce.jobhistory.webapp.address</name>
            <value>master:19888</value>
            <description>jobhistory的http地址</description>
    </property>
    </configuration>

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

        

    sbin/mr-jobhistory-daemon.sh start historyserver 

             2.4.  yarn-site.xml

    <configuration>
    
    <!-- Site specific YARN configuration properties -->
        <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
        </property>
    	 <property>
            <name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
            <value>org.apache.hadoop.mapred.ShuffleHandler</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>
            <description>yarn资源管理的http地址</description>
        </property>
        <property>
            <name>yarn.nodemanager.resource.memory-mb</name>
            <value>768</value>
        </property>
    </configuration>

            2.5  编辑slaves

    master
    slave1
    slave2

            2.6  同步配置

                将hadoop配置同步到其他节点

        

    scp -r /usr/local/hadoop-2.7.3/etc/* slav1:/usr/local/hadoop-2.7.3/etc/
    scp -r /usr/local/hadoop-2.7.3/etc/* slav2:/usr/local/hadoop-2.7.3/etc/

    四、启动hadoop集群

        1.  格式化namenode(初次启动执行)

    bin/hdfs namenode –format    

        2.  启动hdfs

    sbin/start-dfs.sh

        3.  启动yarn

    start-yarn.sh 

        4.  jps查看进程

            4.1  master进程

    ResourceManager
    JobHistoryServer
    NameNode
    SecondaryNameNode
    DataNode
    Jps

            4.2  slave进程

    DataNode
    Jps

    五、通过浏览器查看集群运行状态

    1.http://master:50070                   namenode的hdfs页面地址
    2.http://master:8088/cluster/cluster    yarn资源的页面地址
  • 相关阅读:
    浅谈display:flex
    MVVM
    HDFS 伪分布式集群搭建
    HDFS入门
    Hadoop-HDFS
    Hadoop介绍
    大数据-高并发Nginx
    大数据-高并发LVS3Keepalived
    大数据-高并发LVS2实验
    大数据-高并发LVS1
  • 原文地址:https://www.cnblogs.com/mylovelulu/p/9327268.html
Copyright © 2011-2022 走看看