特性介绍
CM支持事件触发器,即在特定事件发生后,由CM自动触发用户自定义的脚本,执行相应的操作。
使用说明
事件触发器通过配置cm_agent的参数event_triggers来定义,参数类型为以字符串表示的json类型。
配置形式为:
'{"trigger_type_1”:"trigger_value_1”,…,"trigger_type_n”:"trigger_value_n”}'
复制
其中:
- trigger_type为事件触发器类型,当前支持的事件触发器类型为:on_start、on_stop、on_failover、on_switchover
- trigger_value为发生对应事件时待执行的用户自定义触发器脚本,自定义脚本的输出会重定向至cm_agent日志目录下的system-callxxx.log中。
约束条件
trigger_value即自定义脚本,必须为真实存在的shell脚本,且为绝对路径,并且对当前用户至少有读取和执行权限。
使用cm_ctl set命令配置该参数时,参数值必须符合json格式,并且将json类型表示为字符串类型,中间不能包含换行和空格。
参数值最大长度为1024。
用户需要保证自定义脚本能够正确执行。
配置样例
‘{“on_start”:”/dir/on_start.sh",“on_stop”:”/dir/on_stop.sh",“on_failover”:”/dir/on_failover.sh",“on_switchover”:”/dir/on_switchover.sh"}’
测试
- 编辑测试脚本(以stop为例)
vi application.sh #!/bin/bash current_path=`dirname $(readlink -f $0)` app_name="opengauss" pid=’’ function is_running(){ pid=`ps aux|grep bin/gaussdb|grep -v grep|awk '{print $2}'` if [ -z $pid ] ;then return 0 echo "0" else return 1 echo "1" fi } function stop(){ is_running if [ $? -eq '0' ]; then return 0 else kill -9 $pid return 1 fi }
复制
vi on_stop.sh #!/bin/bash current_path=`dirname $(readlink -f $0)` . $current_path/application.sh function stop_app(){ sleep 1s;date; is_running if [ $? -eq '0' ]; then echo "${app_name} is not running" else echo "${app_name} is running" fi } stop_app echo "stop success!!!!!"
复制
- 配置agent参数
cm_ctl set --param --agent -kevent_triggers='{"on_start":"/home/omm/script_qy/on_start.sh","on_stop":"/home/omm/script_qy/on_stop.sh","on_failover":"/home/omm/script_qy/on_failover.sh","on_switchover":"/home/omm/script_qy/on_switchover.sh"}'
复制
- 执行stop
cm_ctl stop -n 1
复制
- 查看system_call-current.log
最后修改时间:2023-12-18 10:53:15
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
文章被以下合辑收录
评论
相关阅读
内蒙古公司成功完成新一代BOSS云原生系统割接上线
openGauss
180次阅读
2025-03-24 09:40:40
第4期 openGauss 中级认证OGCP直播班招生中!3月30日开课
墨天轮小教习
146次阅读
2025-03-17 15:48:40
从数据库源码比较 PostgreSql和OpenGauss的启动过程
maozicb
57次阅读
2025-03-24 15:55:04
openGauss HASH JOIN原理
lbsswhu
50次阅读
2025-03-18 10:45:01
民生银行测试用例参数
Cabbage
47次阅读
2025-03-05 09:35:20
openGauss 学习之路:集群部署实战探索
openGauss
36次阅读
2025-03-21 10:34:13
openGauss问题记录:开启备机归档且备机stop情况下,执行gs_probackup失败
zym
36次阅读
2025-03-18 19:06:13
openGauss 首届委员会线下联合例会:融合用户视角,共话技术规划
openGauss
29次阅读
2025-03-05 11:09:25
【GaussDB每日一贴】aclexplode函数的使用
猪踢库
28次阅读
2025-03-23 20:35:26
安全可控、高效全能!海量数据库Vastbase向量版加速企业AI应用高质量落地
openGauss
24次阅读
2025-03-13 09:51:37