CentOS 7 Hadoop 集群搭建实验报告
Hadoop 是一个开源的分布式计算平台,广泛用于大数据处理。在大数据时代,掌握 Hadoop 的集群搭建技能显得尤为重要。本篇文章将详细介绍如何在 CentOS 7 上搭建 Hadoop 集群,包括所需的软件环境、硬件要求、操作步骤,并提供相应的代码示例。
1. 环境准备
1.1 硬件要求
- 最低要求:至少两台机器(可以是虚拟机)
- 每台机器的配置:
- CPU:2 核心
- 内存:4GB
- 磁盘空间:至少 20GB
1.2 软件要求
- CentOS 7
- Java JDK 1.8 及以上
- Hadoop 3.x 版本
1.3 安装 Java JDK
在每台机器上执行以下命令来安装 Java JDK:
sudo yum install java-1.8.0-openjdk-devel -y
安装后,可以使用 java -version 命令确认安装是否成功。
2. 下载并安装 Hadoop
在 Hadoop 的[官方网站](
2.1 解压 Hadoop
假设下载的 Hadoop 压缩包名为 hadoop-3.x.x.tar.gz,可以使用以下命令进行解压:
tar -xzvf hadoop-3.x.x.tar.gz
2.2 配置环境变量
将 Hadoop 的 bin 和 sbin 目录添加到系统的环境变量中。编辑 ~/.bashrc 文件,加入以下内容:
# Hadoop
export HADOOP_HOME=/path/to/hadoop-3.x.x
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
然后使用 source ~/.bashrc 命令更新环境变量。
3. 配置 Hadoop
3.1 编辑配置文件
在 HADOOP_HOME/etc/hadoop 目录下,有多个配置文件需要编辑。
3.1.1 core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
</configuration>
3.1.2 hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
</configuration>
3.1.3 yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
</configuration>
4. 启动 Hadoop 集群
在主节点上格式化 HDFS,使用命令:
hdfs namenode -format
接下来启动 Hadoop:
start-dfs.sh
start-yarn.sh
使用以下命令查看 Hadoop 服务状态:
jps
成功后,您应该能够看到 NameNode、DataNode、ResourceManager 和 NodeManager 等进程正在运行。
5. 验证 Hadoop 集群
可以通过访问 Hadoop 的 web 界面来验证集群的状态,默认端口如下:
- HDFS Web UI:
http://master:50070 - YARN Web UI:
http://master:8088
6. 使用 Hadoop 处理数据
接下来,我们将演示如何在 Hadoop 上运行简单的 MapReduce 作业。首先,上传数据到 HDFS。
6.1 上传文件
使用以下命令上传文件到 HDFS:
hadoop fs -put /path/to/local/file.txt /user/hadoop/
6.2 运行例子作业
使用 Hadoop 提供的示例作业:
hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.x.x.jar wordcount /user/hadoop/file.txt /user/hadoop/output
6.3 查看输出结果
输出结果将存储在 HDFS 中,使用以下命令查看:
hadoop fs -ls /user/hadoop/output
hadoop fs -cat /user/hadoop/output/part-r-00000
7. 过程示意图
下面是 Hadoop 集群搭建的序列图,展示了各个组件的通信流程。
sequenceDiagram
participant Client
participant NameNode
participant DataNode
Client->>NameNode: 请求文件
NameNode-->>Client: 返回文件位置信息
Client->>DataNode: 发送读取请求
DataNode-->>Client: 返回文件数据
结论
通过本篇文章,您已经学习了如何在 CentOS 7 上搭建并配置 Hadoop 集群。我们从环境准备、软件安装到基本的 MapReduce 任务执行进行了详细的步骤讲解。无论是大数据开发还是数据分析,掌握 Hadoop 的集群搭建都是非常关键的能力。希望本实验报告能为您在大数据领域的学习和实践提供帮助。
















