Hadoop HA cluster configuration file

> 1, hadoop-env.sh configuration

export JAVA_HOME = (jdk installed)

> 2, hdfs-site.xml profile

<Logical name of the new service name>
<Property>
<name> dfs.nameservices </ name>
<value> mycluster, </ value>
</ Property>
<service name is a unique identifier for each NameNode>
<Property>
< name> dfs.ha.namenodes.mycluster </ name>
<value> Master, Slave1 </ value>
</ Property>
<namenode monitoring address of the server rpc>
<Property>
<name> dfs.namenode.rpc-address. mycluster.master </ name>
<value> Master: 50070 </ value>
</ Property>
<Property>
<name> dfs.namenode.rpc-address.mycluster.slave1 </ name>
<value> Slave1: 50070 </ value>
</ Property>
<Each listening NameNode standard HTTP address>
<Property>
<name> dfs.namenode.http-address.mycluster.master </ name>
<value> master:9000 </ value>
</ property>
<property>
<name> dfs.namenode.http-address.mycluster.slave1 </ name>
<value> slave1:9000 </ value>
</ property>
<配置JournalNodes 集群的URI>
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://master:8485;slave1:8485;slave2:8485/mycluster</value>
</property>
<配置故障转移代理类>
<property>
<name>dfs.client.failover.proxy.provider.mycluster</name>
<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>
<sshfence -SSH到Active NameNode并终止进程>
<property>
<name> dfs.ha.fencing.methods </ name>
<value> sshfence </ value>
</ property>
<property>
<name> dfs.ha.fencing.ssh.private-key-files </ name>
<value> /root/.ssh/id_rsa </ value>
</ property>
<shell-运行一个任意的shell命令来隔离Active NameNode>
<property>
<name> dfs.ha.fencing.methods </ name>
<value> shell(/bin/true)</ value>
</ property>
<journalnode日志存放路径>
<property>
<name> dfs.journalnode.edits.dir </ name>
<value>/usr/local/src/hadoop/data/journalnode/jn</ value>
</property>
<自动故障转移>
<property>
<name> dfs.ha.automatic-failover.enabled </ name>
<value> true </ value>
</ property>

> 3, core-site.xml configuration file

<指定hdfs的nameservice>
<property>
<name>fs.defaultFS</name>
<value>hdfs://mycluster</value>
</property>
<指定hadoop临时目录>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/tmp/hadoop/ha</value>
</property>
<zookeeper的地址>
<property>
<name>ha.zookeeper.quorum</name>
<value>master:2181,slave1:2181,slave2:2181</value>
</property>

> 4, mapred-site.xml configuration

<property>
<name>mapreduce.farmework.name</name>
<value>yarn</calue>
</property>

> 5, yarn-site.xml configuration

<打开高可用>
<property>
<name>yarn.resourcemanager.ha.enabled</name>
<value>true</value>
</property>
<启用自动故障转移 >
<property>
<name>yarn.resourcemanager.ha.automatic-failover.enabled</name>
<value>true</value>
</property>
<!-- 指定RM的cluster id -->
<property>
<name>yarn.resourcemanager.cluster-id</name>
<value>yarn-rm-cluster</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>master</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm2</name>
<value>server1</value>
</property>
<!-- 指定zk集群地址 -->
<property>
<name>yarn.resourcemanager.zk-address</name>
<value>master:2181,server1:2181,server2:2181</value>
</property>
<配置YARN的http端口>
<property>
<name>yarn.resourcemanager.webapp.address.rm1</name>
<value>master:8088</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address.rm2</name>
<value>slave1:8088</value>
</property>

<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>

> 6、slaves配置(DataNode)
master
slave1
slave2

Guess you like

Origin blog.51cto.com/14572091/2449158