首页/新闻资讯/正文详情

Hadoop 3.x完全分布式集群搭建与配置实战指南

发布时间:2026/11/7 18:56:48 来源:云帆数科 栏目:资讯中心
Hadoop 3.x完全分布式集群搭建与配置实战指南
1. 项目概述赫兹威客完全分布式Hadoop测试教程这个标题背后实际上是一个面向大数据开发初学者的实战指南。作为一名经历过无数次Hadoop集群搭建的老手我深知完全分布式环境配置过程中的各种坑。本文将带你从零开始手把手搭建一个真正可用的Hadoop 3.x完全分布式集群涵盖HDFS和YARN的核心配置要点。完全分布式与伪分布式最大的区别在于所有服务都运行在不同的物理节点上更接近生产环境。这对于想要真正掌握Hadoop集群管理的人来说是必经之路。我们将使用3台Ubuntu服务器作为实验环境1个NameNode 2个DataNode这种配置既能体现分布式特性又不会对硬件资源要求过高。2. 环境准备与基础配置2.1 硬件与系统要求建议使用以下配置最低要求3台Ubuntu 20.04 LTS服务器或虚拟机每台至少2核CPU/4GB内存/20GB存储所有节点在同一局域网内互相能ping通关闭所有节点的防火墙生产环境需单独配置安全组注意虚拟机环境下务必确保所有节点的时钟同步否则可能导致HDFS异常。建议安装ntp服务sudo apt update sudo apt install -y ntp2.2 系统级前置配置在所有节点上执行以下操作修改主机名并配置hosts文件# 在NameNode上 sudo hostnamectl set-hostname namenode # 在DataNode1上 sudo hostnamectl set-hostname datanode1 # 在DataNode2上 sudo hostnamectl set-hostname datanode2编辑/etc/hosts所有节点相同配置192.168.1.100 namenode 192.168.1.101 datanode1 192.168.1.102 datanode2配置SSH免密登录NameNode到所有DataNode# 在NameNode上生成密钥 ssh-keygen -t rsa -P -f ~/.ssh/id_rsa # 将公钥拷贝到各节点包括自己 ssh-copy-id namenode ssh-copy-id datanode1 ssh-copy-id datanode23. Hadoop安装与配置3.1 软件包准备建议使用国内镜像下载Hadoop官方源速度较慢wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.3.4/hadoop-3.3.4.tar.gz tar -xzvf hadoop-3.3.4.tar.gz -C /opt/ mv /opt/hadoop-3.3.4 /opt/hadoop3.2 核心配置文件修改需要配置以下5个关键文件路径/opt/hadoop/etc/hadoop/hadoop-env.shexport JAVA_HOME/usr/lib/jvm/java-8-openjdk-amd64 export HDFS_NAMENODE_USERroot export HDFS_DATANODE_USERroot export HDFS_SECONDARYNAMENODE_USERroot export YARN_RESOURCEMANAGER_USERroot export YARN_NODEMANAGER_USERrootcore-site.xmlconfiguration property namefs.defaultFS/name valuehdfs://namenode:9000/value /property property namehadoop.tmp.dir/name value/opt/hadoop/tmp/value /property /configurationhdfs-site.xmlconfiguration property namedfs.replication/name value2/value /property property namedfs.namenode.name.dir/name value/opt/hadoop/hdfs/namenode/value /property property namedfs.datanode.data.dir/name value/opt/hadoop/hdfs/datanode/value /property /configurationyarn-site.xmlconfiguration property nameyarn.nodemanager.aux-services/name valuemapreduce_shuffle/value /property property nameyarn.resourcemanager.hostname/name valuenamenode/value /property /configurationmapred-site.xmlconfiguration property namemapreduce.framework.name/name valueyarn/value /property /configuration3.3 节点角色分配在workers文件中指定DataNode节点datanode1 datanode24. 集群启动与验证4.1 格式化HDFS仅在首次启动时执行在NameNode上hdfs namenode -format4.2 启动集群启动HDFSstart-dfs.sh启动YARNstart-yarn.sh4.3 服务验证检查进程是否正常# NameNode上应有 # NameNode # ResourceManager # DataNode上应有 # DataNode # NodeManager访问Web UIHDFS: http://namenode:9870YARN: http://namenode:8088运行测试作业hadoop jar /opt/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.4.jar pi 10 1005. 常见问题排查5.1 SSH连接问题症状启动时提示Permission denied 解决# 检查authorized_keys权限 chmod 600 ~/.ssh/authorized_keys chmod 700 ~/.ssh # 检查sshd配置 sudo vi /etc/ssh/sshd_config # 确保有以下配置 PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys5.2 端口冲突症状服务启动失败日志显示端口被占用 解决# 查找占用端口的进程 netstat -tulnp | grep 9000 # 修改hadoop配置中使用其他端口5.3 磁盘空间不足症状DataNode启动后自动关闭 解决# 检查磁盘空间 df -h # 修改hdfs-site.xml中的存储路径 property namedfs.datanode.data.dir/name value/data/hadoop/datanode/value /property6. 性能调优建议6.1 内存配置调整根据服务器实际内存修改yarn-site.xmlproperty nameyarn.nodemanager.resource.memory-mb/name value8192/value !-- 8GB -- /property property nameyarn.scheduler.maximum-allocation-mb/name value8192/value /property6.2 HDFS块大小优化根据业务需求调整hdfs-site.xmlproperty namedfs.blocksize/name value268435456/value !-- 256MB -- /property6.3 压缩配置提高MapReduce效率在core-site.xml中添加property nameio.compression.codecs/name valueorg.apache.hadoop.io.compress.GzipCodec,org.apache.hadoop.io.compress.DefaultCodec/value /property7. 安全增强措施7.1 简单认证配置在core-site.xml中添加property namehadoop.http.filter.initializers/name valueorg.apache.hadoop.security.AuthenticationFilterInitializer/value /property property namehadoop.http.authentication.type/name valuesimple/value /property7.2 用户权限管理创建专用Hadoop用户sudo useradd hadoopuser sudo passwd hadoopuser修改目录权限sudo chown -R hadoopuser:hadoopgroup /opt/hadoop8. 集群维护操作8.1 安全重启步骤停止YARNstop-yarn.sh停止HDFSstop-dfs.sh按需更新配置后按4.2节步骤重新启动8.2 添加新节点在新节点上重复2.2和3.1-3.2节配置将新节点主机名加入workers文件刷新节点列表hdfs dfsadmin -refreshNodes yarn rmadmin -refreshNodes8.3 监控与日志关键日志路径NameNode: /opt/hadoop/logs/hadoop--namenode-.logDataNode: /opt/hadoop/logs/hadoop--datanode-.logResourceManager: /opt/hadoop/logs/yarn--resourcemanager-.log使用以下命令监控集群状态hdfs dfsadmin -report yarn node -list9. 生产环境建议经过测试环境验证后如需部署到生产环境建议考虑高可用方案配置ZooKeeper实现NameNode HA数据备份定期对NameNode元数据进行备份监控告警集成PrometheusGrafana监控集群指标资源隔离使用cgroups或Docker容器隔离资源滚动升级制定详细的升级和回滚方案我在实际运维中发现完全分布式集群的稳定性很大程度上取决于网络质量。建议生产环境使用万兆网络并配置网络冗余。另外定期检查磁盘健康状态HDFS对磁盘故障非常敏感。

