Hadoop集群启动和停止方法

简介: Hadoop集群启动和停止方法

@[toc]
  
  
  

  

集群部署规划

  

先看一下集群是怎么规划的,这样就知道哪个服务器该开哪个了,不能瞎开啊!

  

hadoop102 hadoop103 hadoop104
HDFS NameNode
DataNode
DataNode SecondaryNameNode
DataNode
YARN NodeManager ResourceManager
NodeManager
NodeManager

  

注意点:

  • 所有服务器的 HDFS 都有 DataNode,YARN 都有 NodeManager
  • ResourceManager 很消耗内存,不能和 NameNode、SecondaryNameNode 配置在同一台机器上。(有钱人另说,电脑好啥都能干)
  • NameNode和SecondaryNameNode不能在同一台服务器上

  

  

----------------------------------------------

  

  

所有服务器一起启动 / 停止(常用)

  

什么叫一起启动 / 停止呢?
就是一下把hadoop102、hadoop103、hadoop104的HDFS或YARN全部启动 / 停止了,一箭三雕。

  

  

HDFS的启动 / 停止

  

在配置了NameNode的节点(hadoop102)整体启动HDFS

start-dfs.sh

  

整体停止HDFS

stop-dfs.sh

  

  

YARN的启动 / 停止

  

在配置了ResourceManager的节点(hadoop103)整体启动YARN

start-yarn.sh

  

整体停止YARN

stop-yarn.sh

  

  

注意:

如果配置了全局环境变量,那么在任意位置都能用,不必非要在opt/module/hadoop文件夹下的sbin目录下启动。(sbin目录下放着所有可执行文件,执行它们就能执行对应命令)
  

看看吧:

启动集群的命令在sbin目录下

[mq@hadoop102 sbin]$ pwd
/opt/module/hadoop-3.1.3/sbin
[mq@hadoop102 sbin]$ ll
总用量 108
-rwxr-xr-x. 1 mq mq 2756 9月 12 2019 distribute-exclude.sh
drwxr-xr-x. 4 mq mq 36 9月 12 2019 FederationStateStore
-rwxr-xr-x. 1 mq mq 1983 9月 12 2019 hadoop-daemon.sh
-rwxr-xr-x. 1 mq mq 2522 9月 12 2019 hadoop-daemons.sh
-rwxr-xr-x. 1 mq mq 1542 9月 12 2019 httpfs.sh
-rwxr-xr-x. 1 mq mq 1500 9月 12 2019 kms.sh
-rwxr-xr-x. 1 mq mq 1841 9月 12 2019 mr-jobhistory-daemon.sh
-rwxr-xr-x. 1 mq mq 2086 9月 12 2019 refresh-namenodes.sh
-rwxr-xr-x. 1 mq mq 1779 9月 12 2019 start-all.cmd
-rwxr-xr-x. 1 mq mq 2221 9月 12 2019 start-all.sh
-rwxr-xr-x. 1 mq mq 1880 9月 12 2019 start-balancer.sh
-rwxr-xr-x. 1 mq mq 1401 9月 12 2019 start-dfs.cmd
-rwxr-xr-x. 1 mq mq 5170 9月 12 2019 start-dfs.sh
-rwxr-xr-x. 1 mq mq 1793 9月 12 2019 start-secure-dns.sh
-rwxr-xr-x. 1 mq mq 1571 9月 12 2019 start-yarn.cmd
-rwxr-xr-x. 1 mq mq 3342 9月 12 2019 start-yarn.sh
-rwxr-xr-x. 1 mq mq 1770 9月 12 2019 stop-all.cmd
-rwxr-xr-x. 1 mq mq 2166 9月 12 2019 stop-all.sh
-rwxr-xr-x. 1 mq mq 1783 9月 12 2019 stop-balancer.sh
-rwxr-xr-x. 1 mq mq 1455 9月 12 2019 stop-dfs.cmd
-rwxr-xr-x. 1 mq mq 3898 9月 12 2019 stop-dfs.sh
-rwxr-xr-x. 1 mq mq 1756 9月 12 2019 stop-secure-dns.sh
-rwxr-xr-x. 1 mq mq 1642 9月 12 2019 stop-yarn.cmd
-rwxr-xr-x. 1 mq mq 3083 9月 12 2019 stop-yarn.sh
-rwxr-xr-x. 1 mq mq 1982 9月 12 2019 workers.sh
-rwxr-xr-x. 1 mq mq 1814 9月 12 2019 yarn-daemon.sh
-rwxr-xr-x. 1 mq mq 2328 9月 12 2019 yarn-daemons.sh

  
  
  

  

各个服务器组件独立启动 / 停止

  

