starrocks批量启停脚本

#!/bin/bash

# 定义 StarRocks 安装目录
STARROCKS_HOME="/path/to/starrocks"

# 定义 FE 和 BE 节点列表
FE_NODES=("fe_node1_ip" "fe_node2_ip" "fe_node3_ip")
BE_NODES=("be_node1_ip" "be_node2_ip" "be_node3_ip")

# 定义日志文件
LOG_FILE="starrocks_stop.log"

# 记录日志函数
log() {
    local timestamp=$(date +"%Y-%m-%d %H:%M:%S")
    echo "$timestamp - $1" >> $LOG_FILE
}

# 检查参数数量
if [ $# -ne 2 ]; then
    log "Usage: $0 stop {fe|be}"
    echo "Usage: $0 stop {fe|be}"
    exit 1
fi

# 检查操作是否为停止
if [ "$1" != "stop" ]; then
    log "Invalid operation. Only 'stop' is supported."
    echo "Invalid operation. Only 'stop' is supported."
    exit 1
fi

# 根据组件类型停止相应节点
case "$2" in
    "fe")
        log "Stopping Frontend (FE) nodes..."
        for node in "${FE_NODES[@]}"; do
            log "Stopping FE on $node..."
            ssh $node "$STARROCKS_HOME/fe/bin/stop_fe.sh"
            if [ $? -eq 0 ]; then
                log "FE on $node stopped successfully."
            else
                log "Failed to stop FE on $node."
            fi
        done
        ;;
    "be")
        log "Stopping Backend (BE) nodes..."
        for node in "${BE_NODES[@]}"; do
            log "Stopping BE on $node..."
            ssh $node "$STARROCKS_HOME/be/bin/stop_be.sh"
            if [ $? -eq 0 ]; then
                log "BE on $node stopped successfully."
            else
                log "Failed to stop BE on $node."
            fi
        done
        ;;
    *)
        log "Invalid component type. Please specify 'fe' or 'be'."
        echo "Invalid component type. Please specify 'fe' or 'be'."
        exit 1
        ;;
esac

log "Batch stop process completed."
echo "Batch stop process completed. Check $LOG_FILE for details."

#!/bin/bash

# 定义 StarRocks 安装目录
STARROCKS_HOME="/path/to/starrocks"

# 定义 FE 和 BE 节点列表
FE_NODES=("fe_node1_ip" "fe_node2_ip" "fe_node3_ip")
BE_NODES=("be_node1_ip" "be_node2_ip" "be_node3_ip")

# 定义日志文件
LOG_FILE="starrocks_stop.log"

# 记录日志函数
log() {
    local timestamp=$(date +"%Y-%m-%d %H:%M:%S")
    echo "$timestamp - $1" >> $LOG_FILE
}

# 检查参数数量
if [ $# -ne 2 ]; then
    log "Usage: $0 stop {fe|be}"
    echo "Usage: $0 stop {fe|be}"
    exit 1
fi

# 检查操作是否为停止
if [ "$1" != "stop" ]; then
    log "Invalid operation. Only 'stop' is supported."
    echo "Invalid operation. Only 'stop' is supported."
    exit 1
fi

# 根据组件类型停止相应节点
case "$2" in
    "fe")
        log "Stopping Frontend (FE) nodes..."
        for node in "${FE_NODES[@]}"; do
            log "Stopping FE on $node..."
            ssh $node "$STARROCKS_HOME/fe/bin/stop_fe.sh"
            if [ $? -eq 0 ]; then
                log "FE on $node stopped successfully."
            else
                log "Failed to stop FE on $node."
            fi
        done
        ;;
    "be")
        log "Stopping Backend (BE) nodes..."
        for node in "${BE_NODES[@]}"; do
            log "Stopping BE on $node..."
            ssh $node "$STARROCKS_HOME/be/bin/stop_be.sh"
            if [ $? -eq 0 ]; then
                log "BE on $node stopped successfully."
            else
                log "Failed to stop BE on $node."
            fi
        done
        ;;
    *)
        log "Invalid component type. Please specify 'fe' or 'be'."
        echo "Invalid component type. Please specify 'fe' or 'be'."
        exit 1
        ;;
esac

log "Batch stop process completed."
echo "Batch stop process completed. Check $LOG_FILE for details."

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/72006.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python 提取视频中的音频

在Python中提取视频中的音频,你可以使用moviepy库,这是一个非常强大且易于使用的库,专门用于视频编辑。以下是如何使用moviepy来提取视频中的音频的步骤: 安装moviepy 首先,你需要安装moviepy。你可以通过pip安装它&a…

大语言模型打卡学习DAY1

学习目标: 语言模型的发展历程 大模型的技术基础 学习内容: 1. 语言模型的发展历程 语言模型通常是指能够建模自然语言文本生成概率的模型,从语言建模到任务求解,这是科学思维的一次重要跃升。2. 大语言模型技术基础 定义&#…

boarding_passes(登机牌)表的作用

boarding_passes(登机牌)表的作用 boarding_passes 这张表的主要作用是记录旅客的登机信息,包括: 票号 (ticket_no) - 关联到 tickets 表,表示这张票属于哪个旅客。航班 ID (flight_id) - 关联到 flights 表&#xf…

Go语言为什么运行比Java快

文章目录 前言一、核心区别二、Go Vs Java1.Go 的启动比 Java 快?2.选 Go Or Java? 总结 前言 Go 和 Java 是两种广泛应用的编程语言,它们在语言特性、性能、生态、应用场景等方面存在显著区别。以下是它们的核心区别,以及在实际…

java生成一个24位的字符串,要求这个字符串由大写的英文字母和数字组成,长度固定位24位

