《Hadoop集群伪分布式搭建实验报告》
一、实验目的
图片来源于网络,如有侵权联系删除
通过搭建Hadoop伪分布式集群,深入理解Hadoop的基本架构、运行原理以及各组件之间的协作关系,掌握Hadoop的安装、配置和基本操作,为后续的大数据处理和分析奠定基础。
二、实验环境
1、操作系统
- Ubuntu 18.04 LTS(64 - bit)。
2、软件版本
- Hadoop 3.3.0。
- Java 1.8.0。
三、实验步骤
1、安装Java环境
- 首先检查系统是否已经安装Java,使用命令java -version
,如果未安装,则从Oracle官方网站下载Java 1.8.0的JDK安装包。
- 在Ubuntu系统中,安装下载好的JDK包,例如使用dpkg -i jdk - 8uXXX - linux - x64.bin
(XXX为具体版本号)。
- 设置Java环境变量,编辑/etc/profile
文件,添加以下内容:
```bash
export JAVA_HOME=/usr/lib/jvm/java - 8 - openjdk - amd64
export PATH=$PATH:$JAVA_HOME/bin
```
- 使环境变量生效,使用命令source /etc/profile
。
2、安装Hadoop
- 从Hadoop官方网站下载Hadoop 3.3.0的二进制包,例如hadoop - 3.3.0.tar.gz
。
- 将下载的包解压到指定目录,如/usr/local/hadoop
,使用命令tar -zxvf hadoop - 3.3.0.tar.gz -C /usr/local
。
- 配置Hadoop环境变量,编辑/etc/profile
文件,添加以下内容:
```bash
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
```
- 使环境变量生效,使用命令source /etc/profile
。
3、配置Hadoop伪分布式模式
- 进入$HADOOP_HOME/etc/hadoop
目录,对相关配置文件进行修改。
core - site.xml
```xml
<configuration>
<property>
图片来源于网络,如有侵权联系删除
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
```
hdfs - site.xml
```xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/hadoop_data/hdfs/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/hadoop_data/hdfs/datanode</value>
</property>
</configuration>
```
mapred - site.xml
```xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
```
yarn - site.xml
图片来源于网络,如有侵权联系删除
```xml
<configuration>
<property>
<name>yarn.nodemanager.aux - services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value>
</property>
</configuration>
```
4、格式化HDFS
- 在终端中执行命令hdfs namenode - format
,这一步骤会初始化HDFS文件系统,创建相关的目录结构,如namenode和datanode的存储目录等。
5、启动Hadoop服务
- 首先启动HDFS服务,使用命令start - dfs.sh
,可以通过命令jps
查看启动的进程,应该看到NameNode
、DataNode
等进程。
- 然后启动YARN服务,使用命令start - yarn.sh
,再次使用jps
查看,会看到ResourceManager
、NodeManager
等进程。
6、验证Hadoop安装
- 在浏览器中输入http://localhost:9870
,可以查看HDFS的管理界面,包括文件系统的使用情况、文件列表等。
- 输入http://localhost:8088
,可以查看YARN的管理界面,查看任务的运行状态、资源分配等情况。
7、运行示例程序
- 运行Hadoop自带的示例程序,如hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop - mapreduce - examples - 3.3.0.jar wordcount /input /output
,其中/input
是输入文件所在的HDFS目录(需要提前创建并上传文件),/output
是输出结果存放的目录。
四、实验结果与分析
1、实验结果
- 通过浏览器访问http://localhost:9870
和http://localhost:8088
,能够成功看到HDFS和YARN的管理界面,说明Hadoop服务正常启动。
- 运行示例程序后,在/output
目录下可以看到生成的结果文件,并且结果符合预期的单词计数结果,证明Hadoop集群伪分布式搭建成功且能够正常运行MapReduce任务。
2、分析
- 在配置文件的修改过程中,每个配置项都有其特定的作用。core - site.xml
中的fs.defaultFS
定义了Hadoop的默认文件系统访问地址,hdfs - site.xml
中的dfs.replication
设置了数据块的副本数,在伪分布式模式下设置为1。
- 格式化HDFS是一个关键步骤,如果多次格式化可能会导致数据丢失,在启动服务时,通过jps
命令查看进程可以快速判断服务是否启动成功,如果某个进程未启动,需要查看相应的日志文件(位于$HADOOP_HOME/logs
目录下)来排查问题。
五、实验总结
通过本次Hadoop集群伪分布式搭建实验,我们深入了解了Hadoop的安装、配置和运行流程,在实验过程中,遇到了一些问题,如配置文件语法错误导致服务启动失败、忘记设置环境变量等,通过仔细检查配置文件、查看日志文件等方法解决了这些问题,这使我们对Hadoop的工作原理有了更深入的理解,为进一步学习大数据处理技术,如基于Hadoop的数据分析、数据挖掘等奠定了坚实的基础,也提高了我们解决问题的能力和对Linux系统下软件安装与配置的熟悉程度。
评论列表