这是我自己在公司一个搭建公司大数据框架是自己的选项,在配置yarn ha 出现了nodemanager起不来的问题
于是我把yarn搭建为普通yarn 如果有人解决 高yarn的nodemanager问题,请能留下留言,希望我的这个小日志能
初学者有所帮助。 在此例中采用的是 hadoop 2.6.5 版本
由于在建助hadoop 普通模式将基于hadoop的搭建都基本搭建起来,因而这里采用的是 on tez 模式
如果您不需要on tez 模式,你可以选择 将 yarn-tez 改成 yarn既可以了,这里也提供结合tez的方式。 在这里就不是介绍zookeeper 集群搭建,因为太简单了,只要注意
server.1 server.2 server.3 和 data 下面的myid 数字 123对应起来不要乱了就可以。
core-site.xml
<configuration>

    <property>
<name>fs.defaultFS</name>
<value>hdfs://ft-hadoop-dev-01-d:9000</value>
</property> <property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property> <property>
<name>fs.trash.interval</name>
<value>1440</value>
<description>删除文件表一天时间默认分钟</description>
</property> <property>
<name>hadoop.tmp.dir</name>
<value>/home/workspace/hadoop/tmp</value>
</property> <property>
<name>hadoop.proxyuser.u0.hosts</name>
<value>*</value>
</property> <property>
<name>hadoop.proxyuser.u0.groups</name>
<value>*</value>
</property> <property>
<name>ha.zookeeper.quorum</name>
<value>ft-hadoop-dev-01-d:2181,ft-hadoop-dev-02-d:2181,ft-hadoop-dev-03-d:2181</value>
<description>hadoop 高配集群制定zookeeper集群</description>
</property> </configuration>

hdfs-site.xml

 <configuration>

    <property>
<name>dfs.replication</name>
<value>3</value>
</property> <property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property> <property>
<name>dfs.blocksize</name>
<value>134217728</value>
</property> <property>
<name>dfs.nameservices</name>
<value>mycluster</value>
<description>指定hdfs的nameservices名称为mycluster</description>
</property> <property>
<name>dfs.ha.namenodes.mycluster</name>
<value>nn1,nn2</value>
</property> <property>
<name>dfs.namenode.rpc-address.mycluster.nn1</name>
<value>ft-hadoop-dev-01-d:8020</value>
<description>配置nn1,nn2的rpc通信端口</description>
</property> <property>
<name>dfs.namenode.rpc-address.mycluster.nn2</name>
<value>ft-hadoop-dev-02-d:8020</value>
<description>配置nn1,nn2的rpc通信端口</description>
</property> <property>
<name>dfs.namenode.http-address.mycluster.nn1</name>
<value>ft-hadoop-dev-01-d:50070</value>
<description>web端口</description>
</property> <property>
<name>dfs.namenode.http-address.mycluster.nn2</name>
<value>ft-hadoop-dev-02-d:50070</value>
<description>web端口</description>
</property> <property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://ft-hadoop-dev-02-d:8485;ft-hadoop-dev-02-d:8485;ft-hadoop-dev-02-d:8485/mycluster</value>
<description>指定namenode元数据存储在journalnode中的路径</description>
</property> <property>
<name>dfs.journalnode.edits.dir</name>
<value>/home/bigdata/hadoop/journal-metastore</value>
<description>指定journalnode日志文件存储的路径</description>
</property>> <property>
<name>dfs.client.failover.proxy.provider.mycluster</name>
<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
<description>指定HDFS客户端连接active namenode的java类</description>
</property> <property>
<name>dfs.ha.fencing.methods</name>
<value>sshfence
shell(/bin/true)</value>
<description>使HA模式下不会同时出现两个master,不允许出现两个activity状态下的Namenodeh</description>
</property> <property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/root/.ssh/id_rsa</value>
<description>指定秘钥的位置</description>
</property> <property>
<name>dfs.ha.automatic-failover.enabled</name>
<value>true</value>
<description>这个是开启自动故障转移</description>
</property> </configuration>

mapred-site.xml

    <property>             
<name>mapreduce.framework.name</name>
<value>yarn-tez</value>
</property> <property>  
<name>mapreduce.jobhistory.address</name>
<value>ft-hadoop-dev-01-d:10020</value>
</property> <property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>ft-hadoop-dev-01-d:19888</value>
</property> </configuration>

yarn-site.xml

<configuration>

    <property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property> <property>
<name>yarn.resourcemanager.hostname</name>
<value>ft-hadoop-dev-01-d</value>
</property> <property>
<name>yarn.log-aggregation-enable</name>
<value>true</value>
</property> <property>
<name>yarn.log-aggregation.retain-seconds</name>
<value>106800</value>
</property> <property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>4056</value>
<description>配置nodemanager可用的资源内存</description>
</property> <property>
<name>yarn.nodemanager.resource.cpu-vcores</name>
<value>4</value>
<description>配置nodemanager可用的资源CPU</description>
</property> </configuration>
将tez 和 hadoop结合,tez可以减少hadoop初始化的时间,从而在大量数据面前提高是hadoop处理数据的速度
大幅度压缩初始化时间.
 <?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>tez.lib.uris</name>
<value>${fs.defaultFS}/tez/tez.tar.gz</value>
</property>
<property>
<name>tez.use.cluster.hadoop-libs</name>
<value>false</value>
</property>
</configuration>

 在hadoop-env.sh最下面加入如下内容

这里主要是引入tez的配置文件和jar包

