Hadoop-集群运行
前提:需要在上节Hadoop文件参数配置的基础上完成
步骤一、NameNode 格式化
第一次启动 HDFS 时要进行格式化,否则会缺失 DataNode 进程。另外,只要运行过 HDFS,Hadoop 的工作目录(本书设置为/usr/local/src/hadoop/tmp)就会有数据,如果需要重新格式化,则在格式化之前一定要先删除工作目录下的数据,否则格式化时会出问题。
(master节点)
[root@master ~]# su - hadoop
[hadoop@master ~]$ cd /usr/local/src/hadoop/
[hadoop@master hadoop]$ ./bin/hdfs namenode -format
22/04/01 17:37:26 INFO namenode.NameNode: STARTUP_MSG:
/************************************************************
STARTUP_MSG: Starting NameNode
STARTUP_MSG: host = master/192.168.100.10
STARTUP_MSG: args = [-format]
STARTUP_MSG: version = 2.7.1
……
……
22/04/01 17:37:26 INFO common.Storage: Storage directory /usr/local/src/hadoop/dfs/name has been successfully formatted.
22/04/01 17:37:26 INFO namenode.NNStorageRetentionManager: Going to retain 1 images with txid >= 0
22/04/01 17:37:26 INFO util.ExitUtil: Exiting with status 0
22/04/01 17:37:26 INFO namenode.NameNode: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down NameNode at master/192.168.100.10
************************************************************/
以上出现successfully说明格式化成功
步骤二、启动 NameNode
(master节点)
[hadoop@master hadoop]$ hadoop-daemon.sh start namenode
starting namenode, logging to /usr/local/src/hadoop/logs/hadoop-hadoop-namenode-master.example.com.out
[hadoop@master hadoop]$ jps
41732 NameNode
41801 Jps
看到NameNode说明成功
步骤三、启动 SecondaryNameNode
(master节点)
[hadoop@master hadoop]$ hadoop-daemon.sh start secondarynamenode
starting secondarynamenode, logging to /usr/local/src/hadoop/logs/hadoop-hadoop-secondarynamenode-master.example.com.out
[hadoop@master hadoop]$ jps
41732 NameNode
41877 Jps
41834 SecondaryNameNode
看到SecondaryNameNode说明成功
步骤四、slave 启动 DataNode
(slave1和slave2节点)
[root@slave1 ~]# su - hadoop
[hadoop@slave1 ~]$ hadoop-daemon.sh start datanode
starting datanode, logging to /usr/local/src/hadoop/logs/hadoop-hadoop-datanode-slave1.example.com.out
[hadoop@slave1 ~]$ jps
41552 DataNode
41627 Jps
[root@slave2 ~]# su - hadoop
[hadoop@slave2 ~]$ hadoop-daemon.sh start datanode
starting datanode, logging to /usr/local/src/hadoop/logs/hadoop-hadoop-datanode-slave2.example.com.out
[hadoop@slave2 ~]$ jps
4161 DataNode
4236 Jps
看到DataNode说明成功
步骤五、查看 HDFS 的报告
(master节点)
[hadoop@master hadoop]$ hdfs dfsadmin -report
Configured Capacity: 34879832064 (32.48 GB)
Present Capacity: 26675437568 (24.84 GB)
DFS Remaining: 26675429376 (24.84 GB)
DFS Used: 8192 (8 KB)
DFS Used%: 0.00%
Under replicated blocks: 0
Blocks with corrupt replicas: 0
Missing blocks: 0
Missing blocks (with replication factor 1): 0
-------------------------------------------------
Live datanodes (2):
Name: 192.168.100.20:50010 (slave1)
Hostname: slave1
Decommission Status : Normal
Configured Capacity: 16640901120 (15.50 GB)
DFS Used: 4096 (4 KB)
Non DFS Used: 4275404800 (3.98 GB)
DFS Remaining: 12365492224 (11.52 GB)
DFS Used%: 0.00%
DFS Remaining%: 74.31%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Fri Apr 01 17:41:17 CST 2022
Name: 192.168.100.30:50010 (slave2)
Hostname: slave2
Decommission Status : Normal
Configured Capacity: 18238930944 (16.99 GB)
DFS Used: 4096 (4 KB)
Non DFS Used: 3928989696 (3.66 GB)
DFS Remaining: 14309937152 (13.33 GB)
DFS Used%: 0.00%
DFS Remaining%: 78.46%
Configured Cache Capacity: 0 (0 B)
Cache Used: 0 (0 B)
Cache Remaining: 0 (0 B)
Cache Used%: 100.00%
Cache Remaining%: 0.00%
Xceivers: 1
Last contact: Fri Apr 01 17:41:17 CST 2022
步骤六、浏览器查看节点状态
需要在windows真机上执行
1、进入C:\Windows\sytstem32\drivers\etc\
2、把此目录下的hosts文件拖到桌面上
3、右键打开此文件加入IP与主机名的映射关系
192.168.100.10 master master.example.com
192.168.100.20 slave1 slave1.example.com
192.168.100.30 slave2 slave2.example.com
4、保存后拖回原位置
在浏览器访问:http://master:50070,可以查看NameNode和DataNode 信息

