HADOOP HA配置
hadoop2.x的ha配置,此文档中描述有hdfs与yarn的ha配置。
此文档的假定条件是zk已经安装并配置完成,其实也没什么安装的。
hdfs ha配置
首先,先配置core-site.xml配置文件:
<property>
在老版本中使用mr1时,还可能使用fs.default.name来进行配置
<name>fs.defaultFS</name>
此处配置的mycluster目前还没有定义,我们需要记住这个值,
这个表示此namenode的nameServiceId,在hdfs-site中定义,此处进行引用
<value>hdfs://mycluster</value>
</property>
接下来,配置当namenode发生切换时的检查方法,当NAMENODE切换时,
需要检查并确保只有一个active节点。
因此会通过SHELL或SSH的方式过去强制中止或执行检查
<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.ms,zk的session超时时间,默认是5000ms
ha.zookeeper.parent-znode,hdfs的ha在zk上的存储路径 ,默认是/hadoop-ha
接下来对hdfs-site.xml进行配置
定义上面提到过的nameserviceid的值,
<property>
<name>dfs.nameservices</name>
此处对当前配置的ha的nameserviceid进行定义,此处的mycluster中间不能使用"_"线
<value>mycluster</value>
</property>
接下来定义nameserviceid中需要使用到的namenode的id,
<property>