大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(一)

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 大数据-02-Hadoop集群 XML配置 超详细 core-site.xml hdfs-site.xml 3节点云服务器 2C4G HDFS Yarn MapRedece(一)

点一下关注吧!!!非常感谢!!持续更新!!!

目前已经更新到了:

  • Hadoop(正在更新)

章节内容

上一节完成了:


Java的环境配置

Hadoop环境配置

顺利完成了基础环境的配置,但是对于Hadoop来说,目前还有一些XML的配置需要我们修改,这样后续才能组装成集群来运行。

接下来我们就进行一些XML的配置。Hadoop集群配置 = HDFS集群配置 + MapReduce集群配置 + Yarn集群配置。


背景介绍

这里是三台公网云服务器,每台 2C4G,搭建一个Hadoop的学习环境,供我学习。

之前已经在 VM 虚拟机上搭建过一次,但是没留下笔记,这次趁着前几天薅羊毛的3台机器,赶紧尝试在公网上搭建体验一下。


注意,如果你和我一样,打算用公网部署,那一定要做好防火墙策略,避免不必要的麻烦!!!

注意,如果你和我一样,打算用公网部署,那一定要做好防火墙策略,避免不必要的麻烦!!!

注意,如果你和我一样,打算用公网部署,那一定要做好防火墙策略,避免不必要的麻烦!!!


请大家都以学习为目的,也请不要对我的服务进行嗅探或者攻击!!!

请大家都以学习为目的,也请不要对我的服务进行嗅探或者攻击!!!

请大家都以学习为目的,也请不要对我的服务进行嗅探或者攻击!!!


但是有一台公网服务器我还运行着别的服务,比如前几天发的:autodl-keeper 自己写的小工具,防止AutoDL机器过期的。还跑着别的Web服务,所以只能挤出一台 2C2G 的机器。那我的配置如下了:


2C4G 编号 h121

2C4G 编号 h122

2C2G 编号 h123

基本介绍

HDFS(Hadoop Distributed File System)是Apache Hadoop框架中用于存储大数据的分布式文件系统。它具有高容错性和高扩展性的特点,专为在廉价硬件上运行而设计,能够处理大规模数据集。


核心概念

文件系统架构:HDFS基于主从架构,由NameNode(主节点)和多个DataNode(数据节点)组成:NameNode负责存储元数据,如文件目录、块位置信息等。它不会存储文件本身,而是维护文件块与DataNode的映射。DataNode负责实际存储文件数据。HDFS将文件拆分成多个固定大小的块(默认64MB或128MB),并将这些块分布式存储在不同的DataNode上。

冗余与容错:为了保证数据安全,每个数据块都会被复制到多个DataNode上,默认是三个副本。这种机制可以防止数据丢失,即使某些节点发生故障,数据仍可从其他副本中恢复。

流式数据访问:HDFS适合一次写入、多次读取的访问模式,主要用于批处理场景。它不支持像传统文件系统那样的随机写操作。

工作流程

数据写入:客户端将文件写入HDFS时,文件会被拆分成块并分别存储到不同的DataNode上。NameNode会记录每个数据块的位置信息。当写入完成后,副本机制开始将数据复制到其他DataNode。

数据读取:客户端从HDFS读取文件时,首先从NameNode获取文件块的位置信息,然后直接从对应的DataNode下载文件块。这种设计使得数据读取可以并行化,提升了读性能。

优势

可扩展性:HDFS可以水平扩展,通过增加DataNode来扩大存储容量。

高容错性:由于数据块的多副本机制,HDFS能有效应对硬件故障。当某个DataNode失效时,数据依然可从其他副本恢复。

数据本地化:在Hadoop MapReduce中,计算任务会尽量安排在数据存储节点附近,以减少网络传输,提高计算效率。

局限性

不支持低延迟数据访问:HDFS更适合批处理场景,不适合低延迟的实时查询。

单点故障:NameNode作为整个系统的元数据管理者,如果NameNode故障,整个HDFS将无法正常工作。不过,通过引入高可用(HA)机制,这个问题可以得到解决。