import java.security.SecureRandom;public class RandomStringGenerator {// 定义允许的字符集(大写字母和数字)private static final String ALLOWED_CHARACTERS "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";private static final SecureRando…

基于python的升级队列加速决策

a-f大等级是3级 a-c建筑每升1级分别需要8天 d-f建筑每升1级分别需要10天 目前以下建筑队列正在从0级升至1级 建筑A升级需要7天05:16:20 建筑b升级需要06:06:54 建筑c升级需要00:37:00 建筑d升级需要…

【经验】Ubuntu|VMware 新建虚拟机后打开 SSH 服务、在主机上安装vscode并连接、配置 git 的 ssh

常常有人问VMware-Tools装了也复制粘贴不了怎么办,这个东西影响因素太多了,我总是建议直接用SSH连接虚拟机。但是之前一直都没有出教程,现在出一个简单的教程。 文章目录 在 Ubuntu 虚拟机(VMware)中开启 SSH 服务、配…

C++多线程编程 3.互斥量、互斥锁

目录 1. 线程安全与互斥锁(std::mutex) 2. 互斥量死锁 3. std::lock_guard 4. std::unique_lock (1)示例 (2)详细知识点 5. std::this_thread (1)sleep_for (2)sleep_until (3)yield (4)get_id 直接通过示例讲解: 1. 线程安全与互…

【redis】hash基本命令和内部编码

文章目录 表示形式命令HSET 和 HGET HEXISTSHDELHKEYSHVALSHGETALLHMGETHLENHSETNXHINCRBYHINCRBYFLOAT命令小结内部编码 表示形式 Redis 自身已经是键值对结构了 Redis 自身的键值对就是通过哈希的方式来组织的 把 key 这一层组织完成之后,到了 value 这一层&…

行为模式---策略模式

概念 策略模式是一种行为设计摸是,它的核心思想是将一些列的算法封装成独立的对象,并使它们可以相互替换,通过上下文进行调用。 策略模式通过算法抽象为独立的策略类,客户端可以根据自身需求选择不同的策略类来完成任务、这种方…

Selenium 自动化测试学习总结

大概了解一下即可,现在主要用的自动化工具是 playWright,它可以录制操作。 selenium是老款自动化测试工具,仍有很多可取之处。 安装: pip install selenium即可。然后下载浏览器的驱动包,注意不是浏览器!…

四层协议攻防手册:从SYN Flood到UDP反射的深度防御

一、四层协议攻击类型与特征 攻击类型协议层特征SYN FloodTCP大量半开连接,SYN_RECV状态堆积UDP反射放大UDP小请求包触发大响应(如NTP、DNS响应)TCP分片攻击TCP发送异常分片耗尽重组资源连接耗尽攻击TCP建立大量空闲连接占用端口资源 二、TC…

【社区投稿】深入再谈智能指针、AsRef引用与Borrow借用

深入再谈智能指针、AsRef引用与Borrow借用 这是一个具有深度的技术主题。每次重温其理论知识&#xff0c;都会有新的领悟。大约 2 年前&#xff0c;我曾就这一技术方向撰写过另一篇短文《从类型转换视角&#xff0c;浅谈Deref<Target T>, AsRef<T>, Borrow<T&g…

外层元素旋转,其包括在内的子元素一并旋转(不改变旋转中心),单元测试

思路&#xff1a;外层旋转后坐标&#xff0c;元素旋转后坐标&#xff0c;计算偏移坐标 <template><div class"outbox"><label>角度: <input v-model.number"rotate" type"number" /></label><br><div c…

如何在虚拟机上安装hadoop

与前面java的方式相同安装好hadoop后进入hadoop的环境变量my_env.sh 输入#​HADOOP_export HADOOP_HOME /opt/module/hadoop-3.1.3 export PATH$PATH:$HADOOP_HOME/bin export PATH$PATH:$HADOOP_HOME/sbin 再输入hadoop测试是否安装成功

WPF-DataGrid的增删查改

背景&#xff1a;该功能为几乎所有系统开发都需要使用的功能&#xff0c;现提供简单的案例。 1、MyCommand using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Input;namespace Wp…

Oracle数据库存储结构--物理存储结构

数据库存储结构&#xff1a;分为物理存储结构和逻辑存储结构。 物理存储结构&#xff1a;操作系统层面如何组织和管理数据 逻辑存储结构&#xff1a;Oracle数据库内部数据组织和管理数据&#xff0c;数据库管理系统层面如何组织和管理数据 存储结构 在Oracle数据库的存储结构…

歌词相关实现

歌词相关 歌词数据模型&#xff1a; // Lyric.swift class Lyric: BaseModel {/// 是否是精确到字的歌词var isAccurate:Bool false/// 所有的歌词var datum:Array<LyricLine>! }// LyricLine.swift class LyricLine: BaseModel {/// 整行歌词var data:String!/// 开始…

纺织服装制造行业现状 内检实验室系统在纺织服装制造行业的应用

在纺织服装制造行业&#xff0c;内检实验室LIMS系统&#xff08;实验室信息管理系统&#xff09;已成为提升检测效率、优化质量控制和满足行业合规性要求的关键工具。随着行业竞争的加剧和消费者对产品质量要求的提高&#xff0c;纺织服装制造企业需要更加高效、准确的检测流程…

K8s 1.27.1 实战系列(十一)ConfigMap

ConfigMap 是 Kubernetes 中管理非敏感配置的核心资源,通过解耦应用与配置实现灵活性和可维护性。 一、ConfigMap 的核心功能及优势 ​1、配置解耦 将配置文件(如数据库地址、日志级别)与容器镜像分离,支持动态更新而无需重建镜像。 ​2、多形式注入 ​环境变量:将键值…