什么叫独立启动 / 停止呢?
就是启动 / 停止 hadoop102中HDFS或YARN的各个组件,不会影响到 hadoop103和hadoop104 中相同的组件,独立的运行命令。

  

  

HDFS各组件的启动 / 停止

  

分别启动HDFS的组件

hdfs --daemon start namenode/datanode/secondarynamenode

HDFS的组件有namenode、datanode、secondarynamenode三个,所以有三个可选项。

  

分别停止HDFS的组件

hdfs --daemon stop namenode/datanode/secondarynamenode

  

  

YARN各组件的启动 / 停止

  

分别启动YARN的组件

yarn --daemon start resourcemanager/nodemanager

  

分别停止YARN的组件

yarn --daemon stop resourcemanager/nodemanager

  

  

一定要注意位置!!!
NameNode 在hadoop102中启动;ResourceManager 在hadoop103中启动;secondarynamenode 在hadoop104中启动。

  

启动后就可以进行一些查看了:

  • Web端查看HDFS的NameNode

 (a)浏览器中输入:http://hadoop102:9870
 (b)查看HDFS上存储的数据信息

  • Web端查看YARN的ResourceManager

 (a)浏览器中输入:http://hadoop103:8088
 (b)查看YARN上运行的Job信息

  
  
  

  

启动JobHistoryServer

  

hadoop102 启动历史服务器

mapred --daemon start historyserver

  

启动后就可以进行一些查看了:

  • 查看日志和程序的历史运行情况的地址
http://hadoop102:19888/jobhistory

  

  

--------------------👇⭐--------------------

  

  

编写脚本快捷开启集群

  

之前开启集群需要先开HDFS,再开YARN。并且开启时需要注意HDFS在hadoop102上开,而YARN在hadoop103上开。好麻烦啊!!!那么就编写一个脚本,让过程简单点吧!

  

在用户的 bin 目录下写脚本:

[mq@hadoop102 bin]$ pwd
/home/mq/bin
[mq@hadoop102 bin]$ vim myhadoop.sh
#!/bin/bash

if [ $# -lt 1 ]
then
    echo "No Args Input..."
    exit ;
fi

case $1 in
"start")
        echo " =================== 启动 hadoop集群 ==================="

        echo " --------------- 启动 hdfs ---------------"
        ssh hadoop102 "/opt/module/hadoop-3.1.3/sbin/start-dfs.sh"
        echo " --------------- 启动 yarn ---------------"
        ssh hadoop103 "/opt/module/hadoop-3.1.3/sbin/start-yarn.sh"
        echo " --------------- 启动 historyserver ---------------"
        ssh hadoop102 "/opt/module/hadoop-3.1.3/bin/mapred --daemon start historyserver"
;;
"stop")
        echo " =================== 关闭 hadoop集群 ==================="

        echo " --------------- 关闭 historyserver ---------------"
        ssh hadoop102 "/opt/module/hadoop-3.1.3/bin/mapred --daemon stop historyserver"
        echo " --------------- 关闭 yarn ---------------"
        ssh hadoop103 "/opt/module/hadoop-3.1.3/sbin/stop-yarn.sh"
        echo " --------------- 关闭 hdfs ---------------"
        ssh hadoop102 "/opt/module/hadoop-3.1.3/sbin/stop-dfs.sh"
;;
*)
    echo "Input Args Error..."
;;
esac

保存后退出,然后赋予脚本执行权限

[mq@hadoop102 bin]$ chmod 777 myhadoop.sh

  

  

启动集群

  

myhadoop.sh start

[mq@hadoop102 bin]$ myhadoop.sh start
=================== 启动 hadoop集群 ===================
- - - - - - - - - - - - - - - 启动 hdfs - - - - - - - - - - - - - - -
Starting namenodes on [hadoop102]
Starting datanodes
Starting secondary namenodes [hadoop104]
- - - - - - - - - - - - - - - 启动 yarn - - - - - - - - - - - - - - -
Starting resourcemanager
Starting nodemanagers
- - - - - - - - - - - - - - - 启动 historyserver - - - - - - - - - - - - - - -

  

  

停止集群

  

myhadoop.sh stop

[mq@hadoop102 bin]$ myhadoop.sh stop
=================== 关闭 hadoop集群 ===================
- - - - - - - - - - - - - - - 关闭 historyserver - - - - - - - - - - - - - - -
- - - - - - - - - - - - - - - 关闭 yarn - - - - - - - - - - - - - - -
Stopping nodemanagers
Stopping resourcemanager
- - - - - - - - - - - - - - - 关闭 hdfs - - - - - - - - - - - - - - -
Stopping namenodes on [hadoop102]
Stopping datanodes
Stopping secondary namenodes [hadoop104]

  
  
  

  

