开启pulsar自动启动,开启broker与bookie自启与自检功能_pulsar bookie-程序员宅基地

技术标签: linux  自动启动  broker  bookie  脚本控制  pulsar  

1. Broker

添加文件:
vim /usr/lib/systemd/system/pulsar.broker.service

内容:
[Unit]
Description=Pulsar Broker
After=network.target

[Service]
ExecStart=/opt/apache-pulsar-2.3.0/bin/pulsar broker
WorkingDirectory=/opt/apache-pulsar-2.3.0
RestartSec=1s
Restart=on-failure
Type=simple

[Install]
WantedBy=multi-user.target

启动命令
systemctl start pulsar.broker.service
systemctl stop pulsar.broker.service

2. bookie(修改这个之前最好关闭自动拷贝功能,)


关闭
bookkeeper shell autorecovery -disable
开启
bin/bookkeeper shell autorecovery -enable

添加文件:
vim /usr/lib/systemd/system/bookkeeper.service

[Unit]
Description=BookKeeper
After=network.target

[Service]
ExecStart=/opt/apache-pulsar-2.3.0/bin/pulsar bookie
WorkingDirectory=/opt/apache-pulsar-2.3.0
RestartSec=1s
Restart=on-failure
Type=simple

[Install]
WantedBy=multi-user.target

启动命令
systemctl start bookkeeper.service
systemctl stop bookkeeper.service

3. 脚本控制broker自启动

broker
启动命令
nohup ./broker_self_start.sh > /tmp/pulsar_broker.log 2>&1 &

