hadoop2.7.3 HA高可用集群安装
2017-03-09 15:54
211 查看
hadoop2.7.3 HA高可用集群安装
[b]环境准备[/b]
[b]Hadoop安装配置[/b]
[b]修改配置[/b]
所有节点安装jdk1.8,ssh,配置hosts文件,配置centos680和centos681之间的互相免登陆,centos680到其他所有机器的免登陆,关闭防火墙。
在centos682,centos683,centos684上安装Zookeeper3.4.9。
复制hadoop-2.7.3.tar.gz到centos680的/opt目录下,以后所有的操作都在centos680上进行。
解压hadoop-2.7.3.tar.gz到/opt/bigdata文件夹下:tar –zxvf hadoop-2.7.3.tar.gz –C /opt/bigdata/。
ResourceManager借助zk实现热备,当某个节点失效之后另一个节点能够被通知,并接管任务。
NN必须实现共享元数据才能保证无缝切换;共享元数据可以采用Linux提供的NFS服务,也可以使用Hadoop提供的JournalNode;JournalNode采用多数派理论,保证半数以上的节点写成功即认为成功。
NN要实现自动切换(不需要手工切换),就必须实现实时监控每个节点的状态;这里采用DFSFailoverController进行监控,如果某个NN失败,其他NN能够通过ZK被通知到,并接替NN的任务。
HDFS高可用性(NameNode)
RM高可用性(ResourceManager)
Hadoop2.7.3 HA搭建步骤
hadoop-env.sh
修改JAVA_HOME
core-site.xml
hdfs-site.xml
[html] view plain copy
<property>
<name>dfs.nameservices</name>
<value>ns</value>
</property>
<property>
<name>dfs.ha.namenodes.ns</name>
<value>nn1,nn2</value>
</property>
<property>
<name>dfs.namenode.rpc-address.ns.nn1</name>
<value>centos680:9000</value>
</property>
<property>
<name>dfs.namenode.http-address.ns.nn1</name>
<value>centos680:50070</value>
</property>
<property>
<name>dfs.namenode.rpc-address.ns.nn2</name>
<value>centos681:9000</value>
</property>
<property>
<name>dfs.namenode.http-address.ns.nn2</name>
<value>centos681:50070</value>
</property>
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://zk1:8485;zk2:8485;zk3:8485/ns</value>
</property>
<property>
<name>dfs.journalnode.edits.dir</name>
<value>/opt/big/hadoop-2.7.3/journaldata</value>
</property>
<property>
<name>dfs.ha.automatic-failover.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.client.failover.proxy.provider.ns</name>
<value>
org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider
</value>
</property>
<property>
<name>dfs.ha.fencing.methods</name>
<value>
sshfence
shell(/bin/true)
</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/root/.ssh/id_rsa</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.connect-timeout</name>
<value>30000</value>
</property>
mapred-side.xml
[html] view plain copy
<span style="white-space:pre"> </span><property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
yarn-site.xml
[html] view plain copy
<configuration>
<!--开启RM高可靠-->
<property>
<name>yarn.resourcemanager.ha.enabled</name>
<value>true</value>
</property>
<!--指定RM的cluster id -->
<property>
<name>yarn.resourcemanager.cluster-id</name>
<value>yrc</value>
</property>
<!--指定RM的名字-->
<property>
<name>yarn.resourcemanager.ha.rm-ids</name>
<value>rm1,rm2</value>
</property>
<!--分别指定RM的地址-->
<property>
<name>yarn.resourcemanager.hostname.rm1</name>
<value>h0</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm2</name>
<value>h1</value>
</property>
<!--指定zk集群地址-->
<property>
<name>yarn.resourcemanager.zk-address</name>
<value>h2:2181,h3:2181,h4:2181</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
slaves
分发到其他节点(在centos680上操作)
scp -r /opt/bigdata/hadoop-2.7.3/ h1:/opt/bigdata/
scp -r /opt/bigdata/hadoop-2.7.3/ h2:/opt/bigdata/
scp -r /opt/bigdata/hadoop-2.7.3/ h3:/opt/bigdata/
scp -r /opt/bigdata/hadoop-2.7.3/ h4:/opt/bigdata/
到h2,h3,h4启动所有的Zookeeper。
到h2,h3,h4启动JournalNode(hadoop-daemon.sh start journalnode)
到centos680上执行格式化namenode(hdfs namenode -format),并将格式化后的元数据内容复制到另外一个namenode节点中(h1):scp -r tmp/ h1:/opt/bigdata/hadoop-2.7.3/(tmp是在core-site中配置的namenode元数据应该所处的位置)
格式化zk:bin/hdfs zkfc –formatZK。该操作在Zookeeper中创建了数据节点:
初始化和启动
启动dfs和yarn
sbin/start-dfs.sh
sbin/start-yarn.sh
验证
通过杀死active的namenode进程或者关闭namenode所在机器来验证切换情况。
[b]环境准备[/b]
[b]Hadoop安装配置[/b]
[b]修改配置[/b]
所有节点安装jdk1.8,ssh,配置hosts文件,配置centos680和centos681之间的互相免登陆,centos680到其他所有机器的免登陆,关闭防火墙。
在centos682,centos683,centos684上安装Zookeeper3.4.9。
复制hadoop-2.7.3.tar.gz到centos680的/opt目录下,以后所有的操作都在centos680上进行。
解压hadoop-2.7.3.tar.gz到/opt/bigdata文件夹下:tar –zxvf hadoop-2.7.3.tar.gz –C /opt/bigdata/。
ResourceManager借助zk实现热备,当某个节点失效之后另一个节点能够被通知,并接管任务。
NN必须实现共享元数据才能保证无缝切换;共享元数据可以采用Linux提供的NFS服务,也可以使用Hadoop提供的JournalNode;JournalNode采用多数派理论,保证半数以上的节点写成功即认为成功。
NN要实现自动切换(不需要手工切换),就必须实现实时监控每个节点的状态;这里采用DFSFailoverController进行监控,如果某个NN失败,其他NN能够通过ZK被通知到,并接替NN的任务。
HDFS高可用性(NameNode)
RM高可用性(ResourceManager)
Hadoop2.7.3 HA搭建步骤
hadoop-env.sh
修改JAVA_HOME
core-site.xml
hdfs-site.xml
[html] view plain copy
<property>
<name>dfs.nameservices</name>
<value>ns</value>
</property>
<property>
<name>dfs.ha.namenodes.ns</name>
<value>nn1,nn2</value>
</property>
<property>
<name>dfs.namenode.rpc-address.ns.nn1</name>
<value>centos680:9000</value>
</property>
<property>
<name>dfs.namenode.http-address.ns.nn1</name>
<value>centos680:50070</value>
</property>
<property>
<name>dfs.namenode.rpc-address.ns.nn2</name>
<value>centos681:9000</value>
</property>
<property>
<name>dfs.namenode.http-address.ns.nn2</name>
<value>centos681:50070</value>
</property>
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://zk1:8485;zk2:8485;zk3:8485/ns</value>
</property>
<property>
<name>dfs.journalnode.edits.dir</name>
<value>/opt/big/hadoop-2.7.3/journaldata</value>
</property>
<property>
<name>dfs.ha.automatic-failover.enabled</name>
<value>true</value>
</property>
<property>
<name>dfs.client.failover.proxy.provider.ns</name>
<value>
org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider
</value>
</property>
<property>
<name>dfs.ha.fencing.methods</name>
<value>
sshfence
shell(/bin/true)
</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/root/.ssh/id_rsa</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.connect-timeout</name>
<value>30000</value>
</property>
mapred-side.xml
[html] view plain copy
<span style="white-space:pre"> </span><property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
yarn-site.xml
[html] view plain copy
<configuration>
<!--开启RM高可靠-->
<property>
<name>yarn.resourcemanager.ha.enabled</name>
<value>true</value>
</property>
<!--指定RM的cluster id -->
<property>
<name>yarn.resourcemanager.cluster-id</name>
<value>yrc</value>
</property>
<!--指定RM的名字-->
<property>
<name>yarn.resourcemanager.ha.rm-ids</name>
<value>rm1,rm2</value>
</property>
<!--分别指定RM的地址-->
<property>
<name>yarn.resourcemanager.hostname.rm1</name>
<value>h0</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm2</name>
<value>h1</value>
</property>
<!--指定zk集群地址-->
<property>
<name>yarn.resourcemanager.zk-address</name>
<value>h2:2181,h3:2181,h4:2181</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
slaves
分发到其他节点(在centos680上操作)
scp -r /opt/bigdata/hadoop-2.7.3/ h1:/opt/bigdata/
scp -r /opt/bigdata/hadoop-2.7.3/ h2:/opt/bigdata/
scp -r /opt/bigdata/hadoop-2.7.3/ h3:/opt/bigdata/
scp -r /opt/bigdata/hadoop-2.7.3/ h4:/opt/bigdata/
到h2,h3,h4启动所有的Zookeeper。
到h2,h3,h4启动JournalNode(hadoop-daemon.sh start journalnode)
到centos680上执行格式化namenode(hdfs namenode -format),并将格式化后的元数据内容复制到另外一个namenode节点中(h1):scp -r tmp/ h1:/opt/bigdata/hadoop-2.7.3/(tmp是在core-site中配置的namenode元数据应该所处的位置)
格式化zk:bin/hdfs zkfc –formatZK。该操作在Zookeeper中创建了数据节点:
初始化和启动
启动dfs和yarn
sbin/start-dfs.sh
sbin/start-yarn.sh
验证
通过杀死active的namenode进程或者关闭namenode所在机器来验证切换情况。
相关文章推荐
- hadoop2.7.3 HA高可用集群安装
- hadoop2.7.3 HA高可用集群安装
- 最新Hadoop-2.7.2+hbase-1.2.0+zookeeper-3.4.8 HA高可用集群配置安装
- Hadoop 2.0 HA高可用集群安装配置
- 最新Hadoop-2.7.2+hbase-1.2.0+zookeeper-3.4.8 HA高可用集群配置安装
- Hadoop 2.6.0+ZooKeeper+Hive HA高可用集群安装
- hadoop 2.7.3 HA 安装指南
- 一步一步安装hadoop2.7.1 HA
- Alex 的 Hadoop 菜鸟教程: 第3课 Hadoop 安装教程 - 非HA方式 (一台服务器)
- hadoop2.4 ha(双namenode自动故障转移安装)
- hadoop多机安装HA+YARN
- 大数据系列教程_hadoop集群安装(对hdfs及resourcemanager做了HA)
- Alex 的 Hadoop 菜鸟教程: 第4课 Hadoop 安装教程 - HA方式 (2台服务器)
- Hadoop 2.2.0 4结点集群安装 非HA
- 用虚拟机安装、启动、停用hadoop2.6.0(实现hdfsHA和ResourceManagerHA)步骤小记
- Hadoop2.2.0-HA高可用集群环境搭建
- Hadoop2.6+HA+Zookeeper3.4.6+Hbase1.0.0安装
- Hadoop2的HA安装(high availability):JournalNode+ zookeeper
- Hadoop2的HA安装(high availability):JournalNode+ zookeeper
- spark 1.1.0 on hadoop 2.4.1 安装笔记 (resourcemanager ha 支持)