Doris集群启停脚步

Apache Doris 是一个基于 MPP(大规模并行处理)架构的高性能、实时的分析型数据库。在 Doris 中,FE(Frontend)、BE(Backend)和 Broker 组件有特定的启动和关闭顺序,下面详细介绍一下。

一、启动顺序

通常按照 FE -> BE -> Broker 的顺序启动,以下是对该顺序的详细解释:

  1. 启动 FE
    • FE 是 Doris 的前端节点,负责元数据管理、查询规划、权限管理等功能,是整个系统的核心控制节点。
    • 只有 FE 正常启动并完成初始化后,才能为后续的 BE 和 Broker 提供元数据服务和管理接口。如果 FE 未启动,BE 和 Broker 无法与集群建立有效的连接和通信。
    • 启动 FE 的命令示例(以单节点为例):
./bin/start_fe.sh --daemon
  1. 启动 BE
    • BE 是 Doris 的后端节点,负责数据存储和查询执行。
    • 在 FE 启动并正常运行后,BE 需要向 FE 进行注册,获取元数据信息,了解集群的拓扑结构和数据分布情况。只有成功注册到 FE 后,BE 才能参与到数据存储和查询处理的工作中。
    • 启动 BE 的命令示例:
./bin/start_be.sh --daemon
  1. 启动 Broker
    • Broker 是 Doris 提供的外部存储访问服务,用于读取和写入 HDFS、S3 等外部存储系统的数据。
    • 当 FE 和 BE 都正常运行后,才需要启动 Broker。因为 Broker 主要是为 FE 和 BE 提供外部数据访问的支持,在 FE 进行查询规划和 BE 执行查询时,如果涉及到外部存储的数据,会调用 Broker 进行数据的读写操作。
    • 启动 Broker 的命令示例(以 HdfsBroker 为例):
./bin/start_broker.sh --daemon

二、关闭顺序

关闭顺序与启动顺序相反,即 Broker -> BE -> FE,以下是详细说明:

  1. 关闭 Broker
    • 由于 Broker 主要是为 FE 和 BE 提供外部数据访问支持,在关闭系统时,首先关闭 Broker 不会影响 FE 和 BE 本身的数据存储和元数据管理。
    • 关闭 Broker 可以避免在后续关闭 FE 和 BE 过程中,可能出现的 Broker 与 FE、BE 之间的通信异常问题。
    • 关闭 Broker 的命令示例(以 HdfsBroker 为例):
./bin/stop_broker.sh
  1. 关闭 BE
    • BE 负责数据存储和查询执行,在关闭 Broker 后,关闭 BE 可以确保数据的一致性和完整性。
    • 在 BE 关闭过程中,会将内存中的数据刷新到磁盘,并进行必要的清理工作。关闭 BE 后,系统将不再进行数据的存储和查询处理。
    • 关闭 BE 的命令示例:
./bin/stop_be.sh
  1. 关闭 FE
    • FE 是整个系统的核心控制节点,最后关闭 FE 可以确保在关闭过程中,对整个集群的状态进行有序管理。
    • FE 会在关闭前记录必要的元数据信息,保证下次启动时能够正常恢复。
    • 关闭 FE 的命令示例:
./bin/stop_fe.sh

遵循上述启动和关闭顺序,可以确保 Doris 集群的稳定运行和数据的安全性。

三、集群启停脚本

集群角色规划:

节点(node1)节点(node2)节点(node3)
FE(leader)fe(follower)fe(observer)
BEBEBE
BROKERBROKERBROKER

3.1 集群启动脚本

#! /bin/bash

echo "------正在启动Doris集群------"
SERVERS="node1 node2 node3"
MASTER="node1"
DORIS_HOME="/opt/module/apache-doris-0.15.0"

start_fe() {
    for SERVER in $SERVERS
    do
         echo "------正在启动${SERVER}上的FE进程------"

         # Start MASTER role
         if [ "$SERVER" = "$MASTER" ]; then
            ssh $SERVER "${DORIS_HOME}/fe/bin/start_fe.sh --daemon;jps -m"
         else
            # if not MASTER role, start it's Follower or Observer
            ssh $SERVER "${DORIS_HOME}/fe/bin/start_fe.sh --helper $MASTER:9010 --daemon; jps -m"
         fi
    done
}

