关键词:本文围绕CentOS7 Hadoop HA、Hadoop高可用部署、Hadoop集群搭建和Hadoop HA配置展开,确保你能够掌握核心要点,从零开始构建可靠的大数据平台。

我们使用三台CentOS7服务器,主机名分别为hadoop1、hadoop2、hadoop3。内存建议4GB+,硬盘40GB+。以下操作所有节点均需执行,除非特别说明。
配置静态IP,并修改主机名:
# 设置主机名(分别执行)hostnamectl set-hostname hadoop1 # hadoop2/hadoop3类似编辑/etc/hosts,添加:
192.168.1.101 hadoop1192.168.1.102 hadoop2192.168.1.103 hadoop3systemctl stop firewalld && systemctl disable firewalldsetenforce 0sed -i "s/^SELINUX=.*/SELINUX=disabled/" /etc/selinux/config下载Oracle JDK 8,解压并设置JAVA_HOME。此处以/usr/local/java为例:
tar -zxf jdk-8u202-linux-x64.tar.gz -C /usr/local/echo "export JAVA_HOME=/usr/local/jdk1.8.0_202" >> /etc/profileecho "export PATH=$JAVA_HOME/bin:$PATH" >> /etc/profilesource /etc/profile在hadoop1上生成密钥,并复制到所有节点:
ssh-keygen -t rsa -P ""ssh-copy-id hadoop1ssh-copy-id hadoop2ssh-copy-id hadoop3测试免密登录:ssh hadoop2 无需密码即成功。
ZooKeeper是Hadoop HA的必要组件,用于管理NameNode和ResourceManager的选举。下载ZooKeeper 3.4.14,并配置:
tar -zxf zookeeper-3.4.14.tar.gz -C /usr/local/cd /usr/local/zookeeper-3.4.14cp conf/zoo_sample.cfg conf/zoo.cfgmkdir -p /data/zookeeper编辑conf/zoo.cfg,添加:
dataDir=/data/zookeeperserver.1=hadoop1:2888:3888server.2=hadoop2:2888:3888server.3=hadoop3:2888:3888在每个节点创建/data/zookeeper/myid文件,内容为对应ID(1,2,3)。启动ZooKeeper:
/usr/local/zookeeper-3.4.14/bin/zkServer.sh start检查状态:/usr/local/zookeeper-3.4.14/bin/zkServer.sh status,应有Leader和Follower。
下载Hadoop 3.3.6(或3.x),解压到/usr/local/hadoop。配置环境变量。以下重点配置核心文件。
fs.defaultFS hdfs://mycluster ha.zookeeper.quorum hadoop1:2181,hadoop2:2181,hadoop3:2181 dfs.nameservices mycluster dfs.ha.namenodes.mycluster nn1,nn2 dfs.namenode.rpc-address.mycluster.nn1 hadoop1:8020 dfs.namenode.rpc-address.mycluster.nn2 hadoop2:8020 dfs.namenode.http-address.mycluster.nn1 hadoop1:9870 dfs.namenode.http-address.mycluster.nn2 hadoop2:9870 dfs.namenode.shared.edits.dir qjournal://hadoop1:8485;hadoop2:8485;hadoop3:8485/mycluster dfs.journalnode.edits.dir /data/journalnode dfs.ha.automatic-failover.enabled true dfs.client.failover.proxy.provider.mycluster org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider yarn.resourcemanager.ha.enabled true yarn.resourcemanager.cluster-id yarn-ha-cluster yarn.resourcemanager.ha.rm-ids rm1,rm2 yarn.resourcemanager.hostname.rm1 hadoop1 yarn.resourcemanager.hostname.rm2 hadoop2 yarn.resourcemanager.zk-address hadoop1:2181,hadoop2:2181,hadoop3:2181 mapreduce.framework.name yarn 将配置好的Hadoop目录同步到其他节点(可使用scp或rsync)。
按顺序执行以下命令:
/usr/local/zookeeper-3.4.14/bin/zkServer.sh starthdfs --daemon start journalnodehdfs namenode -formathdfs --daemon start namenodehdfs namenode -bootstrapStandbyhdfs zkfc -formatZKhdfs --daemon start namenode,所有节点执行hdfs --daemon start datanodeyarn --daemon start resourcemanager,所有节点启动NodeManager yarn --daemon start nodemanager也可以使用脚本start-dfs.sh和start-yarn.sh,但需确保配置正确且免密。
访问NameNode Web UI: http://hadoop1:9870 和 http://hadoop2:9870,确认一个是active,一个是standby。使用命令查看:
hdfs haadmin -getServiceState nn1hdfs haadmin -getServiceState nn2模拟故障:kill掉active NameNode进程,观察standby是否自动切换为active。同样,YARN ResourceManager也可通过yarn rmadmin -getServiceState rm1验证。
至此,一个完整的Hadoop高可用集群部署完成。通过本教程,你不仅学会了CentOS7 Hadoop HA的搭建,还掌握了Hadoop高可用部署的核心配置。生产环境中可适当调整参数如内存、目录路径等。
更多关于Hadoop集群搭建和Hadoop HA配置的细节,请参考官方文档或留言交流。
本文由主机测评网于2026-02-23发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://vpshk.cn/20260226847.html