当前位置 博文首页 > 吃顿好的:Hadoop 2.7.2版本完全分布式搭建

    吃顿好的:Hadoop 2.7.2版本完全分布式搭建

    作者:[db:作者] 时间:2021-09-21 12:00

    主机配置

    主机IP角色
    hadoop0110.1.24.1namenode,datanode,nodeManager
    hadoop0210.1.24.2namenode2,datanode,nodeManager
    hadoop0310.1.24.3resourceManager,datanode,nodeManager,历史服务器

    环境配置

    安装JDK

    这里安装的是1.8.0_211版本。

    配置三台主机免密

    这里三台都要配置,自己到自己的免密也要配置。

    安装hadoop

    下载安装包

    mkdir /home/hadoop
    cd /home/hadoop
    wget http://archive.apache.org/dist/hadoop/common/hadoop-2.7.2/hadoop-2.7.2.tar.gz
    tar -zxvf hadoop-2.7.2.tar.gz
    cd hadoop-2.7.2
    

    设置环境变量

    vim /etc/profile
    # 在最后面增加如下两行代码
    export HADOOP_HOME=/home/hadoop/hadoop-2.7.2
    export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
    # 保存退出
    source /etc/profile
    

    修改运行文件的JAVA_HOME

    每个节点都需要修改
    vim etc/hadopp/hadoop-env.sh
    然后修改export JAVA_HOME=${JAVA_HOME}export JAVA_HOME=/home/java/jdk1.8.0_211

    vim etc/hadopp/yarn-env.sh
    然后将# export JAVA_HOME=/home/y/libexec/jdk1.6.0export JAVA_HOME=/home/java/jdk1.8.0_211

    vim etc/hadoop/mapred-env.sh
    然后将# export JAVA_HOME=/home/y/libexec/jdk1.6.0export JAVA_HOME=/home/java/jdk1.8.0_211

    修改配置文件

    core-site.xml
    <configuration>
        <!-- 指定HDFS中NameNode的地址 -->
        <property>
            <name>fs.defaultFS</name>
            <value>hdfs://hadoop01:9000</value>
        </property>
    
        <!-- 指定Hadoop运行时产生文件的存储目录 -->
        <property>
            <name>hadoop.tmp.dir</name>
            <value>/home/hadoop/hadoop-2.7.2/data/tmp</value>
        </property>
    </configuration>
    
    hdfs-site.xml
    <configuration>
        <!-- 指定HDFS副本的数量 -->
        <property>
            <name>dfs.replication</name>
            <value>3</value>
        </property>
        
        <!-- 指定Hadoop second namenode节点主机配置 -->
        <property>
            <name>dfs.namenode.secondary.http-address</name>
            <value>hadoop02:50090</value>
        </property>
    </configuration>
    
    yarn-site.xml
    <configuration>
    <!-- Site specific YARN configuration properties -->
        <!-- Reducer 获取数据的方式 -->
        <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
        </property>
    
        <!-- 指定YRAN的ResourceManager的地址 -->
        <property>
            <name>yarn.resourcemanager.hostname</name>
            <value>hadoop03</value>
        </property>
        
        <!-- 日志聚集功能使用 -->
        <property>
            <name>yarn.log-aggregation-enable</name>
            <value>hadoop03</value>
        </property>
        
        <!-- 日志保留时间设置7天 -->
        <property>
            <name>yarn.log-aggregation.retain-seconds</name>
            <value>604800</value>
        </property>
    </configuration>
    
    mapred-site.xml

    cp mapred-site.xml.template mapred-site.xml

    <configuration>
        <!-- 指定MR运行在YARN上 -->
        <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
        </property>
        
        <!-- 历史服务器端地址 -->
        <property>
            <name>mapreduce.jobhistory.address</name>
            <value>hadoop03:10020</value>
        </property>
        
        <!-- 历史服务器web端地址 -->
        <property>
            <name>mapreduce.jobhistory.webapp.address</name>
            <value>hadoop03:19888</value>
        </property>
    </configuration>
    
    slaves
    hadoop01
    hadoop02
    hadoop03
    

    启动

    逐节点启动

    # 启动namenode
    hadoop-daemon.sh start namenode
    # 启动datanode
    hadoop-daemon.sh start datanode
    # 启动secondarynamenode
    hadoop-daemon.sh start secondarynamenode
    # 启动历史服务器
    mr-jobhistory-daemon.sh start historyserver
    

    脚本启动

    启动hdfs服务:start-dfs.sh
    启动yarn服务(需要在resourceManager节点启动,这里就是hadoop03节点)start-yarn.sh
    启动历史服务器(在hadoop03节点):mr-jobhistory-daemon.sh start historyserver

    cs
    下一篇:没有了