第一步:配置Hadoop环境变量

首先需要配置一下Hadoop的环境变量
输入命令:vim /etc/profile,如下图所示,添加的内容是下面红色圈住的内容。(类似于JDK环境变量的配置)

vim /etc/profile

hadoop初始页 hadoop初始化命令_HDFS


然后输入命令source /etc/profile来使配置起作用。

第二步:初始化

接下来开始初始化HDFS(格式化文件系统)。
输入命令hdfs namenode -format 来格式化。(配置了上面的全局环境变量,就可以任意目录执行该命令)

hdfs namenode -format

此时上一步配置的文件目录(tmp、hdfs/data、hdfs/name)就自动生成了:

[root@localhost hadoop]# pwd
/usr/local/src/hadoop
[root@localhost hadoop]# ll
total 352888
drwxr-xr-x. 11 root root       207 Oct 24 17:39 hadoop-2.9.1
-rw-r--r--.  1 root root 361355307 Sep  7 10:51 hadoop-2.9.1.tar.gz
drwxr-xr-x.  4 root root        30 Oct 24 17:51 hdfs
drwxr-xr-x.  4 root root        37 Oct 24 17:51 tmp
[root@localhost hadoop]# cd hdfs
[root@localhost hdfs]# ll
total 0
drwx------. 3 root root 40 Oct 24 18:03 data
drwxr-xr-x. 3 root root 40 Oct 24 18:00 name
[root@localhost hdfs]#
第三步:启动Hadoop

在hadoop安装目录的sbin目录下执行格式化命令!

cd /usr/local/src/hadoop/hadoop-2.9.1/sbin  
start-dfs.sh
start-yarn.sh  
或者使用 ./start-all.sh 命令就不用一个个启动了

hadoop初始页 hadoop初始化命令_hdfs_02


启动hadoop

第四步:查看进程

启动完两个脚本之后,来看一下java process snapshot(jps),发现有6个进程,其中NameNode是HDFS的老大,DataNode是HDFS的小弟,ResourceManager是YARN的老大,NodeManager是YARN的小弟,另外SecondaryNameNode是HDFS的NameNode的助理帮助NameNode完成一些数据的同步,主要用来合并fsimage和edits文件等。这说明前一节配置的完全正确,一次性启动成功!

hadoop初始页 hadoop初始化命令_hadoop_03

第五步:浏览器验证

浏览器访问:

192.168.93.128:50070
192.168.93.128:8088

若浏览器成功访问需要关闭Linux的防火墙

#查看防火墙状态
[root@localhost sbin]# firewall-cmd --state
running          #表示防火墙开启状态
#关闭防火墙
[root@localhost sbin]# systemctl stop firewalld.service

此时,页面就可以正常访问了:

hadoop初始页 hadoop初始化命令_hadoop初始页_04


hadoop初始页 hadoop初始化命令_hadoop初始页_05

现在就表示Hadoop的伪分布式就搭建好了!

在windows系统中绑定Linux主机名和之后
修改C:\Windows\System32\drivers\etc下的host文件
访问形式:

mrzhang:50070
mrzhang:8088端口

第六步:测试HDFS

1.上传文件到HDFS (put)

hadoop fs -put /root/jdk-7u60-linux-x64.tar hdfs://mrzhang:9090/jdk

2.从HDFS下载文件到根目录home下的jdk1.7(get)

hadoop fs -get hdfs://mrzhang:9090/jdk /home/jdk1.7

3.查看上传到hdfs的文件,最后的/不能省了 (ls)

hadoop fs -ls hdfs://mrzhang:9090/
第七步:测试MR和YARN

1.首先linux本身提供一个命令wc,用来统计出现的单词,举例如下
vi words.txt文件内容如下:

hello tom
hello jerry
hello kitty
hello world
hello tom

命令行输入wc words.txt出现如下结果
5 10 57 words.txt
意思分别是5行,10个单词,57个字母

2.下面是利用hadoop的MR自带的wordcount计算
在/hadoop/hadoop-2.9.1/share/hadoop/mapreduce这个目录下输入命令

hadoop jar hadoop-mapreduce-examples-2.9.1.jar wordcount hdfs://mrzhang:9090/words.txt hdfs://mrzhang:9090/wcout

hadoop jar hadoop-mapreduce-examples-2.9.1.jar wordcount -->这个是调用hadoop下的jar包命令

然后要跟一个输入in和一个输出out

输入in放的就是要计算的那个文件
输出out到wcout文件,然后运行即可