start_be() {
    echo "------正在启动${SERVER}上的BE进程------"

    for SERVER in $SERVERS
    do
         ssh $SERVER "${DORIS_HOME}/be/bin/start_be.sh --daemon; ps -aux |grep _be"
    done
}

start_broker() {
    echo "------正在启动${SERVER}上的Broker进程------"

    for SERVER in $SERVERS
    do
         ssh $SERVER "${DORIS_HOME}/apache_hdfs_broker/bin/start_broker.sh --daemon; jps -m"
    done
}

echo "------启动FE集群------"
start_fe

echo "------启动BE集群------"
start_be

echo "------启动Broker节点------"
start_broker

3.2 集群关闭脚本

#! /bin/bash

echo "------正在关闭Doris集群------"
SERVERS="node1 node2 node3"
MASTER="node1"
DORIS_HOME="/opt/module/apache-doris-0.15.0"

stop_broker() {
    echo "------正在关闭${SERVER}上的Broker进程------"

    for SERVER in $SERVERS
    do
         ssh $SERVER "${DORIS_HOME}/apache_hdfs_broker/bin/stop_broker.sh"
    done
}

stop_be() {
    echo "------正在关闭${SERVER}上的BE进程------"

    for SERVER in $SERVERS
    do
         ssh $SERVER "${DORIS_HOME}/be/bin/stop_be.sh"
    done

    #检查be进程是否关闭
    ps -aux|grep _be
}

stop_fe() {
    for SERVER in $SERVERS
    do
         echo "------正在关闭${SERVER}上的FE进程------"
         ssh $SERVER "${DORIS_HOME}/fe/bin/stop_fe.sh"
    done
}

echo "------关闭Broker节点------"
stop_broker

echo "------关闭BE集群------"
stop_be

echo "------关闭FE集群------"
stop_fe
### 关于Apache Doris集群的安装和部署指南 #### 一、背景介绍 Apache Doris 是一种基于MPP架构的OLAP数据库,因其高效的数据查询能力和便捷的操作特性而受到广泛欢迎。为了帮助更多有兴趣了解或测试Doris的人士减少入门障碍,社区提供了三种不同的构建与安装方案供选择,并附带详细的文档和支持材料[^1]。 #### 二、准备工作 在开始之前,请确认已经准备好如下条件: - 支持Linux系统的服务器若干台; - 已经获取到官方发布的最新版Doris源码包或者是预编译好的二进制文件; - 对目标机器拥有管理员权限以便执行必要的配置更改操作。 #### 三、环境准备 对于那些可能需要频繁更换工作地点或是网络连接不稳定的情况下,建议采用NAT模式来设置虚拟机中的网卡,这样可以避免因为物理位置变化而导致IP地址冲突等问题的发生[^4]。 #### 四、具体步骤 以下是简化后的安装流程概述: ##### 1. 下载软件包 前往官方网站下载页面找到适合自己平台版本的压缩包并解压至指定目录下。 ##### 2. 修改配置文件 编辑`conf/fe.conf` 和 `be/conf/be.conf`, 设置合适的参数值比如端口号, 日志级别等. ##### 3. 初始化元数据存储服务FE(Frontend) 启动前端节点前先初始化内部使用的Meta Store. ```bash ./bin/start_fe.sh --daemon=false --init=true ``` ##### 4. 启动BE(Backend)节点 依次开各个后端计算单元,在每台主机上运行命令: ```bash ./bin/start_be.sh --daemon=false ``` ##### 5. 添加新加入的BE实例到集群中 登录任意一台已有的FE节点通过SQL语句完成注册新增加的服务实例。 ```sql ALTER SYSTEM ADD BACKEND "ip_address"; ``` ##### 6. 测试验证 最后可以通过简单的SELECT查询来进行功能性的检验,确保所有组件正常协作运作。 以上就是一套较为完整的针对初学者友好的Doris集群快速搭建方法论。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值