如何启动和关闭分布式集群

分布式集群是由多个节点组成的系统,可以提供高性能、高可用、高扩展的数据处理能力。本文介绍如何启动和关闭一个包含hadoop、zookeeper、hbase和spark的分布式集群。

目录

启动顺序

关闭顺序

启动和关闭hadoop

启动hadoop

关闭hadoop

查看网页

启动和关闭zookeeper

启动zookeeper

关闭zookeeper

查看状态

启动和关闭hbase

启动hbase

关闭hbase

查看网页

验证hbase

启动和关闭spark

启动spark

关闭spark

启动Spark History Server

查看网页

验证spark


 

启动顺序

启动分布式集群的顺序是:

  • 先启动hadoop
  • 再启动zookeeper
  • 最后启动hbase和spark

这样可以保证各个组件之间的依赖关系和协调关系。

关闭顺序

关闭分布式集群的顺序是:

  • 先关闭hbase和spark
  • 再关闭zookeeper
  • 最后关闭hadoop

这样可以避免数据丢失和服务异常。

启动和关闭hadoop

hadoop是一个分布式文件系统和计算框架,它提供了存储和处理海量数据的能力。hadoop主要由两个部分组成:HDFS(Hadoop Distributed File System)和YARN(Yet Another Resource Negotiator)。

启动hadoop

启动hadoop之前,需要先初始化hadoop的namenode,这是HDFS的主节点,负责管理元数据。只有在第一次启动时才需要执行这一步,以后就不用了。在namenode所在的节点上执行以下命令:

# 初始化namenode
hadoop namenode -format

然后,在namenode所在的节点上执行以下命令,启动HDFS:

# 启动HDFS
start-dfs.sh

接着,在resourcemanager所在的节点上执行以下命令,启动YARN:

# 启动YARN
start-yarn.sh

最后,可以在任意节点上执行以下命令,查看各个进程是否正常运行:

# 查看进程
jps

也可直接快捷启动HDFS和YARN:

start-all.sh

 如果输出结果中包含以下进程,则说明启动成功:

  • NameNode:HDFS的主节点
  • DataNode:HDFS的从节点,负责存储数据块
  • ResourceManager:YARN的主节点,负责管理资源和调度任务
  • NodeManager:YARN的从节点,负责执行任务

关闭hadoop

关闭hadoop时,只需要在任意节点上执行以下命令即可:

# 关闭hadoop
stop-all.sh

这个命令会自动停止所有的HDFS和YARN进程。

查看网页

如果想要查看hadoop的运行状态和数据情况,可以通过浏览器访问以下网址:

  • http://192.168.1.100:9870/:这是namenode的网页界面,可以查看HDFS的概况、文件系统、快照等信息。
  • http://192.168.1.100:8088/cluster/:这是resourcemanager的网页界面,可以查看YARN的概况、应用、队列等信息。

其中,192.168.1.100是namenode和resourcemanager所在节点的IP地址,如果你的IP地址不同,请自行替换。

启动和关闭zookeeper

zookeeper是一个分布式协调服务,它提供了一致性、可靠性、原子性等特性,可以用于实现分布式锁、配置管理、服务发现等功能。zookeeper由多个服务器组成一个集群,每个服务器都有一个唯一的ID,并且其中一个服务器会被选举为leader,负责处理客户端的请求。

启动zookeeper

启动zookeeper时,需要在每个服务器上执行以下命令:

# 启动zookeeper
zkServer.sh start

这个命令会在后台运行zookeeper,并输出日志到指定的目录。如果想要在前台运行zookeeper,并查看控制台输出的信息,可以执行以下命令:

# 启动zookeeper并输出日志到控制台
zkServer.sh start-foreground

关闭zookeeper

关闭zookeeper时,需要在每个服务器上执行以下命令:

# 关闭zookeeper
zkServer.sh stop

这个命令会停止zookeeper的进程,并删除相关的文件。

查看状态

查看zookeeper的状态时,有两种方法:

  • 在每个服务器上执行以下命令,查看本地的状态:
# 查看本地状态
zkServer.sh status

这个命令会输出本地服务器的ID、角色(leader或follower)、连接数等信息。

  • 在任意节点上执行以下命令,查看远程的状态:
# 查看远程状态
nc -v 192.168.1.100 2181
stat

这个命令会连接到指定的服务器(192.168.1.100是服务器的IP地址,2181是zookeeper的默认端口),并发送stat命令,然后输出远程服务器的ID、角色、连接数等信息。

启动和关闭hbase

hbase是一个分布式的列式数据库,它基于HDFS和zookeeper,提供了高性能、高可用、高扩展的数据存储和查询能力。hbase主要由两个部分组成:HMaster和HRegionServer。

启动hbase

