目录
1 实验名称
2 实验目的
3 实验内容
4 实验原理
5 实验过程或源代码
5.1 JavaJDK的配置
5.2 Hadoop安装与伪分布式集群搭建
5.3 HDFS系统初体验
6 实验结果
6.1 JavaJDK的配置结果
6.2 Hadoop安装与伪分布式集群搭建结果
6.3 HDFS系统初体验结果
1 实验名称
Hadoop开发环境搭建
2 实验目的
了解Hadoop 起源,进行Hadoop 的安装和配置,包括JavaJDK的配置与Hadoop安装与伪分布式集群搭建。
3 实验内容
(1)配置开发环境-JavaJDK的配置
(2)配置开发环境-Hadoop安装与伪分布式集群搭建
(3)HDFS系统初体验
4 实验原理
Hadoop开发环境的搭建主要是为了在本地或远程服务器上创建一个支持Apache Hadoop框架运行的环境,这个框架主要用于处理大规模数据集。Hadoop开发环境的搭建的基本步骤和原理包括:首先,你需要Hadoop的最新稳定版本,通常包括Hadoop Distributed File System (HDFS) 和MapReduce两部分。其次配置环境变量和核心配置文件,将Hadoop的bin目录添加到系统路径中,以便于命令行使用Hadoop工具。然后启动守护进程并验证环境,最后可以编写和运行MapReduce程序。
5 实验过程或源代码
5.1 JavaJDK的配置
1.创建一个/app文件夹,我们之后的软件都将安装在该目录下。命令:mkdir /app,然后,切换到/opt目录下,来查看一下提供的压缩包。
2.解压JDK并将其移动到/app目录下,可以切换到/app目录下查看解压好的文件夹。
3.解压好JDK之后在环境变量中配置JDK,输入命令:vim /etc/profile 编辑配置文件;在文件末尾输入如下代码(不可以有空格):export JAVA_HOME CLASSPATH PATH;然后,保存并退出。最后:source /etc/profile使刚刚的配置生效。
4.测试一下环境变量是否配置成功,输入:java -version
5.2 Hadoop安装与伪分布式集群搭建
1.设置SSH免密登录,输入如下代码:ssh-keygen -t rsa -P '',生成无密码密钥对,询问保存路径直接输入回车,生成密钥对:id_rsa和id_rsa.pub,默认存储在/home/hadoop/.ssh目录下。
2.把id_rsa.pub追加到授权的key里面去:cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys;然后修改权限:chmod 600 ~/.ssh/authorized_keys。
3.启用RSA认证,启动公钥私钥配对认证方式:vim /etc/ssh/sshd_config 如果提示权限不足在命令前加上sudo修改ssh配置:
RSAAuthentication yes # 启用 RSA 认证
PubkeyAuthentication yes # 启用公钥私钥配对认证方式
AuthorizedKeysFile %h/.ssh/authorized_keys # 公钥文件路径
4.hadoop-env.sh 配置,两个env.sh文件主要是配置JDK的位置。首先我们切换到hadoop目录下:cd /app/hadoop3.1/etc/hadoop;hadoop-env.sh在文件中插入如下代码:
# The java implementation to use.
#export JAVA_HOME=${JAVA_HOME}
export JAVA_HOME=/app/jdk1.8.0_171
5.yarn-env.sh 配置,编辑yarn-env.sh 插入如下代码:export JAVA_HOME=/app/jdk1.8.0_171。
6.core-site.xml配置,在该文件中加入 HDFS的URI和NameNode的临时文件夹位置,在文件末尾的configuration标签中添加代码如下:
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
<description>HDFS的URI,文件系统://namenode标识:端口号</description>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/hadoop/tmp</value>
<description>namenode上本地的hadoop临时文件夹</description>
</property>
</configuration>
7.hdfs-site.xml文件配置,在文件末尾的configuration标签中添加代码如下:
<configuration>
<property>
<name>dfs.name.dir</name>
<value>/usr/hadoop/hdfs/name</value>
<description>namenode上存储hdfs名字空间元数据 </description>
</property>
<property>
<name>dfs.data.dir</name>
<value>/usr/hadoop/hdfs/data</value>
<description>datanode上数据块的物理存储位置</description>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
8.mapred-site.xml文件配置,在文件末尾的configuration标签中添加代码如下:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
9.yarn-site.xml配置,在文件末尾的configuration标签中添加代码如下:
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>192.168.2.10:8099</value>
<description>这个地址是mr管理界面的</description>
</property>
</configuration>
10.创建文件夹,在/usr/hadoop/目录下使用hadoop用户操作,建立tmp、hdfs/name、hdfs/data目录,执行如下命令 :
mkdir /usr/hadoop
mkdir /usr/hadoop/tmp
mkdir /usr/hadoop/hdfs
mkdir /usr/hadoop/hdfs/data
mkdir /usr/hadoop/hdfs/name
11.将Hadoop添加到环境变量中:vim /etc/profile,在文件末尾插入如下代码:
#set Hadoop Environment
export HADOOP_HOME=/app/hadoop3.1
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
最后使修改生效:source /etc/profile。
12.格式化,使用如下命令:hadoop namenode -format。在/hadoop3.1/sbin路径下: cd /app/hadoop3.1/sbin。将start-dfs.sh,stop-dfs.sh两个文件顶部添加以下参数:
#!/usr/bin/env bash
HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
同时在start-yarn.sh,stop-yarn.sh顶部添加以下:
#!/usr/bin/env bash
YARN_RESOURCEMANAGER_USER=root
HADOOP_SECURE_DN_USER=yarn
YARN_NODEMANAGER_USER=root
13.启动Hadoop:start-dfs.sh,输入命令 jps 验证。
5.3 HDFS系统初体验
1.创建文件夹:start-dfs.sh hadoop fs -mkdir /task,查看是否创建成功:hadoop fs -ls /。
2.上传文件至HDFS,创建文件,并添加数据:vim task.txt hello educoder;将文件上传至HDFS:hadoop fs -put task.txt /task;查看文件:hadoop fs -cat /task/task.txt。
6 实验结果
6.1 JavaJDK的配置结果
1.创建一个/app文件夹,并切换到/opt目录下查看
2.切换到/app目录下查看解压好的文件夹
3.在环境变量中配置JDK
4.测试配置成功
6.2 Hadoop安装与伪分布式集群搭建结果
1.设置SSH免密登录
2.启用RSA认证
3.启动Hadoop并验证成功
6.3 HDFS系统初体验结果
1.创建文件夹