Hadoop之旅(7)— HDFS HA Zookeeper自动故障转移

来源:互联网 发布:python ftp上传文件 编辑:程序博客网 时间:2024/05/16 07:09

1、HDFS HA Zookeeper自动故障转移的需求

     在 HDFS 集群下,我们知道也只有单个 NameNode 节点,虽然是集群但是也会有单节点故障等事故。所以需要一个协调者帮助我们遇到故障时及时帮助我们切换可用的 NameNode 节点。这个就是我们的需求、如果我们不需要ZK的话、搭建的HA需要我们手动切换,这是不可行的。所以我们需要 zookeeper安装与配置教程。


集群规划:



前提条件:
环境:三台虚拟机、三个zk节点(集群模式)
启动zk

2、HDFS HA配置文件


2.1、core-site.xml文件

<property><name>fs.defaultFS</name><value>hdfs://ns1</value></property><property>        <name>hadoop.tmp.dir</name>        <value>/usr/local/chenzhengyou/hadoop/cluster/data/tmp</value>    </property><!--垃圾回收箱的时间--><property><name>fs.trash.interval</name><value>640800</value></property><!--zookeeper--><property><name>ha.zookeeper.quorum</name><value>czy-1:2181,czy-2:2181,czy-3:2181</value></property>


2.2、hdfs-site.xml文件
<!-- 两个NameNode --><property><name>dfs.nameservices</name><value>ns1</value></property><property><name>dfs.ha.namenodes.ns1</name><value>nn1,nn2</value></property><!-- #####################NameNode RPC ADDRESS######################### --><property><name>dfs.namenode.rpc-address.ns1.nn1</name><value>czy-1:8020</value></property><property><name>dfs.namenode.rpc-address.ns1.nn2</name><value>czy-2:8020</value></property><!-- #####################NameNode HTTP WEB ADDRESS######################### --><property><name>dfs.namenode.http-address.ns1.nn1</name><value>czy-1:50070</value></property><property><name>dfs.namenode.http-address.ns1.nn2</name><value>czy-2:50070</value></property><!-- #####################NameNode SHARED EDITS ADDRESS######################### --><property><name>dfs.namenode.shared.edits.dir</name><value>qjournal://czy-1:8485;czy-2:8485;czy-3:8485/ns1</value></property><property><name>dfs.journalnode.edits.dir</name><value>/usr/local/chenzhengyou/hadoop/cluster/data/tmp/dfs/jn</value></property><!-- #################### HDFS PROXY client ######################### --><property><name>dfs.client.failover.proxy.provider.ns1</name><value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value></property><!-- ##################### NameNodes FENCE 隔离 ######################### --><property><name>dfs.ha.fencing.methods</name><value>sshfence</value></property><!--注意:两个NameNode之间能够ssh无密码登录--><property><name>dfs.ha.fencing.ssh.private-key-files</name><value>/root/.ssh/id_rsa</value></property><!-- #####################  automatic failover ######################### --><property><name>dfs.ha.automatic-failover.enabled</name><value>true</value></property><!--权限--><property><name>dfs.permissions</name><value>false</value>    </property>


2.3、slaves文件(三台机器的主机名)
czy-1czy-2czy-3

2.4、yarn-site.xml文件
<!--主机2 -ResourceManager --><property>        <name>yarn.resourcemanager.hostname</name>        <value>czy-2</value>    </property>    <property>        <name>yarn.nodemanager.aux-services</name>        <value>mapreduce_shuffle</value>    </property><!-- ################NodeManager Resouce#################### --><!--内存--><property>        <name>yarn.nodemanager.resource.memory-mb</name>        <value>4096</value>    </property><!--核--><property>        <name>yarn.nodemanager.resource.cpu-vcores</name>        <value>4</value>    </property>    <property>        <name>yarn.log-aggregation-enable</name>        <value>true</value>    </property><!--收回存活时间--><property>        <name>yarn.log-aggregation.retain-seconds</name>        <value>640800</value>    </property>



3、格式化 ZKFC

hdfs zkfc -formatZK 


4、启动 NameNode、DataNode、nodemanager、resourcemanager等

[root@czy-1 hadoop-2.5.0]# sbin/start-all.sh 



5、启动界面




启动 czy-1 主机是 active 节点、czy-2 主机是 standby 节点。

我们现在把 czy-1 主机上的 namenode   kill 


界面瞬间变化(瞬间的切换就降低影响









阅读全文
0 0
原创粉丝点击