实验1Hadoop集群部署实验报告
时间: 2023-07-05 19:04:45 浏览: 166
大数据导论实验一-搭建Hadoop集群实验报告
本次实验旨在学习Hadoop分布式计算框架的部署和使用,以下是实验报告:
一、实验环境
1. 虚拟机软件:VMware Workstation Pro 16
2. 操作系统:Ubuntu Server 18.04 LTS
3. Hadoop版本:Hadoop-2.7.7
4. Java版本:OpenJDK 8
二、实验步骤
1. 安装Java
在Ubuntu系统上安装OpenJDK 8:
```
sudo apt-get update
sudo apt-get install openjdk-8-jdk
```
2. 下载Hadoop
从官网下载Hadoop-2.7.7版本:https://hadoop.apache.org/releases.html
3. 配置Hadoop
解压Hadoop文件,将其放置在指定目录下(此处为/usr/local/hadoop/):
```
sudo tar -zxvf hadoop-2.7.7.tar.gz -C /usr/local/
sudo mv /usr/local/hadoop-2.7.7 /usr/local/hadoop
```
配置Hadoop环境变量:
```
sudo nano ~/.bashrc
```
在文件末尾添加以下内容:
```
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
```
保存并退出,然后使用以下命令使环境变量生效:
```
source ~/.bashrc
```
4. 配置Hadoop集群
首先,在master节点上创建一个名为“hadoop”的用户,并设置密码:
```
sudo adduser hadoop
sudo passwd hadoop
```
然后在master节点和slave节点上安装ssh服务:
```
sudo apt-get install ssh
```
生成ssh密钥:
```
ssh-keygen -t rsa
```
将公钥复制到所有slave节点:
```
ssh-copy-id hadoop@slave1
ssh-copy-id hadoop@slave2
...
```
编辑Hadoop的配置文件/etc/hadoop/core-site.xml,添加以下内容:
```
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
</configuration>
```
其中“master”是master节点的主机名。
编辑Hadoop的配置文件/etc/hadoop/hdfs-site.xml,添加以下内容:
```
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/usr/local/hadoop/data/nameNode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/usr/local/hadoop/data/dataNode</value>
</property>
</configuration>
```
其中“dfs.replication”表示数据副本数,这里设置为3;“dfs.namenode.name.dir”表示NameNode的数据存储位置,“dfs.datanode.data.dir”表示DataNode的数据存储位置。
编辑Hadoop的配置文件/etc/hadoop/mapred-site.xml,添加以下内容:
```
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
```
编辑Hadoop的配置文件/etc/hadoop/yarn-site.xml,添加以下内容:
```
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
```
其中“yarn.resourcemanager.hostname”表示ResourceManager的主机名,“yarn.nodemanager.aux-services”表示NodeManager的辅助服务。
5. 启动Hadoop集群
启动Hadoop集群:
```
start-all.sh
```
使用jps命令查看Hadoop进程:
```
jps
```
输出如下:
```
24012 Jps
23632 ResourceManager
23355 NameNode
23824 NodeManager
23519 SecondaryNameNode
```
6. 验证Hadoop集群
在Hadoop集群中上传文件:
```
hdfs dfs -mkdir /input
hdfs dfs -put /usr/local/hadoop/etc/hadoop/*.xml /input
```
运行Hadoop自带的wordcount例子:
```
hadoop jar /usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar wordcount /input /output
```
查看结果:
```
hdfs dfs -cat /output/part-r-00000
```
输出如下:
```
"1
"2
"3
"4
"5
"6
"7
"8
"9
"a 2
```
至此,Hadoop集群部署实验完成。
三、实验总结
通过本次实验,我学习了Hadoop分布式计算框架的部署和使用方法,了解了Hadoop集群的配置和启动方式,并成功运行了Hadoop自带的wordcount例子,加深了对Hadoop的理解和应用。
阅读全文