大数据 -04-Hadoop 集群 集群群起 NameNode/DataNode 启动 3 台公网云 ResourceManager Yarn HDFS 集群启动 UI 可视化查看 YarnUI

# 点一下关注吧!!!非常感谢!!持续更新!!!
🚀 AI 篇持续更新中!(长期更新)
目前 2025 年 06 月 05 日更新到:
**AI 炼丹日志-28 - Audiblez 将你的电子书 epub 转换为音频 mp3 做有声书**,持续打造实用 AI 工具指南!📐🤖
💻 Java 篇正式开启!(300 篇)
目前 2025 年 06 月 05 日更新到:
**Java-39 深入浅出 Spring - AOP 切面增强 核心概念 通知类型 XML+注解方式 附代码**
MyBatis 已完结,Spring 正在火热更新中,深入浅出助你打牢基础!
📊 大数据板块已完成多项干货更新(300 篇):
包括 Hadoop、Hive、Kafka、Flink、ClickHouse、Elasticsearch 等二十余项核心组件,覆盖离线+实时数仓全栈!
目前 2025 年 06 月 05 日更新到:
**大数据-278 Spark MLib - 基础介绍 机器学习算法 梯度提升树 GBDT 案例 详解**
👉 **点个关注,不迷路!后续还将持续更新更多大模型+数据智能+工程实战内容,敬请期待!**
章节内容
上一节完成:
HOSTS 配置(非常重要!坑多!)
ROOT 权限开启(重要)
SSH KEY 生成
SSH 三台云服务器 免登陆
分发脚本编写和测试

背景介绍
这里是三台公网云服务器,每台 2C4G,搭建一个 Hadoop 的学习环境,供我学习。之前已经在 VM 虚拟机上搭建过一次,但是没留下笔记,这次趁着前几天薅羊毛的 3 台机器,赶紧尝试在公网上搭建体验一下。
注意,如果你和我一样,打算用公网部署,那一定要做好防火墙策略,避免不必要的麻烦!!!请大家都以学习为目的,也请不要对我的服务进行嗅探或者攻击!!!
但是有一台公网服务器我还运行着别的服务,比如前几天发的:autodl-keeper 自己写的小工具,防止 AutoDL 机器过期的。还跑着别的 Web 服务,所以只能挤出一台 2C2G 的机器。那我的配置如下了:
2C4G 编号 h121
2C4G 编号 h122
2C2G 编号 h123

请确保上一节内容全部完毕和跑通!!!
基本介绍
HDFS(Hadoop Distributed File System): HDFS 是 Hadoop 的分布式文件系统,它允许集群中的所有节点存储数据并通过文件系统进行访问。HDFS 将数据拆分成多个数据块,并在不同节点上进行冗余存储以确保数据安全和可用性。当一个节点出现故障时,HDFS 会从其他节点的副本中恢复数据,保证数据的持久性。
YARN(Yet Another Resource Negotiator): YARN 是 Hadoop 的资源管理系统,负责集群中计算资源的分配和调度。它会根据应用程序的需求,在集群中分配适当的计算资源(如 CPU 和内存),并监控这些资源的使用情况。YARN 的出现让 Hadoop 支持多种不同类型的工作负载,不再局限于 MapReduce。
MapReduce: 这是 Hadoop 中的一种计算模型,用于大规模数据集的并行处理。MapReduce 将数据处理分为两个阶段:Map 阶段和 Reduce 阶段。Map 阶段负责将输入数据分割成小块并进行并行处理,Reduce 阶段则负责聚合 Map 阶段的输出结果。这个模型特别适合处理大量的非结构化数据,如日志文件、网页抓取数据等。
集群架构: Hadoop 集群通常由主节点(Master)和多个从节点(Worker)组成。主节点负责管理集群中的资源和任务调度,而从节点则负责实际的数据存储和计算任务的执行。主节点通常运行 NameNode(HDFS 的主控节点)和 ResourceManager(YARN 的主控节点),而从节点运行 DataNode(HDFS 的存储节点)和 NodeManager(YARN 的资源管理节点)。
高可用性和容错机制: Hadoop 集群具有很强的容错能力。当某个节点出现故障时,集群可以继续正常工作,不会影响数据的完整性和任务的完成。HDFS 通过数据块的冗余存储(通常是每个数据块有 3 个副本)来保证数据的可靠性。YARN 也通过监控节点的状态,确保计算任务的高可用性。
扩展性: Hadoop 集群具有很好的水平扩展能力。随着数据量的增加,可以通过增加更多的从节点来提升集群的存储和计算能力,而不会影响现有集群的性能。这使得 Hadoop 成为处理大规模数据集的理想选择。
生态系统: Hadoop 作为大数据技术的基础,拥有丰富的生态系统,包括 Hive(数据仓库工具)、HBase(NoSQL 数据库)、Spark(内存计算框架)、Pig(数据流语言)、Flume 和 Kafka(数据收集工具)、Oozie(工作流调度)等。这些工具可以与 Hadoop 无缝集成,帮助用户更好地处理和分析数据。
Hadoop 分发
我们之前只配置 h121
节点的内容,但是h122
和h123
机器上还没有环境。需要借助我们上节的工具来完成一键分发。

注意!!!这里只是分发过去了,但是 JAVA_HOME 和 HADOOP_HOME 环境变量等内容还是需要自己配置的!!!
注意!!!这里只是分发过去了,但是 JAVA_HOME 和 HADOOP_HOME 环境变量等内容还是需要自己配置的!!!
注意!!!这里只是分发过去了,但是 JAVA_HOME 和 HADOOP_HOME 环境变量等内容还是需要自己配置的!!!
单机启动
确保之前的所有内容都可以跑通,那么激动人心的时刻来了!!!
节点分配
这里需要再放一次节点的分配图,方便大家查看:

目前 登录到 h121
节点上。
初始格式化
NameNode
节点初始化,别的机器不需要执行
这步是必须的!!!
这步是必须的!!!
这步是必须的!!!
等待一会儿之后,如果出现如图的内容,那代表你已经顺利格式化

可以看到,控制台中给我们的路径:
可以查看一下当前初始化的结果:

NameNode
启动最关键的节点 NameNode
:

DataNode
h121
和h122
和h123
都启动 DataNode
h121

h122

h123

访问服务
顺利启动后,我们查看 WEB UI 界面

查看 DataNode
可以看到

Yarn 启动
节点分配
我们需要启动
Node Manager
ResourceManager
h121 启动

h122 启动

h123 启动

访问服务

集群启动
如果你已经走到了这里,真的挺不容易的!恭喜你!一切顺利!
单节点启动后,就不需要再对 NameNode 进行格式化了,先停止之前节点的服务。
停止服务
需要在 h121 h122 h123 上都执行一次!!!
需要在 h121 h122 h123 上都执行一次!!!
需要在 h121 h122 h123 上都执行一次!!!

HDFS 集群
在h121集群上进行执行!
h121

h122

h123

Yarn 集群
在h123集群上进行执行!
注意:
NameNode 和 ResourceManager 不在同一个机器上,不能在 NameNode 节点上启动 Yarn,应该在 ResourceManager 上启动。
h123

h121

h122

版权声明: 本文为 InfoQ 作者【武子康】的原创文章。
原文链接:【http://xie.infoq.cn/article/259d67c1ea655a355c84b2598】。文章转载请联系作者。
评论