相关推荐

CSS scroll-state():颠覆传统JS滚动交互的新方案
CSS scroll-state():颠覆传统JS滚动交互的新方案

1. 为什么CSS正在颠覆传统JS滚动交互 前端开发者们可能已经注意到,近年来CSS的能力边界正在快速扩展。过去需要大量JavaScript实现的复杂交互效果,现在仅用CSS就能优雅解决。特别是在滚动交互领域,CSS最新推出的 scroll-state() 功能彻底改… · 2026/11/2 23:45:29

Rollup构建工具:现代JavaScript模块打包实战指南
Rollup构建工具:现代JavaScript模块打包实战指南

1. Rollup构建工具概述 Rollup是一个现代JavaScript模块打包器,专注于将小块代码编译成更大更复杂的库或应用。与Webpack等传统打包工具不同,Rollup采用了ES模块(ESM)作为原生模块系统,这使得它在处理现代JavaScript代码时具有显著优势。 我… · 2026/11/3 4:12:21

OpenClaw智能对话系统Docker容器化部署实践
OpenClaw智能对话系统Docker容器化部署实践

1. 项目概述OpenClaw作为一款新兴的智能对话系统,其跨平台部署能力一直是开发者和企业用户关注的焦点。传统的部署方式往往面临环境依赖复杂、配置繁琐、平台兼容性差等问题。Docker容器化技术的引入,为OpenClaw的部署提供了标准化解决方案。我在实际企业… · 2026/11/7 16:07:24

