在部署Hadoop之前,需要对Hadoop的目录结构要有一定了解。视频讲解如下:
先执行下面的语句将Hadoop的安装介质解压的/root/training目录。
代码语言:powershell复制tar -zxvf hadoop-3.1.2.tar.gz -C ~/training/
下面展示了Hadoop的目录结构。
为了方便操作Hadoop,需要设置HADOOP_HOME的环境变量,并把bin和sbin目录加入系统的PATH路径中。下面列举了具体的步骤。
(1)编辑文件~/.bash_profile文件。
代码语言:powershell复制vi /root/.bash_profile
(2)输入下面的环境变量信息,并保存退出。
代码语言:powershell复制HADOOP_HOME=/root/training/hadoop-3.1.2
export HADOOP_HOME
PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
export PATH
(3)生效环境变量。
代码语言:powershell复制source /root/.bash_profile
Hadoop在本地模式下将没有HDFS和Yarn。因此,Hadoop本地模式只能测试MapReduce任务,并把MapReduce任务运行本地,与运行一个普通的Java程序完全一样。Hadoop本地模式的配置非常简单,只需要修改一个参数即可。下面以bigdata111的虚拟主机为例,演示如何完成Hadoop本地模式的部署。
(1)进入Hadoop配置文件所在的目录
代码语言:powershell复制cd /root/training/hadoop-3.1.2/etc/hadoop/
(2)修改文件hadoop-env.sh,设置JAVA_HOME
代码语言:powershell复制export JAVA_HOME=/root/training/jdk1.8.0_181
至此Hadoop本地模式配置完成,可以来测试一个简单的MapReduce WordCount程序。。
(3)在/root/temp目录下创建data.txt文件用于保存测试数据。
代码语言:powershell复制mkdir /root/temp/
cd /root/temp
vi data.txt
(4)在data.txt文件中输入测试数据。
代码语言:powershell复制I love Beijing
I love China
Beijing is the capital of China
(5)进入Hadoop MapReduce的Example目录,并执行WordCount程序。任务运行的过程如下图所示。
代码语言:powershell复制cd /root/training/hadoop-3.1.2/share/hadoop/mapreduce/
hadoop jar hadoop-mapreduce-examples-3.1.2.jar wordcount /root/temp/data.txt /root/output/wc
(6)最后的结果将输出到/root/output/wc下,如下图所示。