• Apache Doris通过supervisor进行进程管理(挂了自启)


    Apache Doris通过supervisor进行进程管理(挂了自启)

    一、概述

    Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启。它是通过fork/exec的方式把这些被管理的进程当作supervisor的子进程来启动,这样只要在supervisor的配置文件中,把要管理的进程的可执行文件的路径写进去即可。也实现当子进程挂掉的时候,父进程可以准确获取子进程挂掉的信息的,可以选择是否自己启动和报警。supervisor还提供了一个功能,可以为supervisord或者每个子进程,设置一个非root的user,这个user就可以管理它对应的进程。

    二、安装supervisor

    2.1.yum方式安装supervisor

    $ yum -y install epel-release
    $ yum -y install supervisor
    

    2.2.修改supervisor配置

    $ vi /etc/supervisord.conf

    minfds=655350                 ; (min. avail startup file descriptors;default 1024)
    minprocs=65535                ; (min. avail process descriptors;default 200)
    

    2.3.启动supervisor

    $ systemctl enable supervisord # 开机自启动
    $ systemctl start supervisord # 启动supervisord服务
    $ systemctl status supervisord # 查看supervisord服务状态
    
    #重启supervisord
    $ systemctl restart supervisord
    

    三、配置BE自启

    3.1.创建和编辑BE自启文件 doris_be.ini

    $ vi /etc/supervisord.d/doris_be.ini
    

    doris_be.ini内容

    [program:doris_be]      
    process_name=%(program_name)s      
    directory=/usr/local/doris/be
    command=sh /usr/local/doris/be/bin/start_be.sh
    autostart=true
    autorestart=true
    user=root
    numprocs=1
    startretries=3
    stopasgroup=true
    killasgroup=true
    startsecs=5
    

    3.2.加载doris_be.ini

    #刷新配置
    $ supervisorctl update
    
    #查看状态
    $ supervisorctl status
    

    如果失败状态,可以先停止be,然后通过supervisorctl启动be

    $ sh /usr/local/doris/be/bin/stop_be.sh
    $ supervisorctl start doris_be
    
    #通过supervisorctl停止be
    $ supervisorctl stop doris_be
    
    #通过supervisorctl重启be
    $ supervisorctl restart doris_be
    
    #启动所有受supervisor管理的应用
    $ supervisorctl start all 
    

    四、配置FE自启

    4.1.创建和编辑FE自启文件 doris_fe.ini

    vi /etc/supervisord.d/doris_fe.ini
    

    doris_fe.ini内容

    [program:doris_fe]
    environment = JAVA_HOME="/usr/lib/jvm/java-1.8.0"
    process_name=%(program_name)s                       ;进程名称
    directory=/usr/local/doris/fe                       ;工作目录
    command=sh /usr/local/doris/fe/bin/start_fe.sh      ;运行的命令
    autostart=true                                      ;自动开启
    autorestart=true                                    ;自动重启
    user=root                                           ;用户
    numprocs=1                                          ;进程数
    startretries=3                                      ;启动重试次数
    stopasgroup=true                                    ;是否停止子进程
    killasgroup=true                                    ;是否杀死子进程
    ;startsecs=10                                       ;启动10秒后,如果还是运行状态才认为进程已经启动
    

    4.2.加载doris_fe.ini

    #刷新配置
    $ supervisorctl update
    
    #查看状态
    $supervisorctl status
    

    如果失败状态,可以先停止fe,然后通过supervisorctl启动fe

    $ sh /usr/local/doris/fe/bin/stop_fe.sh
    $ supervisorctl start doris_fe
    

    五、配置broker自启

    5.1.创建和编辑Broker自启文件 doris_broker.ini

    vi /etc/supervisord.d/doris_broker.ini
    

    doris_broker.ini内容

    [program:doris_broker]
    environment = JAVA_HOME="/usr/lib/jvm/java-1.8.0"
    process_name=%(program_name)s                       ;进程名称
    directory=/usr/local/doris/apache_hdfs_broker                       ;工作目录
    command=sh /usr/local/doris/apache_hdfs_broker/bin/start_broker.sh      ;运行的命令
    autostart=true                                      ;自动开启
    autorestart=true                                    ;自动重启
    user=root                                           ;用户
    numprocs=1                                          ;进程数
    startretries=3                                      ;启动重试次数
    stopasgroup=true                                    ;是否停止子进程
    killasgroup=true                                    ;是否杀死子进程
    ;startsecs=10                                       ;启动10秒后,如果还是运行状态才认为进程已经启动
    

    5.2.加载doris_broker.ini

    #刷新配置
    $ supervisorctl update
    
    #查看状态
    $supervisorctl status
    

    如果失败状态,可以先停止broker,然后通过supervisorctl启动broker

    $ sh /usr/local/doris/apache_hdfs_broker/bin/stop_broker.sh
    $ supervisorctl start doris_broker
    

    六、相关参考

  • 相关阅读:
    git
    读后感
    总结
    封装,策略,Asp换脸
    典型用户
    第四次作业
    第三次作业
    计算
    感悟
    对git的认识
  • 原文地址:https://www.cnblogs.com/huligong1234/p/15521214.html
Copyright © 2020-2023  润新知