#tez 环境变量
TEZ_CONF_DIR=/home/bigdata/hadoop/etc/hadoop/tez-site.xml
TEZ_JARS=/opt/software/tez
export HADOOP_CLASSPATH=${HADOOP_CLASSPATH}:${TEZ_CONF_DIR}:${TEZ_JARS}/*:${TEZ_JARS}/lib/*
 

hadoop hdfs ha 模式的更多相关文章

  1. cdh5.13.1 hadoop hdfs HA模式无法启动

    经过观察日志发现,JN三个节点启动正常,只有NN节点启动时提示JN节点没有格式化 停止HDFS下面所有服务 先启动JN节点 然后启动一个NN节点,观察三个JN节点日志 发现其中一个节点的日志正常,没有 ...

  2. Hadoop HDFS HA启动出现两个StandBy NameNode

    可能是zkfc服务没有启动,正确的流程如下: 1.在nn001上格式化zkfc sudo -u hdfs hdfs zkfc -formatZK 2.在三个(或以上)节点上启动journalnode ...

  3. hadoop hdfs 高可用

    单点故障: 如果某一个节点或服务出了问题,导致服务不可用 单点故障解决方式: 1.给容易出故障的地方安排备份 2.一主一备,要求同一时刻只能有一个对外提供服务 3.当active挂掉之后,standb ...

  4. 使用Cloudera Manager搭建zookeeper集群及HDFS HA实战篇

    使用Cloudera Manager搭建zookeeper集群及HDFS HA实战篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.使用Cloudera Manager搭建zo ...

  5. Hadoop 学习笔记 (九) hadoop2.2.0 生产环境部署 HDFS HA部署方法

    step1:将安装包hadoop-2.2.0.tar.gz存放到某一个目录下,并解压 step2:修改解压后的目录中的文件夹/etc/hadoop下的xml配置文件(如果文件不存在,则自己创建) 包括 ...

  6. 一脸懵逼学习Hadoop分布式集群HA模式部署(七台机器跑集群)

    1)集群规划:主机名        IP      安装的软件                     运行的进程master    192.168.199.130   jdk.hadoop      ...

  7. 安装部署Apache Hadoop (完全分布式模式并且实现NameNode HA和ResourceManager HA)

    本节内容: 环境规划 配置集群各节点hosts文件 安装JDK1.7 安装依赖包ssh和rsync 各节点时间同步 安装Zookeeper集群 添加Hadoop运行用户 配置主节点登录自己和其他节点不 ...

  8. [hadoop][会装]HBase集群安装--基于hadoop ha模式

    可以参考部署HBase系统(分布式部署) 和基于无HA模式的hadoop下部署相比,主要是修改hbase-site .xml文件,修改如下参数即可: <property> <name ...

  9. [hadoop][会装]hadoop ha模式安装

    1.简介 2.X版本后namenode支持了HA特性,使得整个文件系统的可用性更加增强. 2.安装前提 zookeeper集群,zookeeper的安装参考[hadoop][会装]zookeeper安 ...

随机推荐

  1. Python包中 __init__.py文件的作用

    原创连接 https://www.cnblogs.com/AlwinXu/p/5598543.html Python包中 __init__.py文件的作用 在创建python包的过程中,IDE都会在包 ...

  2. CTypes

    参考:http://docs.pythontab.com/interpy/c_extensions/ctypes/ Python中的ctypes模块可能是Python调用C方法中最简单的一种.ctyp ...

  3. 一个老鸟发的公司内部整理的 Android 学习路线图

    基础工具部分: 中文手册,我猜测是Maven中文手册,可是我并没有找到这样的资源,欢迎知道的朋友告诉我: Android部分有 『第三方库集合』,我没能找到资源地址: 书籍我大多是给的豆瓣链接,如果觉 ...

  4. redis实战笔记

    3.1 字符串命令 3.2 列表命令 3.3 集合命令 3.4散列命令 3.5有序集合命令 3.6发布与订阅命令 3.7其他命令 3.7.1 排序 3.7.2键的过期时间

  5. 20175306 MyCP博客总结

    课后必做题:MyCP总结 cp命令了解: · 作用:cp指令用于复制文件或目录,如同时指定两个以上的文件或目录,且最后的目的地是一个已经存在的目录,则它会把前面指定的所有文件或目录复制到此目录中.若同 ...

  6. E: Unable to locate package clang-7 E: Unable to locate package clang++-7 E: Couldn't find any package by regex 'clang++-7'

    我的系统是Debian 9.8, 然后在装下面这两个包的时候老是提示找不到.然后再github上一问,过了几分钟就有大佬回复了,而且亲测有效 ~$ sudo apt-get -y install cl ...

  7. SpringMVC使用CommonsMultipartResolver上传文件

    DispatcherServlet并没有实现任何解析multipart请求数据的功能,它将该任务委托给了Spring中MultipartResolver策略接口的实现,通过该接口的实现类来解析mult ...

  8. Triplet Loss(转)

    参考:https://blog.csdn.net/u013082989/article/details/83537370 作用:用于对差异较小的类别进行区分

  9. oracle 计算机改名后监听无法启动

    oracle改计算机名后,简单办法是利用oracle自带监听配置重新配置一下,或者修改host.listner.ora.tnsname.ora.我改了没起作用,原来是因为加入了域,计算机名字要全名的.

  10. 【原创】大叔经验分享(51)docker报错Exited (137)

    docker container启动失败,报错:Exited (137) *** ago,比如 Exited (137) 16 seconds ago 这时通过docker logs查不到任何日志,从 ...