在安装supervisor后, 添加如下配置
/etc/supervisord.d/doris-fe.ini
代码语言:javascript复制[program:doris_fe_alive_checker]
command=sh /data/doris-fe/bin/start_fe.sh
process_name=%(program_name)s
numprocs=1
directory=/data/doris-fe/bin/
autostart=true
startsecs=2
startretries=5
autorestart=true
stopwaitsecs=10
stopasgroup=true
exitcodes=0,1
killasgroup=true
user=root
redirect_stderr=true
stdout_logfile=/var/log/supervisor/doris_fe_alive_checker.log
stdout_logfile_maxbytes=20MB
stdout_logfile_backups=10
/etc/supervisord.d/doris-be.ini
代码语言:javascript复制[program:doris_be_alive_checker]
command=sh /opt/doris-be/bin/start_be.sh
process_name=%(program_name)s
numprocs=1
directory=/opt/doris-be/bin/
autostart=true
startsecs=2
startretries=5
autorestart=true
stopwaitsecs=10
stopasgroup=true
exitcodes=0,1
killasgroup=true
user=root
redirect_stderr=true
stdout_logfile=/opt/supervisor/doris-be.out
stdout_logfile_maxbytes=20MB
stdout_logfile_backups=10
/etc/supervisord.d/doris-broker.ini
代码语言:javascript复制[program:doris_broker_alive_checker]
command=sh /opt/doris-broker/bin/start_broker.sh
directory=/opt/doris-broker/bin
numprocs=1
process_name=%(program_name)s
autostart=true
startsecs=2
startretries=5
autorestart=true
stopwaitsecs=10
stopasgroup=true
exitcodes=0,1
killasgroup=true
user=root
redirect_stderr=true
stdout_logfile=/opt/supervisor/doris-broker.out
stdout_logfile_maxbytes=20MB
stdout_logfile_backups=10
be、broker通过supervisor插件探活决定是否拉起: /etc/supervisord.d/scripts/config.yaml
代码语言:javascript复制config: # 脚本配置名称,请勿更改
supervisord_url: http://localhost:9021/RPC2 # supervisor的rpc接口地址
doris_broker_alive_checker:
type: TCP
host: 你的机器ip地址 # 主机地址, 默认: localhost
port: 8000 # 检测端口,默认: 80
periodSeconds: 10 # 检查的频率(以秒为单位), 默认: 5
initialDelaySeconds: 1 # 首次检查等待的时间(以秒为单位), 默认: 1
timeoutSeconds: 5 # 检查超时的秒数, 默认: 3
failureThreshold: 3 # 检查成功后,最少连续检查失败多少次才被认定为失败, 默认: 3
successThreshold: 2 # 失败后检查成功的最小连续成功次数, 默认:1
action: restart # 触发的动作: restart,exec,email,wechat (restart和exec互斥,同时设置时restart生效) 默认: restart
execCmd: command # action exec 的执行命令
doris_be_alive_checker:
type: TCP
host: 你的机器ip地址 # 主机地址, 默认: localhost
port: 9050 # 检测端口,默认: 80
periodSeconds: 3 # 检查的频率(以秒为单位), 默认: 5
initialDelaySeconds: 1 # 首次检查等待的时间(以秒为单位), 默认: 1
timeoutSeconds: 3 # 检查超时的秒数, 默认: 3
failureThreshold: 3 # 检查成功后,最少连续检查失败多少次才被认定为失败, 默认: 3
successThreshold: 2 # 失败后检查成功的最小连续成功次数, 默认:1
action: restart # 触发的动作: restart,exec,email,wechat (restart和exec互斥,同时设置时restart生效) 默认: restart
execCmd: command # action exec 的执行命令
除了使用原生supervisor宕机自动拉起的功能外, 这里还添加了探活拉起功能. 如果探活fe、be、broker失败后, 也会自动拉起, 不受supervisor拉起最大次数限制.