3000字实操指南:特种作业操作证东三省报考避坑指南,怕考不过白交培训费的看过来
3000字实操指南:特种作业操作证东三省报考避坑指南,怕考不过白交培训费的看过来

3000字实操指南:特种作业操作证东三省报考避坑指南,怕考不过白交培训费的看过来 怕考不过白交培训费?你不是一个人。在河南,尤其是郑州,很多中小型施工企业负责人在办理特种作业操作证时,常常踩坑,选错培训机构、错过复审时间、甚至被坑培训费,最… · 2026/11/7 18:56:33

济南东部哪里学电工证 上岗必备怎么选不被坑
济南东部哪里学电工证 上岗必备怎么选不被坑

济南东部哪里学电工证 上岗必备怎么选不被坑 你是不是也遇到过这种情况: 不知道去哪报名怕被中介坑 ?尤其是在济南东部,电工证是很多建筑、电力、工程类岗位的 上岗必备… · 2026/11/7 18:56:33

电工证快速取证:真实经历告诉你怎么避开实操考试雷区
电工证快速取证:真实经历告诉你怎么避开实操考试雷区

电工证快速取证:真实经历告诉你怎么避开实操考试雷区 实操考试心里没底怕挂科?我带人考过几十个电工证,听我说句大实话,90%的人第一次考都紧张得手心冒汗。我认识的一个三门峡劳务班组负责人,就是第一次实操考试直接挂科,白白浪费了半个月时间。这事… · 2026/11/7 18:56:33

电工证过期了不知道怎么复审延期?【可以上国网的电工证在哪考】全攻略来了
电工证过期了不知道怎么复审延期?【可以上国网的电工证在哪考】全攻略来了

电工证过期了不知道怎么复审延期?【可以上国网的电工证在哪考】全攻略来了 证书过期了不知道怎么复审延期,这事儿真不是小事。前两天我接了个电话,是洛阳某建筑工地的电工老李,他手里的低压电工证已经过期半年了,想继续在工地上干,结果被项目安全员拦下… · 2026/11/7 18:56:33

终于拿到电工证怎么选靠谱机构 电子证书怎么查
终于拿到电工证怎么选靠谱机构 电子证书怎么查

终于拿到电工证怎么选靠谱机构 电子证书怎么查 不知道去哪报名怕被中介坑,这事儿我懂。作为一个在焦作干劳务班组这么多年的人,我见过太多人为了拿个电工证被坑了钱,连证都没拿到。现在网上培训机构五花八门,打着“包过”“快速拿证”的幌子,让人真假难… · 2026/11/7 18:56:33

许昌哪里可以考电工证?内部消息告诉你学历不高也能报名
许昌哪里可以考电工证?内部消息告诉你学历不高也能报名

许昌哪里可以考电工证?内部消息告诉你学历不高也能报名 你是不是也担心自己学历不高,报名电工证会碰一鼻子灰?别急,我这边有 内部消息… · 2026/11/7 18:55:32

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/7 11:25:08

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/7 12:02:18

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 10:29:23

澳洲水电工证考试:证书过期了不知道怎么复审延期?电子证书怎么弄?
澳洲水电工证考试:证书过期了不知道怎么复审延期?电子证书怎么弄?

澳洲水电工证考试:证书过期了不知道怎么复审延期?电子证书怎么弄? 证书过期了不知道怎么复审延期?别慌,很多人在拿到【澳洲水电工证考试】的电子证书后,一不小心就忽略了复审时间,结果证书失效,工作受阻,甚至被单位追责。今天就从【澳洲水电工证考试… · 2026/11/7 0:00:41

电工作业提示版通过率揭秘:怎么考才能一次过?
电工作业提示版通过率揭秘:怎么考才能一次过?

电工作业提示版通过率揭秘:怎么考才能一次过? 怕考不过白交培训费?别急,今天我就从驻马店应届工程类毕业生的视角,带你全面了解电工作业提示版的考试流程、备考要点和真实通过率,帮你少走弯路、提高一次通过率。… · 2026/11/7 0:00:41

电工证年审报名千万别踩坑 外省证转过来要搞清这几点
电工证年审报名千万别踩坑 外省证转过来要搞清这几点

电工证年审报名千万别踩坑 外省证转过来要搞清这几点 之前考的证在外省能不能转过来?这个问题是很多电工从业者最关心的,特别是像你这样在商丘从事公路工程的人员,经常需要跨省流动,证书的 有效性 和 可迁移性… · 2026/11/7 0:00:41

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/7 11:25:08

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/7 12:02:18

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/6 10:29:23

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码