点一下关注吧!!!非常感谢!!持续更新!!!
目前已经更新到了:
- Hadoop(正在更新)
章节内容
上一节完成:
- 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机器上还没有环境。
需要借助我们上节的工具来完成一键分发。
rsync-script /opt/servers/hadoop-2.9.2
注意!!!这里只是分发过去了,但是 JAVA_HOME 和 HADOOP_HOME 环境变量等内容还是需要自己配置的!!!
注意!!!这里只是分发过去了,但是 JAVA_HOME 和 HADOOP_HOME 环境变量等内容还是需要自己配置的!!!
注意!!!这里只是分发过去了,但是 JAVA_HOME 和 HADOOP_HOME 环境变量等内容还是需要自己配置的!!!
单机启动
确保之前的所有内容都可以跑通,那么激动人心的时刻来了!!!
节点分配
这里需要再放一次节点的分配图,方便大家查看:
目前 登录到 h121
节点上。
初始格式化
NameNode
节点初始化,别的机器不需要执行
这步是必须的!!!
这步是必须的!!!
这步是必须的!!!
hadoop namenode -format
等待一会儿之后,如果出现如图的内容,那代表你已经顺利格式化
可以看到,控制台中给我们的路径:
/opt/servers/hadoop-2.9.2/data/tmp/dfs/name • 1
可以查看一下当前初始化的结果:
cd /opt/servers/hadoop-2.9.2/data/tmp/dfs/name ls
NameNode
启动最关键的节点 NameNode
:
hadoop-daemon.sh start namenode jps • 1 • 2
DataNode
h121
和h122
和h123
都启动 DataNode
hadoop-daemon.sh start datanode jps
h121
h122
h123