小文件问题:HDFS对小文件的处理效率较低,因为每个文件都需要元数据管理,小文件过多会给NameNode带来较大压力。

集群配置

由于我也是参考着别人的内容,这里有一个对应的关系:


h121对应linux121

h122对应linux122

h123对应linux123

我们需要配置的内容如下图:

Hadoop集群配置 = HDFS集群配置 + MapReduce集群配置 + Yarn集群配置

  • 按照上图,一步一步来配置。

HDFS集群

运行环境

cd /opt/servers/hadoop-2.9.2/etc/hadoop


修改 hadoop 的运行内容

vim hadoop-env.sh
• 1

找到 JAVA_HOME 的部分,配置为我们上节配置的地址:(防止后续的一系列不必要的问题,血泪史)

NameNode

cd /opt/servers/hadoop-2.9.2/etc/hadoop 
• 1

修改 core-site.xml

sudo vim core-site.xml

添加如下的内容

<!-- HDFS NameNode 地址 -->
<property>
        <name>fs.defaultFS</name>
        <value>hdfs://h121.wzk.icu:9000</value>
</property>
<property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/servers/hadoop-2.9.2/data/tmp</value>
</property>

当前的完整配置如下:

core-site.xml 中的所有参数地址:https://hadoop.apache.org/docs/r2.9.2/hadoop-project-dist/hadoop-common/core-default.xml


SecondaryNameNode

vim hdfs-site.xml

将下面的内容加入进去:

<!-- Hadoop 辅助节点地址 -->
<property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>h123.wzk.icu:50090</value>
</property>
<!-- 副本数量 -->
<property>
        <name>dfs.replication</name>
        <value>3</value>
</property>

当前的完整配置如下:

DataNode

sudo vim slaves
• 1

这里是你的3台节点的名称,或者域名。

接下篇:https://developer.aliyun.com/article/1621577

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
目录
相关文章
|
13天前
|
SQL 机器学习/深度学习 分布式计算
大数据-81 Spark 安装配置环境 集群环境配置 超详细 三台云服务器
大数据-81 Spark 安装配置环境 集群环境配置 超详细 三台云服务器
32 1
|
9天前
|
XML JavaScript 数据格式
XML DOM 遍历节点树
XML DOM 遍历节点树
|
13天前
|
消息中间件 分布式计算 监控
大数据-78 Kafka 集群模式 集群的应用场景与Kafka集群的搭建 三台云服务器
大数据-78 Kafka 集群模式 集群的应用场景与Kafka集群的搭建 三台云服务器
39 6
|
12天前
|
SQL 分布式计算 NoSQL
大数据-170 Elasticsearch 云服务器三节点集群搭建 测试运行
大数据-170 Elasticsearch 云服务器三节点集群搭建 测试运行
29 4
|
12天前
|
SQL 分布式计算 大数据
大数据-168 Elasticsearch 单机云服务器部署运行 详细流程
大数据-168 Elasticsearch 单机云服务器部署运行 详细流程
32 2
|
14天前
|
分布式计算 Hadoop Shell
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
Hadoop-35 HBase 集群配置和启动 3节点云服务器 集群效果测试 Shell测试
41 4
|
13天前
|
XML JavaScript 数据格式
XML DOM 遍历节点树
XML DOM 遍历节点树
|
14天前
|
缓存 NoSQL Ubuntu
大数据-39 Redis 高并发分布式缓存 Ubuntu源码编译安装 云服务器 启动并测试 redis-server redis-cli
大数据-39 Redis 高并发分布式缓存 Ubuntu源码编译安装 云服务器 启动并测试 redis-server redis-cli
41 3
|
14天前
|
SQL 分布式计算 Hadoop
Hadoop-37 HBase集群 JavaAPI 操作3台云服务器 POM 实现增删改查调用操作 列族信息 扫描全表
Hadoop-37 HBase集群 JavaAPI 操作3台云服务器 POM 实现增删改查调用操作 列族信息 扫描全表
25 3
|
14天前
|
分布式计算 Hadoop Shell
Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter
Hadoop-36 HBase 3节点云服务器集群 HBase Shell 增删改查 全程多图详细 列族 row key value filter
40 3