编写脚本快捷查看三台服务器 Java 进程

  

想要看每个服务器进程,就要到各自的服务器中输入 jps 命令,太麻烦了!

  

在用户的 bin 目录下写脚本:

[mq@hadoop102 bin]$ pwd
/home/mq/bin
[mq@hadoop102 bin]$ vim jspall
#!/bin/bash

for host in hadoop102 hadoop103 hadoop104
do
        echo =============== $host ===============
        ssh $host jps
done

保存后退出,然后赋予脚本执行权限

[mq@hadoop102 bin]$ chmod 777 jpsall

  

  

查看命令

  

jpsall

[mq@hadoop102 bin]$ jpsall
=============== hadoop102 ===============
20037 NameNode
20198 DataNode
20489 NodeManager
20665 JobHistoryServer
20956 Jps
=============== hadoop103 ===============
16706 DataNode
17027 NodeManager
16893 ResourceManager
17583 Jps
=============== hadoop104 ===============
16964 SecondaryNameNode
17052 NodeManager
17420 Jps
16847 DataNode

相关实践学习
消息队列RocketMQ版:基础消息收发功能体验
本实验场景介绍消息队列RocketMQ版的基础消息收发功能,涵盖实例创建、Topic、Group资源创建以及消息收发体验等基础功能模块。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
相关文章
|
26天前
|
存储 分布式计算 资源调度
Hadoop入门基础(三):如何巧妙划分Hadoop集群,全面提升数据处理性能?
Hadoop入门基础(三):如何巧妙划分Hadoop集群,全面提升数据处理性能?
|
17天前
|
分布式计算 Hadoop Devops
Hadoop集群配置https实战案例
本文提供了一个实战案例,详细介绍了如何在Hadoop集群中配置HTTPS,包括生成私钥和证书文件、配置keystore和truststore、修改hdfs-site.xml和ssl-client.xml文件,以及重启Hadoop集群的步骤,并提供了一些常见问题的故障排除方法。
31 3
Hadoop集群配置https实战案例
|
18天前
|
机器学习/深度学习 分布式计算 安全
Hadoop集群常见报错汇总
这篇博客总结了Hadoop集群中可能遇到的各种常见错误,包括Kerberos认证问题、配置错误、权限问题等,并为每个问题提供了详细的错误复现、原因分析以及相应的解决方案。
32 1
Hadoop集群常见报错汇总
|
18天前
|
资源调度 分布式计算 运维
Hadoop集群资源管理篇-资源调度器
详细介绍了Hadoop集群资源管理中的资源调度器,包括资源分配的概念、大数据运维工程师如何管理集群工作负载、资源调度器的背景、Hadoop提供的FIFO、容量调度器和公平调度器三种资源调度器的概述以及它们之间的对比。
53 4
|
18天前
|
分布式计算 监控 Hadoop
监控Hadoop集群实战篇
介绍了监控Hadoop集群的方法,包括监控Linux服务器、Hadoop指标、使用Ganglia监控Hadoop集群、Hadoop日志记录、通过Hadoop的Web UI进行监控以及其他Hadoop组件的监控,并提供了相关监控工具和资源的推荐阅读链接。
35 2
|
23天前
|
机器学习/深度学习 存储 分布式计算
Hadoop高可用集群搭建
Hadoop高可用集群搭建
|
1月前
|
存储 分布式计算 监控
什么是 Hadoop 集群?
【8月更文挑战第12天】
56 4
|
21天前
|
存储 分布式计算 负载均衡
|
24天前
|
存储 分布式计算 资源调度
Hadoop集群的扩展性与容错能力
【8月更文第28天】Hadoop 是一种用于处理和存储大规模数据集的开源软件框架。它由两个核心组件构成:Hadoop 分布式文件系统 (HDFS) 和 MapReduce 计算框架。Hadoop 的设计考虑了可扩展性和容错性,使其成为大规模数据处理的理想选择。
38 0
|
24天前
|
SQL 分布式计算 数据可视化
基于Hadoop的大数据可视化方法
【8月更文第28天】在大数据时代,有效地处理和分析海量数据对于企业来说至关重要。Hadoop作为一个强大的分布式数据处理框架,能够处理PB级别的数据量。然而,仅仅完成数据处理还不够,还需要将这些数据转化为易于理解的信息,这就是数据可视化的重要性所在。本文将详细介绍如何使用Hadoop处理后的数据进行有效的可视化分析,并会涉及一些流行的可视化工具如Tableau、Qlik等。
56 0