1. 安装 SSH 工具
SSH Secure Shell Client 传输软件
FinalShell(推荐使用)
1.1使用SSH工具将JDK安装包上传至虚拟主机hadoop01, hadoop02, hadoop03,sogou500w 数据上传至 hadoop01。
a. 在虚拟主机/usr 目录下创建文件夹 java,JDK 上传至此目录(创建文件夹可能需要 root 角色)
mkdir java
b. 在虚拟主机创建文件夹 sogou, sogou500w 数据上传至此目录。
复制以后请使用 Linux 命令查看一下该文件的前 10 行和后 10 行数据。
mkdir sogou
2. 安装 JDK 并且配置环境变量。
(注意 JDK 需要在三台客户虚拟机上分别独立完整安装配置,为分布式 Hadoop 集群安装部署做准备。)
直接解压缩 JDK 安装包,如下所示,所在目录为/usr/java 目录下。安装时
注意:文件夹权限,如果权限不足,需要使用 chmod 命令修改。
2.1 修改文件夹权限为可读可写可执行权限
chomd -R 777 java
2.2 把window主机的jdk拖拽到/usr/java目录下
2.3 解压缩JDK安装包
sudo tar -zxvf /usr/java/jdk-8u212-linux-x64.tar.gz -C /usr/java/
2.4 配置环境变量
添加 JAVA_HOME 变量并赋值;
编辑 PATH 变量,添加 JAVA 的 bin 目录,如下图所示内容。
export JAVA_HOME=/usr/java/jdk1.8.0_212
export PATH=$PATH:$JAVA_HOME/bin
使环境变量生效。
验证安装配置成功。
java -version
3. 将 JDK 远程拷贝至虚拟主机 hadoop101,hadoop102并解压缩
环境变量配置后续用xsync集群分发脚本复制粘贴即可。
3.1 将JDK拷贝给虚拟机hadoop101
解压缩
3.2 将JDK拷贝给虚拟机hadoop102
解压缩
4. Hadoop 本地模式部署
4.1 下载 hadoop 安装包并上传至虚拟机文件目录
我下载的版本是3.1.3。
在主机 hadoop100 解压缩 hadoop 压缩包,命令如下所示:
获取hadoop安装路径
4.2 配置hadoop环境变量
export HADOOP_HOME=
export PATH=$:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
4.3 使环境变量生效
source .bash_profile
执行以下命令验证 hadoop 安装配置成功。
hadoop version
将hadoop从hadoop100拷贝到hadoop101
将hadoop从hadoop100拷贝到hadoop102
在/home/2130502441ryx/下创建以下数据目录:
在此目录下编辑数据文件 wc.input
在文件内输入以下内容:
在/home/2130502441ryx/data 下创建文件夹 input,并将/home/gdpu/hadoop-2.8.1/etc/hadoop 目录里下的 xml 文件拷贝至 input 目录下。
5. Hadoop 自带程序测试(StandAlone 模式下)
5.1 grep 官方案例,此案例的功能是将文件中符合规则的内容输出。
在 data 目录下运行以下 hadoop 命令,命令如下:
hadoop jar /home/2130502441ryx/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar grep input ouput 'dfs[a-z.]+'
查看输出到本地的 output 目录下的结果文件:符合正则表达式 ‘dfs[az.]+’的内容输出到 part-r-00000 结果文件中,另外还有一个文件_SUCCESS 文件,说明 Job 运行成功。
请将 part-r-00000 结果文件中的内容截图并记录在下面:
可以看到符合正则表达式 ‘dfs[az.]+’只有一行。 |
前面output文件名打错了,修改如下:
思考题:将 wc.input 文件移动到 input 目录下,现如今要将 input 文件夹下所有文件内容中包含 ‘dfs’的内容提取,并将结果输出到结果目录 output中,请写出相应的 hadoop 执行命令在以下的方框内。并打印输出结果 part-r-00000 文件的内容。
① 将 wc.input 文件移动到 input 目录下 (mv wc.input /home/2130502441ryx/data/input/) ② 查看是否成功 ③ 将符合要求的结果输出到output2中 ④ 打印输出结果 可以看到有四行包含dfs,前面没有加入wc.input的时候只有一行,加上wc.input里面的三个刚好是4。 |
5.2 WordCount 官方案例
运行以下命令,实现对文件内容的单词计数
hadoop jar /home/2130502441ryx/hadoop-3.1.3/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount input/wc.input output3
查看执行结果文件的内容 part-r-00000,输出到以下方框内。
① 运行命令 ② 查看part-r-00000的输出内容 |