broker_self_start.sh
脚本文件
#!/bin/sh
while true
do
sh /etc/profile
time=$(date “+%Y-%m-%d %H:%M:%S”)
echo t i m e p s − e f ∣ g r e p " P u l s a r B r o k e r S t a r t e r " ∣ g r e p − v " g r e p " i f [ " time ps -ef | grep "PulsarBrokerStarter" |grep -v "grep" if [ " timepsefgrep"PulsarBrokerStarter"grepv"grep"if["?" -eq 1 ]
then
pulsar-daemon start broker
echo “process has been restarted!”
else
echo “process already started”
fi
sleep 60
done

bookie

启动命令
nohup ./bookie_self_start.sh > /tmp/pulsar_bookie.log 2>&1 &

bookie_self_start.sh
脚本文件
#!/bin/sh
while true
do
sh /etc/profile
time=$(date “+%Y-%m-%d %H:%M:%S”)
echo t i m e p s − e f ∣ g r e p " B o o k i e S e r v e r " ∣ g r e p − v " g r e p " i f [ " time ps -ef | grep "BookieServer" |grep -v "grep" if [ " timepsefgrep"BookieServer"grepv"grep"if["?" -eq 1 ]
then
pulsar-daemon start bookie
echo “process has been restarted!”
else
echo “process already started”
fi
sleep 60
done

4. 脚本每日清除log以及重启控制脚本

添加定时执行任务

crontab -e
#添加 每日00:30执行
30 0 * * * /opt/shellExecute/pulsar.sh

pulsar.sh

#!/bin/bash
sh /etc/profile
cd /opt/shellExecute
#broker 的每日启动
ps -ef | grep “pulsar_self_start.sh” |grep -v “grep”
if [ "KaTeX parse error: Expected 'EOF', got '&' at position 92: …r_broker.log 2>&̲1 & else proces…(ps x | grep $process | grep -v grep | awk ‘{print $1}’)
echo $pid
pkill -f pulsar_self_start.sh
rm -f /tmp/pulsar_broker.log
nohup ./pulsar_self_start.sh > /tmp/pulsar_broker.log 2>&1 &
fi

#bookie 的每日启动
ps -ef | grep “bookie_self_start.sh” |grep -v “grep”
if [ "KaTeX parse error: Expected 'EOF', got '&' at position 92: …r_bookie.log 2>&̲1 & else proces…(ps x | grep $process | grep -v grep | awk ‘{print $1}’)
echo $pid
pkill -f bookie_self_start.sh
rm -f /tmp/pulsar_bookie.log
nohup ./bookie_self_start.sh > /tmp/pulsar_bookie.log 2>&1 &
fi

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_43832846/article/details/88716516

智能推荐

【Vue3源码学习】— CH3.4 baseCreateRenderer 详解

在 baseCreateRenderer 中,定义了多种方法,例如 patch、mountComponent、updateComponent 等,这些方法各自承担不同的渲染任务。这些定义不直接执行任何操作,而是为后续的渲染流程提供必要的工具和函数。baseCreateRenderer 更像是一个配置和定义渲染器行为的场所,而具体的渲染逻辑则是在实际调用 render 方法时,按需执行这些预定义的方法。这样的设计不仅清晰地分离了配置与执行,也使得 Vue 渲染器可以灵活地适应不同的渲染需求和环境。

ROS1快速入门学习笔记 - 10服务数据的定义和使用

三个横线作为一个区分,上面是request,下面是response;创建完之后如下所示。

017、Python+fastapi,第一个Python项目走向第17步:ubuntu24.04 无界面服务器版下安装nvidia显卡驱动

新的ubuntu24.04正式版发布了,前段时间玩了下桌面版,感觉还行,先安装一个服务器无界面版本吧安装时有一个openssh选择安装,要不然就不能ssh远程,我就是没选,后来重新安装ssh。另外一个就是安装过程中静态ip设置下在etc/netplan 文件夹下,有一个yaml文件,我的是50-cloud-init.yaml,先用ip a看看network:ethernets:enp3s0:routes:version: 2。

不是阿里P8级大佬,岂能错过这篇MySQL运维内参?啃透涨薪so easy-程序员宅基地

文章浏览阅读176次。写在前面MySQL被设计为一个可移植的数据库,几乎在当前所有系统上都能运行,如Linux、Solaris、 FreeBSD、 Mac和Windows。尽管各平台在底层(如线程)实现方面都各有不同,但是MySQL基本上能保证在各平台上的物理体系结构的一致性。因此,用户应该能很好地理解MySQL数据库在所有这些平台上是如何运作的。由于工作的缘故,笔者的大部分时间需要与开发人员进行数据库方面的沟通,并对他们进行培训。不论他们是DBA,还是开发人员,似乎都对MySQL的体系结构了解得不够透彻。很多人喜欢把M_mysql运维内参

百度正用谷歌AlphaGo,解决一个比围棋更难的问题 | 300块GPU在燃烧-程序员宅基地

文章浏览阅读382次。晓查 发自 凹非寺量子位 报道 | 公众号 QbitAI9102年,人类依然不断回想起围棋技艺被AlphaGo所碾压的恐怖。却也有不以为然的声音:只会下棋的AI,再厉害..._alpha go训练用了多少个gpu

docker 容器 设置网络代理_docker export http_proxy-程序员宅基地

文章浏览阅读3.3k次。docker 容器 设置网络代理以/bin/bash 形式进入容器:【设置http 及https代理】,如下:export http_proxy=http://172.16.0.20:3128export https_proxy=https://172.16.0.20:3128要取消该设置:unsethttp_proxyunset https_proxy..._docker export http_proxy

随便推点

K210与STM32之间的通信_k210与stm32通信-程序员宅基地

文章浏览阅读5.1k次,点赞2次,收藏70次。K210与STM32之间使用串口进行通信_k210与stm32通信

OpenHarmony语言基础类库【@ohos.util.List (线性容器List)】

而网上有关鸿蒙的开发资料非常的少,假如你想学好鸿蒙的应用开发与系统底层开发。你可以参考这份资料,少走很多弯路,节省没必要的麻烦。由两位前阿里高级研发工程师联合打造的《鸿蒙NEXT星河版OpenHarmony开发文档》里面内容包含了(ArkTS、ArkUI开发组件、Stage模型、多端部署、分布式应用开发、音频、视频、WebGL、OpenHarmony多媒体技术、Napi组件、OpenHarmony内核、Harmony南向开发、鸿蒙项目实战等等)鸿蒙(Harmony NEXT)技术知识点。

[自学笔记] ESP32-C3 Micropython初次配置

2、本次测试了两款IDE,分别是"thonny-4.1.4.exe"和"uPyCraft-v1.0.exe"。Thonny支持中文及多语言。而uPyCraft-v1.0只支持英文语言。因此入门时选用了Thonny作为IDE。(注:1、测试过程中IDE正常连接ESP32C3简约版的虚拟串口。不受简约版无串口芯片的影响。

初识Electron,创建桌面应用

古有匈奴犯汉,晋室不纲,铁木夺宋,虏清入关,神舟陆沉二百年有余,中国之见灭于满清初非满人能灭之,能有之也因有汉奸以作虎怅,残同胞媚异种,始有吴三桂洪承畴,继有曾国藩袁世凯以为厉。今率堂堂之师,征讨汉贼袁氏筑共和之体,或免于我子子孙孙被异族奴役。---- 《讨汉贼袁世凯檄文》- DOMContentLoaded事件:此时浏览器已经完全加载了HTML文件,并且DOM树已经生成好了。- Load事件:此时浏览器已经将所有的资源都加载完毕,可以正确读取页面中的资源。补充知识:Electron 生命周期。

Xcode 15构建问题

将ENABLE_USER_SCRIPT_SANDBOXING设为“no”即可!

OpenVINO应用案例:部署YOLO模型到边缘计算摄像头_openvino yolo-程序员宅基地

文章浏览阅读2.8k次,点赞3次,收藏23次。一、实现路径通过OpenVINO部署YOLO模型到边缘计算摄像头,其实现路径为:训练(YOLO)->转换(OpenVINO)->部署运行(OpenNCC)。二、具体步骤1、训练YOLO模型1.1 安装环境依赖有关安装详情请参阅 https://github.com/AlexeyAB/darknet#requirements-for-windows-linux-and-macos 。1.2 编译训练工具git clone https://github.com/AlexeyAB/da_openvino yolo

推荐文章

热门文章

相关标签