`
hongs_yang
  • 浏览: 61095 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

hadoop ha配置

阅读更多

HADOOP HA配置

hadoop2.xha配置,此文档中描述有hdfsyarnha配置。

此文档的假定条件是zk已经安装并配置完成,其实也没什么安装的。

hdfs ha配置

首先,先配置core-site.xml配置文件:

<property>

在老版本中使用mr1,还可能使用fs.default.name来进行配置

  <name>fs.defaultFS</name>

此处配置的mycluster目前还没有定义,我们需要记住这个值,

这个表示此namenodenameServiceId,hdfs-site中定义,此处进行引用

  <value>hdfs://mycluster</value>

</property>

接下来,配置当namenode发生切换时的检查方法,当NAMENODE切换时,

需要检查并确保只有一个active节点。

因此会通过SHELLSSH的方式过去强制中止或执行检查

<property>
  <name>dfs.ha.fencing.methods</name>
此处的可配置值sshfence/shell
  <value>sshfence</value>
</property>
 
<property>
  <name>dfs.ha.fencing.ssh.private-key-files</name>
  <value>/root/.ssh/id_rsa</value>
</property>

配置ha连接的zk的连接地址,

<property>
  <name>ha.zookeeper.quorum</name>
  <value>one.cluster:2181,two.cluster:2181,three.cluster:2181</value>
</property>

还可以有如下几个配置:

ha.zookeeper.session-timeout.mszksession超时时间,默认是5000ms

ha.zookeeper.parent-znodehdfshazk上的存储路径, 默认是/hadoop-ha

<!--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"> <v:stroke joinstyle="miter"/> <v:formulas> <v:f eqn="if lineDrawn pixelLineWidth 0"/> <v:f eqn="sum @0 1 0"/> <v:f eqn="sum 0 0 @1"/> <v:f eqn="prod @2 1 2"/> <v:f eqn="prod @3 21600 pixelWidth"/> <v:f eqn="prod @3 21600 pixelHeight"/> <v:f eqn="sum @0 0 1"/> <v:f eqn="prod @6 1 2"/> <v:f eqn="prod @7 21600 pixelWidth"/> <v:f eqn="sum @8 21600 0"/> <v:f eqn="prod @7 21600 pixelHeight"/> <v:f eqn="sum @10 21600 0"/> </v:formulas> <v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect"/> <o:lock v:ext="edit" aspectratio="t"/> </v:shapetype><v:shape id="图片_x0020_1" o:spid="_x0000_i1025" type="#_x0000_t75" style='width:426.75pt;height:283.5pt;visibility:visible;mso-wrap-style:square'> <v:imagedata src="file:///C:\Users\ADMINI~1\AppData\Local\Temp\msohtmlclip1\01\clip_image001.png" o:title=""/> </v:shape><![endif]--><!--[if !vml]--><!--[endif]-->

 

接下来对hdfs-site.xml进行配置

定义上面提到过的nameserviceid的值,

<property>
  <name>dfs.nameservices</name>
此处对当前配置的hanameserviceid进行定义,此处的mycluster中间不能使用"_"线
  <value>mycluster</value>
</property>

 

接下来定义nameserviceid中需要使用到的namenodeid,

<property>
  <name>dfs.ha.namenodes.mycluster</name>
此处定义了两个namenodeid,也就是需要配置两具namenode,id分别是nn1nn2
  <value>nn1,nn2</value>
</property>

在定义完成需要的namenode id后,

需要针对每一个namenode,定义其相关的rpc,http地址。

如果有启用https,还需要设置https-address

此处的配置通过nameserviceid.namenodeid来进行配置。

<property>
  <name>dfs.namenode.rpc-address.mycluster.nn1</name>
  <value>one.cluster:8020</value>
</property>
<property>
  <name>dfs.namenode.rpc-address.mycluster.nn2</name>
  <value>two.cluster:8020</value>
</property>
<property>
  <name>dfs.namenode.http-address.mycluster.nn1</name>
  <value>one.cluster:50070</value>
</property>
<property>
  <name>dfs.namenode.http-address.mycluster.nn2</name>
  <value>two.cluster:50070</value>
</property>

 

 

 

 

接下来配置namenode edits的共享存储,在这里使用QJM来进行配置:

qjm是一个很轻量的进程,可以直接部署到namenodedatanode中。

qjm的默认rpc端口是8485,默认http端口是8480,

可通过配置dfs.journalnode.rpc-addressdfs.journalnode.http-address来修改端口。

qjm必须配置为单数个(N),可以保证在(N-1)/2个正常运行时,能够正常提供服务。

<property>
  <name>dfs.namenode.shared.edits.dir</name>
  <value>qjournal://one.cluster:8485;two.cluster:8485;three.cluster:8485/mycluster</value>
</property>

配置QJM的存储路径

<property>
  <name>dfs.journalnode.edits.dir</name>
  <value>/data/1/dfs/jn</value>
</property>

设置针对此nameserviceid的客户端代理:

client请求时通过nameserviceid来做请求,

nameserviceid解析出对应的active namenode就通过此配置中的java类来完成。

<property>
  <name>dfs.client.failover.proxy.provider.mycluster</name>
  <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>

 

 

 

接下来配置namenode的自动故障转换。

<property>
  <name>dfs.ha.automatic-failover.enabled</name>
  <value>true</value>
</property>

 

把配置文件复制到所有的节点中。这个不能忘呀。

在配置有QJM的节点中启动QJM.

进入hadooop_home/sbin目录

./hadoop-daemon.sh start journalnode

 

进入hadoop_home/bin目录下,执行./hdfs zkfc -formatZKzk上进行格式化

namenode进行format操作:

进入hadoop_home/bin目录,并执行如下命令

执行./hadoop namenode -format -clusterid hacluster命令。

./hdfs namenode -initializeSharedEdits

接下来启动主的namenode, 进入hadooop_home/sbin目录,执行如下命令

./hadoop-daemon.sh start namenode

赶往standbynamenode节点,

进入hadoop_home/bin目录,执行如下命令:

./hdfs namenode -bootstrapStandby

 

启动standby namenode,进入hadooop_home/sbin目录,执行如下命令

./hadoop-daemon.sh start namenode

接下来启动各个datanode节点。

./hadoop-daemon.sh start datanode

最后一步,启动zkfc,自动切换namenode节点的服务。

因为此时两个namenode都是standby的状态,需要启动zkfc来实现切换。

在主namenodestandbynamenode中进行hadoop_home/sbin目录。并执行如下命令

./hadoop-daemon.sh start zkfc

the end.

 

YARN RMHA配置

配置yarnresourcemanagerHA只有在hadoop2.3.x后才引进,

yarnha配置相对简单,直接配置yarn-site.xml文件

<property>
rm连接失败的重试间隔
    <name>yarn.resourcemanager.connect.retry-interval.ms</name>
    <value>2000</value>
  </property>
<property>
是否启用ha配置,默认是false.
    <name>yarn.resourcemanager.ha.enabled</name>
    <value>true</value>
  </property>
<property>
启动自动故障转移,默认为false
    <name>yarn.resourcemanager.ha.automatic-failover.enabled</name>
    <value>true</value>
  </property>
<property>
启用一个内嵌的故障转移,与ZKRMStateStore一起使用。
    <name>yarn.resourcemanager.ha.automatic-failover.embedded</name>
    <value>true</value>
  </property>
<property>
    <name>yarn.resourcemanager.cluster-id</name>
    <value>rm-cluster</value>
  </property>
<property>
    <name>yarn.resourcemanager.ha.rm-ids</name>
    <value>rm1,rm2</value>
  </property>
<property>
配置当前的rm节点,这个地方要注意,在rm1这个机器上时,配置为rm1
rm2这台机器上时,需要配置为rm2.它们之间通过zk来实现active操作
    <name>yarn.resourcemanager.ha.id</name>
    <value>rm1</value>
  </property>
<property>
    <name>yarn.resourcemanager.recovery.enabled</name>
    <value>true</value>
  </property>
<property>
HA时,RMStateStore需要配置为这个值。
    <name>yarn.resourcemanager.store.class</name>
 <value>org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore</value>
  </property>
<property>
配置与zk的连接地址
    <name>yarn.resourcemanager.zk.state-store.address</name>
    <value>localhost:2181</value>
  </property>
<property>
  <name>yarn.resourcemanager.zk-address</name>
  <value>localhost:2181</value>
</property>
<!-- RM1 configs -->
  <property>
    <name>yarn.resourcemanager.address.rm1</name>
    <value>host1:23140</value>
  </property>
  <property>
    <name>yarn.resourcemanager.scheduler.address.rm1</name>
    <value>host1:23130</value>
  </property>
  <property>
    <name>yarn.resourcemanager.webapp.https.address.rm1</name>
    <value>host1:23189</value>
  </property>
  <property>
    <name>yarn.resourcemanager.webapp.address.rm1</name>
    <value>host1:23188</value>
  </property>
  <property>
    <name>yarn.resourcemanager.resource-tracker.address.rm1</name>
    <value>host1:23125</value>
  </property>
  <property>
    <name>yarn.resourcemanager.admin.address.rm1</name>
    <value>host1:23141</value>
  </property>
<!-- RM2 configs -->
  <property>
    <name>yarn.resourcemanager.address.rm2</name>
    <value>host2:23140</value>
  </property>
  <property>
    <name>yarn.resourcemanager.scheduler.address.rm2</name>
    <value>host2:23130</value>
  </property>
  <property>
    <name>yarn.resourcemanager.webapp.https.address.rm2</name>
    <value>host2:23189</value>
  </property>
  <property>
    <name>yarn.resourcemanager.webapp.address.rm2</name>
    <value>host2:23188</value>
  </property>
  <property>
    <name>yarn.resourcemanager.resource-tracker.address.rm2</name>
    <value>host2:23125</value>
  </property>
  <property>
    <name>yarn.resourcemanager.admin.address.rm2</name>
    <value>host2:23141</value>
  </property>
 
 

启动yarn的各节点,

 

在主的resourcemanagerstandbyresourcemanager中执行

yarn-daemon.sh start resourcemanager

nodemanager中执行

yarn-daemon.sh start nodemanager

 

 

0
0
分享到:
评论

相关推荐

    HadoopHA配置文件.rar

    本文件"**HadoopHA配置文件.rar**"包含了实现Hadoop HA所需的一些核心配置,主要包括`core-site.xml`、`hdfs-site.xml`、`mapred-site.xml`和`yarn-site.xml`,以及`slaves`文件。以下将详细解析这些配置文件中的...

    HadoopHA集群配置文件

    本文将深入探讨Hadoop HA(高可用性)集群的配置文件,包括`core-site.xml`、`hdfs-site.xml`、`mapred-site.xml`、`yarn-site.xml`以及`slaves`文件,这些都是确保Hadoop集群稳定运行的基础。 1. `core-site.xml`:...

    hadoop HA配置文件.zip

    本压缩包“hadoop HA配置文件.zip”包含了实现Hadoop HA所需的核心配置文件,包括`core-site.xml`, `hdfs-site.xml`, `yarn-site.xml`和`mapred-site.xml`。这些配置文件用于定义Hadoop集群的各个组件的行为和设置,...

    Hadoop HA配置

    Hadoop HA配置知识点详解: 一、Hadoop HA概述 Hadoop HA(High Availability)即高可用配置,是一种确保Hadoop集群中 Namenode高可靠性的解决方案。Hadoop 2.0.0版本之前,HDFS集群中只有一个NameNode,如果...

    hadoop ha 配置

    在大型集群中,为了确保高可用性(HA),Hadoop引入了HA配置,以防止单点故障。本文将深入探讨"Hadoop HA配置"的相关知识点,并结合`yarn-site.xml`、`hdfs-site.xml`和`core-site.xml`这三个关键配置文件进行详细...

    Hadoop(HA)高可用配置文件

    详细的 hadoop (HA)高可用配置文件内容,以及注释摘要。四个配置文件详细内容。

    hadoopHA配置.txt

    hadoop的ha配置过程,亲自搭建测试过,hdfs和yarn的HA都完美运行,mapreduce提交到集群中也运行成功。

    HadoopHA集群部署、HDFSHA配置、启动与验证教学课件.pptx

    在构建高可用(HA)Hadoop集群时,HDFS(Hadoop Distributed File System)HA配置是关键步骤,目的是确保即使NameNode节点发生故障,数据访问和服务也不会中断。本教程将详细讲解如何配置、启动和验证Hadoop HA集群...

    hadoop HA高可用性完全分布式集群安装

    #### Hadoop HA配置步骤 1. **修改Hadoop配置文件**: - 修改`core-site.xml`,设置HDFS相关的路径。 - 修改`hdfs-site.xml`,配置NameNode的地址信息以及JournalNode的相关参数。 - 修改`yarn-site.xml`,配置...

    Hadoop HA高可用详细配置,100分也不贵

    为了实现Hadoop HA配置,需要规划好各个节点的角色,包括Namenode、Datanode、Zookeeper等服务。以下分别给出10台、8台和5台机器的方案示例: - **10台方案**:可以根据实际情况将机器分为两组,每组5台,一组用于...

    HadoopHA集群部署、YARNHA配置、启动与验证教学课件.pptx

    【YARN HA配置】是指在YARN(Yet Another Resource Negotiator)中实现高可用性,以防止ResourceManager (RM) 单点故障导致整个YARN服务中断。ResourceManager是YARN的核心组件,负责调度和管理集群资源。YARN HA通过...

    基于zookeeper的hadoop ha集群安装过程

    4. 配置Hadoop HA集群,以实现高可用性和可扩展性。 在安装过程中,需要注意以下几点: * 需要确保ZooKeeper集群的高可用性,以便于Hadoop HA集群的正常运行。 * 需要确保Hadoop NameNode和DataNode的高可用性,以...

    Hadoop HA搭建笔记和配置文件

    本笔记将深入探讨如何搭建Hadoop HA环境,并分享配置文件及其详细解读。 首先,我们要理解Hadoop HA的基本概念。HA主要涉及到两个关键组件:NameNode和ResourceManager。NameNode是HDFS的元数据管理节点,而...

    配hadoopHA最怕就是配置文件错了

    标题提到的“配Hadoop HA最怕就是配置文件错了”,意味着配置Hadoop HA时,配置文件的正确性至关重要。这里我们将深入探讨Hadoop HA的配置要点,以及如何避免配置错误。 首先,Hadoop HA主要涉及NameNode的HA,即两...

    Hadoop2的HA配置一键运行脚本startall

    【标签】"HadoopHA"强调了这个话题的重点是Hadoop的高可用性特性。Hadoop HA通过增加一个备用NameNode,确保在主NameNode出现故障时,数据访问和服务不中断,提高了整个Hadoop集群的稳定性。 【压缩包子文件的文件...

    hadoopHA搭建资源包

    2. **安装Hadoop**:解压Hadoop安装包,根据集群规模配置Hadoop的`core-site.xml`、`hdfs-site.xml`、`yarn-site.xml`和`mapred-site.xml`等配置文件,设置HA相关参数,如`ha.zookeeper.quorum`(ZooKeeper服务器...

    第5章-Hadoop HA集群配置.pdf

    Hadoop HA 集群配置 本章节将详细介绍 Hadoop HA 集群配置的实验步骤,包括高可用 ZooKeeper 集群的部署、配置和启动。整个实验过程共分为三个部分:实验一:高可用 ZooKeeper 集群部署、实验二:Hadoop HA 集群...

    Hadoop HA.pdf

    4. 配置Hadoop HA:在每个容器中,需要配置Hadoop HA,包括配置NameNode、配置DataNode、配置ZooKeeper等步骤。 Hadoop HA的优点: 1. 高可用性:Hadoop HA可以避免单点故障对系统的影响,确保集群的运行不中断。 ...

    自己总结的hadoop HA安装流程

    四、配置Hadoop HA 1. 配置core-site.xml: - 设置默认文件系统为HDFS的HA模式,如`fs.defaultFS=hdfs://hacluster`。 - 指定临时目录,如`hadoop.tmp.dir=/hadoop/tmp`。 2. 配置hdfs-site.xml: - 配置...

    Hadoop HA(QJM)高可集群性配置

    Hadoop高可用性(HA)集群配置是一种为了应对Hadoop分布式文件系统(HDFS)中单点故障问题而设计的高可靠配置方案。在该方案中,原本单一的NameNode被两个或多个NameNode替代,以实现热备和故障自动切换的功能,以确保在...

Global site tag (gtag.js) - Google Analytics