在浏览器访问: http://master:50090,可以查看 SecondaryNameNode 信息

步骤七、配置免密登录
启动 HDFS之前需要配置 SSH 免密码登录,否则在启动过程中系统将多次要求确认连接和输入 Hadoop 用户密码。
(master节点)
[hadoop@master ~]$ ssh-keygen -t rsa
……
[hadoop@master ~]$ ssh-copy-id slave1
……
[hadoop@master ~]$ ssh-copy-id slave2
……
[hadoop@master ~]$ ssh-copy-id master
……
步骤八、启动dfs 和 yarn
(master节点)
[hadoop@master ~]$ stop-dfs.sh
……
[hadoop@master ~]$ start-dfs.sh
……
[hadoop@master ~]$ start-yarn.sh
……
[hadoop@master ~]$ jps
45284 SecondaryNameNode
45702 Jps
45080 NameNode
45435 ResourceManager
(slave1和slave2节点)
[hadoop@slave1 ~]$ jps
42986 DataNode
43213 Jps
43102 NodeManager
[hadoop@slave2 ~]$ jps
42986 DataNode
43213 Jps
43102 NodeManager
在master上看到ResourceManager,并且在slave上看到NodeManager就说明启动成功
步骤九、运行WordCount测试
运行 MapReduce 程序,需要先在 HDFS 文件系统中创建数据输入目录,存放输入数据。
注意:创建的/input 目录是在 HDFS 文件系统中,只能用 HDFS 命令查看和操作。
(master节点)
[hadoop@master ~]$ hdfs dfs -mkdir /input
[hadoop@master ~]$ hdfs dfs -ls /
Found 1 items
drwxr-xr-x - hadoop supergroup 0 2022-04-01 19:50 /input
[hadoop@master ~]$ mkdir ~/input
[hadoop@master ~]$ vi input/data.txt
Hello World
Hello Hadoop
Hello Huasan
将输入数据文件复制到 HDFS 的/input 目录中
[hadoop@master ~]$ hdfs dfs -put ~/input/data.txt /input
[hadoop@master ~]$ hdfs dfs -cat /input/data.txt
Hello World
Hello Hadoop
Hello Huasan
运行 WordCount
注意:数据输出目录/output不能提前创建,否则会报错
(master节点)
[hadoop@master ~]$ hadoop jar /usr/local/src/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.1.jar wordcount /input/data.txt /output
22/04/01 19:58:10 INFO client.RMProxy: Connecting to ResourceManager at /0.0.0.0:8032
22/04/01 19:58:10 INFO input.FileInputFormat: Total input paths to process : 1
22/04/01 19:58:10 INFO mapreduce.JobSubmitter: number of splits:1
22/04/01 19:58:11 INFO mapreduce.JobSubmitter: Submitting tokens for job: job_1648813571523_0001
22/04/01 19:58:11 INFO impl.YarnClientImpl: Submitted application application_1648813571523_0001
22/04/01 19:58:11 INFO mapreduce.Job: The url to track the job: http://master:8088/proxy/application_1648813571523_0001/
22/04/01 19:58:11 INFO mapreduce.Job: Running job: job_1648813571523_0001
22/04/01 19:58:17 INFO mapreduce.Job: Job job_1648813571523_0001 running in uber mode : false
22/04/01 19:58:17 INFO mapreduce.Job: map 0% reduce 0%
22/04/01 19:58:20 INFO mapreduce.Job: map 100% reduce 0%
22/04/01 19:58:25 INFO mapreduce.Job: map 100% reduce 100%
22/04/01 19:58:26 INFO mapreduce.Job: Job job_1648813571523_0001 completed successfully
22/04/01 19:58:26 INFO mapreduce.Job: Counters: 49
File System Counters
FILE: Number of bytes read=56
……
出现successfully说明运行成功
在浏览器访问: http://master:8088,可以看到运行成功

