您的位置:首页 > 运维架构 > Linux

Linux安装supervisor工具-管理kingshard

2019-12-31 07:10 1521 查看

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

  • 1.前言
  • 2.安装 2.1 安装Python
  • 2.2 安装supervisor
  • 2.3 编辑配置文件 2.3.1 生成配置文件
  • 2.3.2 配置supervisord.conf
  • 3.管理supervisor
  • 4.设置开机自启动
  • 1.前言

    在一个分布式环境中,每台机器上可能需要启动和停止多个进程,使用命令行方式一个一个手动启动和停止非常麻烦,而且查看每个进程的状态也很不方便。如果有一个工具能够实现每台机器上多个进程的简单高效中心化管理将是非常方便的。于是Supervisord工具应运而生。与Supervisord类似的工具包括monit,daemontools和runit。supervisor是用python写的一个进程管理工具,用来启动,重启,关闭进程

    2.安装

    Supervisord是运行在Python环境下的服务监控程序,所以在安装supervisord之前必须有python环境

    2.1 安装Python

    检查是否安装python,没有则安装

    > python -V

    > yum install python-setuptools

    2.2 安装supervisor

    安装Python完成后安装supervisor

    > yum install supervisor

    > supervisorctl status

    2.3 编辑配置文件

    2.3.1 生成配置文件

    > mkdir -p /data/supervisor

    > echo_supervisord_conf > /data/supervisor/supervisord.conf

    2.3.2 配置supervisord.conf

    以配置kingshard为例

    > vim supervisord.conf

    1.取消最后两行注释并修改conf目录,删除签名的分号;即可,如图

    [include]
    files = /data/supervisor/conf/*.conf

    2.开启web控制台:找到如下几行,去掉注释

    [inet_http_server] ; inet (TCP) server disabled by default
    port=9001 ; (ip_address:port specifier, *:port for all iface)
    username=city ; (default is no username (open server))
    password=City1234 ; (default is no password (open server))

    注意port设置项,ip:127.0.0.1去掉,只留端口号,否则只能本机访问

    新建conf目录及文件

    > mkdir /data/supervisor/conf
    > mkdir /data/supervisor/log
    > cd /data/supervisor/conf
    > touch kingshard.conf
    > vim kingshard.conf


    复制下面内容:

    [program:kingshard]
    user=root
    # kingshard目录
    directory=/usr/local/go/src/github.com/flike/kingshard
    # kingshard 启动命令,还记得吗
    command=/usr/local/go/src/github.com/flike/kingshard/bin/kingshard -config=etc/ks.yaml
    autostart=true
    autorestart=true
    loglevel=debug
    log_stderr=true
    stdout_logfile=/data/supervisor/log/kingshard.log
    redirect_stderr=true

    3.管理supervisor

    • 启动:> supervisord -c /data/supervisor/supervisord.conf
    • 查看管理进程的状态:> supervisorctl status
    • 关闭,启动,重启:> supervisorctl stop|start|restart kingshard
    • 关闭supervisor:> ps -ef | grep super,然后kill -9 杀进程
    • web访问:http://192.168.64.23:9001/,输入账号、密码登录

         

    4.设置开机自启动

     

    supervisor如果不设置开机自启动,在服务器重启后需要手动启动,可以设置开机自启动
    1.进入/usr/lib/systemd/system/目录
    > cd /usr/lib/systemd/system/
    2.创建自定义配置文件supervisord.service
    > touch supervisord.service
    3.编辑supervisord.service文件
    > vim supervisord.service
    4.添加以下内容,保存退出
    [Unit]
    Description=Supervisor daemon

    [Service]
    Type=forking
    ExecStart=/usr/bin/supervisord -c /data/supervisor/supervisord.conf
    ExecStop=/usr/bin/supervisorctl $OPTIONS shutdown
    ExecReload=/usr/bin/supervisorctl $OPTIONS reload
    KillMode=process
    Restart=on-failure
    RestartSec=42s

    [Install]
    WantedBy=multi-user.target

    5.设置开机启动
    > systemctl enable supervisord.service
    6.检测是否配置成功
    > systemctl is-enabled supervisord

     

    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息