开发者学堂课程【大数据 Flink 实时旅游平台环境篇 2020版:环境篇之 hadoop 集群的测试】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/643/detail/10695
环境篇之 hadoop 集群的测试
Hadoop 集群测试
1.分发到 hadoop02\hadoop03
可以根据 [root@hadoop01-hadoop-2.7.6]#scp-r../hadoop-2.7.6/hadoop02:/user/local/
来做
之前应该是有过分发,但是查找后发现未做分发,原因是需要保证配置一样。
[root@hadoop02~]#vi/etc/profile
点击回车发现是有分发的,目前为止分发就结束了。
结束之后需要测试一下分发过来之后能不能看到效果。
[root@hadoop01-hadoop-2.7.6]#scp-r../hadoop-2.7.6/hadoop02:/user/local/
[root@hadoop01-hadoop-2.7.6]#scp-r../hadoop-2.7.6/hadoop03:/user/local/
输入[root@hadoop02~]#which hadoop
按回车键,可以看出是没有问题的。
检查这个的原因是一会启动的时候需要有这样的脚本。
2.hdfs
Hadoop 常用的模块有两个,其中一个是 hdfs,另一个是 MapReduce。
hdfs 是一个文件系统,在使用尤其是第一次使用的时候都要做一些格式化,也就是把系统里的数据清理干净。
保证文件系统是干净的之后,这样数据文件就不会因为这个问题影响到整个系统的使用。
格式化一般选择的是 hdfs namenode-format。因为 namenode 主管数据的存取。
[root@hadoop01-hadoop-2.7.6]#hdfs namenode-format
启动,就开始格式化了 。
格式化完之后就可以看到一些源数据:
[root@hadoop01-hadoop-2.7.6]#ll/home/hadoopdate/dfs/name/current/
点击回车:
total 0
drwxr-xr-x.2 root root 112 Mar 17 17:39 current【root@hadoop01 hadoop-2.7.6]# ll/home/hadoopdata/dfs/name/current/
total 16
-rw-r--r--. l root root 321 Mar 17 17:39 fsimage_0000000000000000000
-rw-r--r--. I root root 62 Mar 17 17:39 fsimage_0000000000000000000.md5
-rw-r--r--. l root root 2 Mar 17 17:39 seen_txid
-rw-r--r--. l root root 207 Mar 17 17:39 VERSION
[root@hadoop01 hadoop-2.7.6]#
[root@hadoop01 hadoop-2.7.6]#
[root@hadoop01 hadoop-2.7.6]#
Hadoop02/03 是没有的,所以就不看了。所以最终选择 hadoop01 上 hdfs 格式化。
格式化完成以后就可以启动了,启动分为很多种方式:
3.启动停止
启动方式:
全启动或停止:
start-all.sh
stop-all.sh
模块启动:
start-dfs.sh
stop-dfs.sh
start-yarn.sh
stop-yarn.sh
单个启动:
hadoop-daemon.sh start namenode/datanode/secondarynamenode hadoop-daemon.sh stop namenode/datanode/secondarynamenode hadoop-daemons.sh start namenode/datanode
hadoop-daemons.sh stop namenode/datanode
yarn-daemon.sh start resourcemanager/nodemanager
yarn-daemon.sh stop resourcemanager/nodemanager
yarn-daemons.sh start nodemanager
yarn-daemons.sh stop nodemanager
启动历史服务
mr-jobhistory-daemon.sh start historyserver
我们直接按照 start-all.sh 启动:
在第二个页面里面输入[root@hadoop01-hadoop-2.7.6]# start-all.sh
,点击回车。注意,这个要在配置环境变量之后才能随便用。
根据电脑的一些性质,启动的时间是不一定的。
启动之后,需要检测一下进程是否按照我们的规划启动,输入[root@hadoop01-hadoop-2.7.6]#jps
,回车,可以看出 NameNode、ResourceManager、NodeManager、DataNode 是没有问题的。
Jobhistoryserver 是没有单独启动的,如果单独启动的话要用[root@hadoop01-hadoop-2.7.6]# mr-jobhistory-daemon.sh start jobhistoryserver
,点击回车,显示报错。
先看第三个页面,输入 [root@hadoop02~]#jps
,回车,有 SecondaryNameNode、DataNode、NodeManager。
第四个页面,输入[root@hadoop03~]#jps,
回车,有 DataNode、NodeManager。
回到第二个页面,不能加 job,要写成[root@hadoop01-hadoop-2.7.6]# mr-jobhistory-daemon.sh start historyserver
回车,这样可以看到JobhistoryServer。
4.进程检测
我们用的是 jps 进行检测。
5.上传下载执行测试
文件系统最重要的功能是上传文件和下载文件,我们需要测试这两个过程能否成功进行。
进入第二个页面,输入[root@hadoop01-hadoop-2.7.6]#vi/home/words
回车,来创建一个文件。
Hello qianfeng
Hello flink
Wuhan jiayou hello wuhan wuhan hroe
先简单的写一些这样的单词。
回到第二个页面,输入[root@hadoop01-hadoop-2.7.6]#hdfs dfs-put/home/words/
这是本地磁盘的文件系统的目录。
输入[root@hadoop01-hadoop-2.7.6]#hdfs dfs-ls/
,点击回车
Found 2 items
Drwxrwx---. root supergroup 0 2020-03-17 17:42/tmp
-rw-r--r-- 3 root supergroup 63 2020-03-17 17:44 /words
【root@hadoop01 hadoop-2.7.6]#
我们可以看到已经有了 words 这个配置文件,
[root@hadoop01-hadoop-2.7.6]#hdfs dfs-get/words/home/word
,回车。
[root@hadoop01 hadoop-2.7.6]# ll/home/
total 431240
-rw-r--r--.1 root root 216745683 Mar 17 17:26 hadoop-2.7.6.tar.gz
Drwxr-xr-x. 3 root root 17 Mar 17 17:39 hadoopdata
-rw-r--r--. 1 root root 189784266 Mar 17 01:28 jdk-8u152-linux-x64.tar.gz
-rw-r--r--. 1 root root 63 Mar 17 17:45 word
-rw-r--r--. 1 root root 63 Mar 17 17:44 words
-rw-r--r--. 1 root root 35042811 Mar 17 17:08 zookeeper-3.4.10.tar.gz
[root@hadoop01 hadoop-2.7.6]#
这样就出现了 word 两个都是63个 mar。
下载下来之后改一下名字,改成 word。上传下载都可以改名。
整个来说文件系统是没有问题的,因为能进行正常的上传下载。
6.yarn测试
接下来要测试一下 yarn 的终极功能。也就是我们的作业能否正常跑,yarn 能否正常去启动它的资源。
yarn jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.jar wordcount /words/ out/00
首先 yarn 执行 jar 包,jar 包的位置在/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.6.
然后我们去运行,回车。
跑起来之后,我们需要等着他的结果,在等待的过程中,可以先去进行页面访问的测试。
7.页面访问测试
在浏览器中输入 hadoop01:50070/ 回车,是 NameNode
information。
Active 表示一个结果。
Live nodes 是三个节点。
Had
oop01/02/03 是都有的,都是正在服务的。后面是一些内存,容量,版本的情况。
再打开一个页面,输入 hadoop01:8088/ 回车,是 All Applications。
这个是 yarn 的页面。
可以看到各组数据也在执行中。
再打开一个页面,输入 hadoop01:19888/ 回车。也是有一个历史的进度。
点击第一个页面,它给我们提供了查看,就是网页。
也可以直接通过输入 [root@hadoop01-hadoop-2.7.6]#hdfs dfs-cat/out/00/*
,回车
flink 1
hello3
hroe 1
jiayou 1
qianfeng 1
wuhan 3
统计的结果
输入[root@hadoop01-hadoop-2.7.6]#cat/home/words
回车去查找文件的内容。可以看出是没有问题的。
所以 hadoop 的整个集群是测试成功的。
在这里给大家强调一下,如果在配置过程中出现了任何的问题,我们要想到去看日志:
在 hadoop01 里输入 [root@hadoop01-hadoop-2.7.6]#ll./logs/
回车就可以检查了。
Hadoop02 也是一样,输入[root@hadoop02~]#cd/usr/local/Hadoop-2.7.6/
输入[root@hadoop02-hadoop-2.7.6]#ll./logs/
回车,也去看一些对应的信息。
Hadoop03 也是如此。