在浏览器访问: http://master:50070,在 Utilities 菜单中选择 Browse the file system,可以查看 HDFS 文件系统内容。

查看 output 目录,文件_SUCCESS 表示处理成功,处理的结果存放在 part-r-00000 文件中。

也可以直接使用命令查看 part-r-00000 文件内容
(master节点)
[hadoop@master ~]$ hdfs dfs -cat /output/part-r-00000
Hadoop 1
Hello 3
Huasan 1
World 1
步骤十、停止 Hadoop
使用stop-all.sh一条命令就可以全部停止
(master节点)
[hadoop@master ~]$ stop-all.sh
This script is Deprecated. Instead use stop-dfs.sh and stop-yarn.sh
Stopping namenodes on [master]
master: stopping namenode
192.168.100.30: stopping datanode
192.168.100.20: stopping datanode
Stopping secondary namenodes [0.0.0.0]
0.0.0.0: stopping secondarynamenode
stopping yarn daemons
stopping resourcemanager
192.168.100.20: stopping nodemanager
192.168.100.30: stopping nodemanager
192.168.100.20: nodemanager did not stop gracefully after 5 seconds: killing with kill -9
192.168.100.30: nodemanager did not stop gracefully after 5 seconds: killing with kill -9
no proxyserver to stop
查看 JAVA 进程
[hadoop@master ~]$ jps
46683 Jps
[hadoop@slave1 ~]$ jps
43713 Jps
[hadoop@slave2 ~]$ jps
41702 Jps
声明:未经许可,不得转载
Hadoop-集群运行的更多相关文章
- Hadoop集群运行JNI程序
要在Hadoop集群运行上运行JNI程序,首先要在单机上调试程序直到可以正确运行JNI程序,之后移植到Hadoop集群就是水到渠成的事情. Hadoop运行程序的方式是通过jar包,所以我们需要将所有 ...
- 编写hadoop程序,并打包jar到hadoop集群运行
windows环境下编写hadoop程序 新建:File->new->Project->Maven->next GroupId 和ArtifactId 随便写(还是建议规范点) ...
- 简单说明hadoop集群运行三种模式和配置文件
Hadoop的运行模式分为3种:本地运行模式,伪分布运行模式,集群运行模式,相应概念如下: 1.独立模式即本地运行模式(standalone或local mode)无需运行任何守护进程(daemon) ...
- 编写hadoop程序并打成jar包上传到hadoop集群运行
准备工作: 1. hadoop集群(我用的是hadoop-2.7.3版本),这里hadoop有两种:1是编译好的hadoop-2.7.3:2是源代码hadoop-2.7.3-src: 2. 自己的机器 ...
- 攻城狮在路上(陆)-- 提交运行MapReduce程序到hadoop集群运行
此种方式不能直接在eclipse中调试代码. 首先需要在src下放置服务器上的hadoop配置文件:core-site.xml\yarn-site.xml\hdfs-site.xml\mapred-s ...
- hadoop集群运行jps命令以后Datanode节点未启动的解决办法
出现该问题的原因:在第一次格式化dfs后,启动并使用了hadoop,后来又重新执行了格式化命令(hdfs namenode -format),这时namenode的clusterID会重新生成,而da ...
- hadoop集群运行dedup实现去重功能
一.配置开发环境1.我们用到的IDE是eclipse.要用它进行hadoop编程,要给eclipse安装hadoop自带的插件.(有的版本以源码提供插件,需要用户根据需要自己编译)2.用到的eclip ...
- Hadoop集群运行
在Hadoop文件参数配置完成之后 在master上操作 su - hadoop cd /usr/local/src/hadoop/ ./bin/hdfs namenode -format hadoo ...
- 基于Docker快速搭建多节点Hadoop集群--已验证
Docker最核心的特性之一,就是能够将任何应用包括Hadoop打包到Docker镜像中.这篇教程介绍了利用Docker在单机上快速搭建多节点 Hadoop集群的详细步骤.作者在发现目前的Hadoop ...
- 大数据系列(1)——Hadoop集群坏境搭建配置
前言 关于时下最热的技术潮流,无疑大数据是首当其中最热的一个技术点,关于大数据的概念和方法论铺天盖地的到处宣扬,但其实很多公司或者技术人员也不能详细的讲解其真正的含义或者就没找到能被落地实施的可行性方 ...
随机推荐
- laravel 7 H-ui模板ajax批删
1,HTML页面写一个button按钮 <a href="javascript:;" onclick="deleteAll()" class=" ...
- linux下编译安装php5.6出现 configure: error: Cannot find MySQL header files under /usr/local/mysql.
#yum install gcc gcc-c++ libxml2 libxml2-devel libjpeg-devel libpng-devel freetype-devel openssl-dev ...
- Linux命令 之 “救命稻草”
一.前言 虽然Linux操作系统图形界面已经退出,但由于大量的操作在终端操作比较快捷,所以,对linux命令的使用必不可少.在linux系统日常的学习和工作中,常常会出现有些命令忘记了或者该命令的参数 ...
- Java运算符 算术运算法
运算符 算术运算法:+,-,*,/,%,++,– 复制运算符:= 关系运算符:>,<,>=,<=,==,!= instanceof 逻辑运算符:&&,||,! ...
- LGP2726题解
当初 mark 这道题还是因为看到是黑,感觉比较水,然后它现在掉紫了. 不过这题题解居然满了,写一篇给自己看吧. 首先我们有一个思路,就是割掉一条边,然后分别求两颗树的重心. 等等,这好像是CSP原题 ...
- ArcMap操作随记(4)
1.统计各省份公路长度 [标识]→[汇总]→[视图][创建] 2.用户登录分配 [创建渔网]→[连接] 3.城市超市影响范围 [创建泰森多边形]→[标识]→[汇总] 4.三维可视化分析 [构造视线]→ ...
- java-计算机
计算机 硬件 装机:CPU 内存 主板 IO设备(input output) 冯诺依曼体系结构 CPU读取数据在运算器中运算传输到存储器,控制器控制输出结果. 软件
- 阿里云ECS服务器(G5)安装配置docker
镜像下载.域名解析.时间同步请点击 阿里云开源镜像站 前言 服务器配置:阿里云ECS服务器(G5服务器3年2核8G内存80G云盘),安装的是CentOS,内核信息:5.10.60-9.al8.x86_ ...
- 《前端运维》三、Docker--1镜像与容器
一.基本概念 如果我们想要让软件运行起来,首先要保证操作系统的设置,其次还需要依赖各种组件和库的正确安装.那么虚拟机就是一种带环境安装的一种解决方案,它可以实现在一种操作系统里面运行另外一种操作系统, ...
- Linux磁盘分区管理-LVM回顾
LVM(逻辑分区管理)的几个概念:PV(物理卷),VG(卷组),LV(逻辑卷),PE(物理区域),LE(逻辑区域),其中PV, VG, LV 三者之间的关系如下图 : 物理存储介质:这里指系统的存储设 ...