2024年大数据最全hadoop3分布式基本部署_hadoop3 双namenode 部署,2024年最新12个View绘制流程高频面试题
在Hadoop 3中,可以通过配置两个独立的NameNode来实现双NameNode的部署,这通常被称为"HDFS HA"(High Availability)。以下是部署双NameNode的基本步骤:
- 配置
core-site.xml
,设置ZooKeeper集群作为协调服务。 - 配置
hdfs-site.xml
,设置NameNodes和JournalNodes。 - 配置
mapred-site.xml
(如果使用MapReduce),指定ResourceManager的高可用性。 - 配置
yarn-site.xml
,设置YARN ResourceManager的高可用性。 - 配置
hadoop-env.sh
,设置JAVA\_HOME环境变量。
以下是示例配置:
core-site.xml
:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>viewfs://mycluster</value>
</property>
<property>
<name>ha.zookeeper.quorum</name>
<value>zk1.example.com:2181,zk2.example.com:2181,zk3.example.com:2181</value>
</property>
</configuration>
hdfs-site.xml
:
<configuration>
<property>
<name>dfs.nameservices</name>
<value>mycluster</value>
</property>
<property>
<name>dfs.ha.namenodes.mycluster</name>
<value>nn1,nn2</value>
</property>
<property>
<name>dfs.namenode.rpc-address.mycluster.nn1</name>
<value>nn1.example.com:8020</value>
</property>
<property>
<name>dfs.namenode.rpc-address.mycluster.nn2</name>
<value>nn2.example.com:8020</value>
</property>
<property>
<name>dfs.namenode.http-address.mycluster.nn1</name>
<value>nn1.example.com:9870</value>
</property>
<property>
<name>dfs.namenode.http-address.mycluster.nn2</name>
<value>nn2.example.com:9870</value>
</property>
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://jn1.example.com:8485;jn2.example.com:8485;jn3.example.com:8485/mycluster</value>
</property>
<property>
<name>dfs.client.failover.proxy.provider.mycluster</name>
<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>
<property>
<name>dfs.ha.fencing.methods</name>
<value>sshfence</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/home/example/.ssh/id_rsa</value>
</property>
<property>
<name>dfs.journalnode.edits.dir</name>
<value>/path/to/journal/node/local/data</value>
</property>
</configuration>
mapred-site.xml
(如果使用MapReduce):
<configuration>
<property>
<name>mapreduce.framework.name</name>
<
评论已关闭