《Hadoop集群伪分布式搭建实验报告》
一、实验目的
图片来源于网络,如有侵权联系删除
本次实验旨在掌握Hadoop伪分布式集群的搭建方法,了解Hadoop的基本架构和运行机制,包括HDFS(Hadoop Distributed File System)和YARN(Yet Another Resource Negotiator)的相关概念和功能,为后续深入学习大数据处理技术奠定基础。
二、实验环境
1、操作系统
- 本次实验选用Ubuntu 18.04 LTS操作系统,Ubuntu具有良好的开源性和社区支持,适合用于搭建Hadoop环境。
2、软件版本
- Hadoop版本为3.3.0,选择较新版本的Hadoop可以体验到最新的功能和优化。
三、实验步骤
1、安装Java环境
- 由于Hadoop是基于Java开发的,首先需要安装Java Development Kit(JDK),通过命令sudo apt - get install openjdk - 8 - jdk
在Ubuntu系统上安装JDK 8,安装完成后,通过java - version
命令检查Java安装是否成功。
2、配置SSH免密登录
- Hadoop集群中的节点之间需要通过SSH进行通信,使用ssh - keygen - t rsa
命令生成密钥对,然后将公钥添加到authorized_keys
文件中,实现本地的免密登录,方便后续Hadoop进程之间的通信。
3、下载与解压Hadoop
- 从Hadoop官方网站下载Hadoop 3.3.0的二进制压缩包,使用命令wget https://dlcdn.apache.org/hadoop/common/hadoop - 3.3.0/hadoop - 3.3.0.tar.gz
,下载完成后,使用tar - zxvf hadoop - 3.3.0.tar.gz
命令解压到指定目录,如/usr/local/hadoop
。
4、配置Hadoop环境变量
- 编辑~/.bashrc
文件,添加以下内容:
```bash
export HADOOP_HOME = /usr/local/hadoop
export PATH = $PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
```
- 执行source ~/.bashrc
使环境变量生效。
5、配置Hadoop核心文件
- 在$HADOOP_HOME/etc/hadoop
目录下,对core - site.xml
文件进行配置,主要配置HDFS的默认文件系统和临时目录,示例配置如下:
```xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
图片来源于网络,如有侵权联系删除
<value>/usr/local/hadoop/tmp</value>
</property>
</configuration>
```
- 配置hdfs - site.xml
文件,设置副本数量等参数,如:
```xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
```
- 对于mapred - site.xml
文件,配置MapReduce框架相关参数,
```xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
```
- 配置yarn - site.xml
文件,指定YARN的资源管理器地址等信息,如:
```xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
<property>
图片来源于网络,如有侵权联系删除
<name>yarn.nodemanager.aux - services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
```
6、格式化HDFS
- 在启动Hadoop之前,需要使用命令hdfs namenode - format
对HDFS进行格式化操作,这一操作会初始化HDFS的文件系统元数据。
7、启动Hadoop集群
- 分别使用start - dfs.sh
和start - yarn.sh
命令启动HDFS和YARN服务,可以通过jps
命令查看启动的进程,包括NameNode
、DataNode
、ResourceManager
和NodeManager
等进程是否正常启动。
四、实验结果与分析
1、启动结果
- 通过jps
命令查看,成功启动了NameNode
、DataNode
、ResourceManager
和NodeManager
等进程,表明Hadoop伪分布式集群搭建成功。
2、HDFS验证
- 使用hdfs dfs - ls /
命令查看HDFS根目录下的文件,可以看到默认的文件和目录结构,如tmp
目录等,这证明HDFS已经正常工作,可以进行文件的存储和管理操作。
3、YARN验证
- 通过YARN的Web界面(http://localhost:8088)可以查看集群的资源使用情况、任务调度等信息,在该界面上,可以看到节点的资源信息,如内存、CPU核心数等,以及正在运行和已完成的任务信息。
五、实验总结
1、遇到的问题及解决方法
问题一:SSH免密登录配置失败
- 原因:在将公钥添加到authorized_keys
文件时,可能由于权限设置不正确导致免密登录失败。
- 解决方法:确保authorized_keys
文件的权限为600
,并且所属用户和组正确。
问题二:Hadoop进程启动失败
- 原因:可能是配置文件中的参数设置错误,如端口冲突或者文件路径错误等。
- 解决方法:仔细检查配置文件中的各项参数,特别是core - site.xml
、hdfs - site.xml
等核心配置文件中的地址和端口设置,查看日志文件(如$HADOOP_HOME/logs
目录下的日志)以获取更详细的错误信息。
2、收获与体会
- 通过本次Hadoop伪分布式集群的搭建实验,深入理解了Hadoop的基本架构和工作原理,Hadoop的分布式文件系统HDFS和资源管理框架YARN是其核心组件,它们协同工作,为大数据处理提供了强大的支持。
- 在实验过程中,掌握了Java环境的安装、SSH免密登录的配置、Hadoop相关配置文件的设置以及集群的启动和验证方法等一系列技能,这些技能不仅对于Hadoop的学习和使用至关重要,也为进一步学习其他大数据技术,如Spark、Hive等打下了坚实的基础。
- 在解决实验过程中遇到的问题时,提高了自己的问题排查能力和对Linux系统操作的熟练程度,通过查看日志文件定位错误原因,以及使用Linux命令来调整文件权限和查看进程状态等操作。
本次实验是一次非常有意义的大数据技术实践,让我对Hadoop的分布式计算环境有了更直观和深入的认识。
评论列表