启动hbase时,需要先确保hadoop和zookeeper已经启动,并且配置文件中指定了正确的HDFS和zookeeper地址。然后,在任意节点上执行以下命令即可:

# 启动hbase
start-hbase.sh

这个命令会自动启动一个HMaster进程和多个HRegionServer进程。HMaster是hbase的主节点,负责管理元数据和协调任务。HRegionServer是hbase的从节点,负责存储和处理数据。启动hbase时,会根据配置文件中指定的master节点来启动HMaster进程,如果没有指定,则随机选择一个节点。

关闭hbase

关闭hbase时,需要先确保所有的客户端连接已经断开,并且没有正在运行的任务。然后,在任意节点上执行以下命令即可:

# 关闭hbase
stop-hbase.sh

这个命令会自动停止所有的HMaster和HRegionServer进程。关闭hbase时,要保证HMaster节点没有挂掉,否则可能导致数据丢失或服务异常。

查看网页

如果想要查看hbase的运行状态和数据情况,可以通过浏览器访问以下网址:

  • http://192.168.1.100:16010/:这是HMaster的网页界面,可以查看hbase的概况、表、快照等信息。

其中,192.168.1.100是HMaster所在节点的IP地址,如果你的IP地址不同,请自行替换。

验证hbase

如果想要验证hbase是否正常工作,可以通过交互式shell来操作hbase。在任意节点上执行以下命令,打开交互式shell:

# 打开交互式shell
hbase shell

然后,在交互式shell中输入各种命令,例如:

# 列出所有表
list

# 创建一个表test,有两个列族cf1和cf2
create 'test', 'cf1', 'cf2'

# 插入一条数据到test表中,行键为row1,列族为cf1,列为c1,值为v1
put 'test', 'row1', 'cf1:c1', 'v1'

# 查询test表中row1行的所有数据
get 'test', 'row1'

# 关闭然后删除test表
disable 'test'
drop 'test'

这些命令可以对hbase进行基本的增删改查操作。如果想要了解更多的命令和用法,可以参考官方文档或者输入help命令。

启动和关闭spark

spark是一个分布式的计算框架,它基于HDFS和YARN,提供了高性能、高可用、高扩展的数据处理能力。spark可以运行在多种模式下,例如standalone、yarn、mesos等。在本文中,我将介绍如何在yarn模式下启动和关闭spark。

启动spark

启动spark时,只需要在主节点上执行以下命令即可:

# 启动spark
start-all.sh

这个命令会自动启动一个SparkMaster进程和多个SparkWorker进程。SparkMaster是spark的主节点,负责管理资源和调度任务。SparkWorker是spark的从节点,负责执行任务。启动spark时,会根据配置文件中指定的master节点来启动SparkMaster进程,如果没有指定,则随机选择一个节点。

关闭spark

关闭spark时,只需要在主节点上执行以下命令即可:

# 关闭spark
stop-all.sh

这个命令会自动停止所有的SparkMaster和SparkWorker进程。

启动Spark History Server

Spark History Server是一个可选的组件,它可以提供历史任务的监控和分析功能。如果想要启动Spark History Server,需要在主节点上执行以下命令:

# 启动Spark History Server
start-history-server.sh

这个命令会在后台运行Spark History Server,并输出日志到指定的目录。

查看网页

如果想要查看spark的运行状态和数据情况,可以通过浏览器访问以下网址:

  • http://192.168.1.100:8080/:这是SparkMaster的网页界面,可以查看spark的概况、应用、工作、执行器等信息。
  • http://192.168.1.100:18080/:这是Spark History Server的网页界面,可以查看历史任务的概况、应用、作业、阶段等信息。

其中,192.168.1.100是主节点的IP地址,如果你的IP地址不同,请自行替换。

验证spark

如果想要验证spark是否正常工作,可以通过提交一个示例程序来测试spark。在任意节点上的spark根目录执行以下命令,提交一个计算圆周率的程序:

# 提交一个计算圆周率的程序
bin/spark-submit --class org.apache.spark.examples.SparkPi --master yarn --deploy-mode client ./examples/jars/spark-examples_2.12-3.2.3.jar 10

这个命令会在客户端模式下提交一个程序到yarn上,并输出结果到控制台。如果输出结果中包含以下内容,则说明运行成功:

# 输出结果
Pi is roughly 3.1418

如果想要在集群模式下提交一个程序到yarn上,并在yarn上查看结果,可以执行以下命令:

# 提交一个计算圆周率的程序
bin/spark-submit --class org.apache.spark.examples.SparkPi --master yarn --deploy-mode cluster ./examples/jars/spark-examples_2.12-3.2.3.jar 10

这个命令会在集群模式下提交一个程序到yarn上,并输出结果到日志文件中。可以通过yarn的网页界面或者日志目录来查看结果。

你可能感兴趣的:(分布式存储与并行处理,hadoop,大数据,hbase,分布式,spark)