单机版是hadoop的基础安装方式,在三种安装方式:单机、伪分布式、集群中,常作为MapReduce功能的测试环境,没必要开启hdfs和yarn。
本文介绍hadoop单机版MapReduce测试环境安装方式。
/opt/module,操作用户可以是root或其他。tar -zxvf jdk-8u201-linux-x64.tar.gz -C /opt/module/vi /etc/profile.d/my_env.sh#JAVA_HOME export是全局变量
export JAVA_HOME=/opt/module/jdk1.8.0_201
export PATH=$PATH:$JAVA_HOME/bin
如果为centos6 编辑文件:vi /etc/profile,内容如上,需重新加载环境文件:source /etc/profile
验证jdk,查看版本:java -version

wget https://dlcdn.apache.org/hadoop/common/hadoop-3.3.4/hadoop-3.3.4.tar.gzcurl https://dlcdn.apache.org/hadoop/common/hadoop-3.3.4/hadoop-3.3.4.tar.gz -o hadoop-3.3.4.tar.gztar -zxvf hadoop-3.3.4.tar.gz -C /opt/module/,单机版安装就添加到系统环境变量。
| 目录名 | 说明 |
|---|---|
| bin | 存放hadoop相关服务(hdfs、yarn、mapred)进行操作脚本 |
| etc | 存放hadoop配置文件 |
| lib | 存放hadoop本地库 |
| sbin | 启动或停止hadoop各服务脚本 |
| share | 存放hadoop依赖jar、文档、官方实例。 |
mkdir /opt/data /opt/data/input vi /opt/data/input/data.txt,内容如下:hello world
hello year
work and happy
执行MapReduce任务进行文本单词统计:/opt/module/hadoop-3.3.4/bin/hadoop jar /opt/module/hadoop-3.3.4/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.4.jar wordcount /opt/data/input/ /opt/data/output,为方便理解此处使用物理路径。
jar:标识执行jar,后面跟jar包路径wordcount:为参数,表示执行单词统计/opt/data/input:为数据源目录/opt/data/output:结果输出目录,不要创建,输出目录必须不存在,否则会报错。
出现如图 success 表示执行成功:

/opt/data/output,查看结果目录:ll /opt/data/output/,查看文件内容:cat /opt/data/output/part-r-00000
vi /etc/profile.d/my_env.sh ,增加如下内容:#HADOOP_HOME
export HADOOP_HOME=/opt/module/hadoop-3.3.4
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
source /etc/profile && hadoop versionmkdir -p /opt/data/hadoop/name /opt/data/hadoop/datavi /opt/module/hadoop-3.3.4/etc/hadoop/core-site.xml,修改为如下内容<configuration>
<property>
<name>fs.defaultFSname>
<value>hdfs://localhost:9000value>
property>
<property>
<name>hadoop.tmp.dirname>
<value>file:/opt/module/hadoop-3.3.4/datavalue>
<description>Abasefor other temporary directories.description>
property>
<property>
<name>hadoop.http.staticuser.username>
<value>rootvalue>
property>
configuration>
vi /opt/module/hadoop-3.3.4/etc/hadoop/hdfs-site.xml,修改为如下内容<configuration>
<property>
<name>dfs.namenode.http-addressname>
<value>localhost:9870value>
property>
<property>
<name>dfs.namenode.name.dirname>
<value>file:/opt/data/hadoop/namevalue>
property>
<property>
<name>dfs.datanode.data.dirname>
<value>file:/opt/data/hadoop/datavalue>
property>
<property>
<name>dfs.replicationname>
<value>1value>
property>
configuration>
vi /opt/module/hadoop-3.3.4/sbin/start-dfs.sh 和 vi /opt/module/hadoop-3.3.4/sbin/stop-dfs.sh ,增加如下内容配置用户启动信息HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
首次 格式化hdfs:hdfs namenode -format
启动hdfs:start-dfs.sh
查看服务进程:jps
访问web页面:http://ip:9870/
上传文件:hadoop fs -put 本地文件 /
查看文件:hadoop fs -ls /