Hadoop分布式安装及其集群配置笔记(3)

<property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>
                <description>
                        The runtime framework for executing MapReduce jobs.
                        Can be one of local, classic or yarn.
                </description>
        </property>

编辑yarn-site.xml,增加如下内容:

<property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
                <description>
                        the valid service name should only contain a-zA-Z0-9_ and can not start with numbers
                </description>
        </property>
 
        <!--  指定resourcemanager的节点,若无此段配置,将会出现DataNode节点上的nodemanager进程启动一段时间之后自动消失的问题  -->
        <property>
                <description>The hostname of the RM.</description>
                <name>yarn.resourcemanager.hostname</name>
                <value>namenode01</value>
        </property>

创建文件 masters,增加如下内容:(实现namenode和secondarynamenode分离)

namenode02

修改文件 slaves,增加如下内容:

datanode01
datanode02
datanode03
datanode04
datanode05
datanode06
datanode07
datanode08

将hadoop文件夹拷贝到其他节点,使用上面的脚本scpFile

scpFile /home/sys/hadoop-2.6.1 /home/sys/

二、集群启动

格式化操作,进入到namenode01的hadoop根目录下,执行:

bin/hadoop namenode –format

出现Successfully字样的时候,即为格式化成功

注意:如果需要再次及多次格式化namenode,一定把hdfs-site.xml中dfs.datanode.data.dir目录清空一下,否则会造成重新格式化后DataNode启动不起来的问题。

因为该目录下有一个版本号,多次格式化可能导致DataNode和NameNode的版本号不一致。

启动dfs文件系统

sbin/start-dfs.sh

验证,jps命令查看:

namenode01上出现NameNode进程

namenode02上出现SecondaryNameNode进程

datanode0*上出现DataNode进程

即为启动dfs成功

启动yarn

sbin/start-yarn.sh

验证,jps命令查看:

namenode01上出现ResourceManager进程

datanode0*上出现NodeManager进程

即为启动yarn成功

三、修改hadoop启动日志目录

修改namenode、datanode节点默认日志目录

编辑hadoop-env.sh,修改HADOOP_LOG_DIR

export HADOOP_LOG_DIR=your path

修改resourcemanager、nodemanager日志目录

编辑yarn-env.sh,修改YARN_LOG_DIR

if [ "$YARN_LOG_DIR" = "" ]; then
  YARN_LOG_DIR="your path"

四、去除本地库加载失败的警告信息

WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform… using builtin-java classes where applicable

原因:Apache提供的hadoop本地库是32位的,而在64位的服务器上就会有问题

修改加载本地库的日志级别

编辑 $HADOOP_HOME/etc/hadoop/log4j.properties,增加如下内容:

log4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERROR

下面关于Hadoop的文章您也可能喜欢,不妨看看:

Ubuntu14.04下Hadoop2.4.1单机/伪分布式安装配置教程 

CentOS安装和配置Hadoop2.2.0 

Ubuntu 13.04上搭建Hadoop环境

Ubuntu 12.10 +Hadoop 1.2.1版本集群配置

Ubuntu上搭建Hadoop环境(单机模式+伪分布模式)

Ubuntu下Hadoop环境的配置

单机版搭建Hadoop环境图文教程详解

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/4e47313cce27d3724e27dbf540fdc542.html