前言
上回说到已经创建好虚拟机hadoop101 并且可以进行联网,安装一些常用命令。这回我们继续搭建hadoop。首先在opt 目录下创建module 和 software 两个文件夹,module存放解压后的软件包,software存放压缩的软件包。
cd /opt
mkdir module
mkdir software
jdk安装和hadoop安装
上传jdk包hadoop包到 software文件夹目录下,xshell 命令执行rz,大家可能使用不同的命令行工具,自行解决吧。
解压jdk包和hadoop包到module文件夹目录下
tar -zxvf jdk-8u181-linux-x64.tar.gz -C /opt/module/
tar -zxvf hadoop-2.7.7.tar.gz -C /opt/module/
配置jdk和hadoop环境变量
vim /etc/profile
#------------------------#java_home
export JAVA_HOME=/opt/module/jdk1.8.0_181
export PATH=$PATH:$JAVA_HOME/bin
#hadoop_home
export HADOOP_HOME=/opt/module/hadoop-2.7.7
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
#------------------------
source /etc/profile
查看jdk和hadoop版本 检测是否配置成功
hadoop目录结构了解
完成上面步骤的操作,hadoop就算是初步安装完成了,接下来我们先简单了解一下hadoop的目录结构。进入/opt/module/hadoop-2.7.7
-
etc:hadoop的配置文件目录,存放hadoop的配置文件。
-
lib:存放hadoop的本地库。
-
sbin:存放启动或停止hadoop相关服务的脚本
-
share:存放hadoop的依赖jar包,文档,和官方案例。
本地测试案例1 运行
初步了解之后,我们运行一下hadoop自带的案例,通过hadoop计算出input文件夹下所有文件中 存在以dfs开头的字符串都有什么。话不多说,开整......
-
在/opt/module/hadoop-2.7.7创建一个input文件夹
mkdir input -
将 /opt/module/hadoop-2.7.7/etc/hadoop/目录下所有的.xml文件复制到input文件下
cp etc/hadoop/*.xml input/ -
执行hadoop 获取带有dfs的字符串
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar grep input/ output 'dfs[a-z.]+’ -
执行结果在output文件夹
本地测试案例2 运行
再来一个玩玩,这次我们获取一个文件中单词的个数有多少。
-
创建文件夹input2,在该文件夹里面创建一个文件juejin.txt ,文件里面写点单词大家随意哈。
mkdir input2 touch juejin.txt vim juejin.txt #=====内容===== da jia hao wo shi ya xiang di de shu qing da jia duo duo guan zhao wo yi qi xue xi yi qi jia you xiang xin mei hao de yi tian jiu cong ci shi ci ke kai shi xie xie -
执行 获取文件中单词的个数
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar wordcount input2/ output2 -
执行结果在output2文件夹
至此,简单的小测试就完成了。是不是挺好玩的。今天就先到这里啦,下次我们真正的将要搭建集群啦。期待呦!
结语
心血来潮想学习一下Hadoop,为了督促自己的总结习惯,每周发布一次总结到掘金,希望自己坚持不懈,功成之路,满是荆棘。