美文网首页
使用supervieord管理logstash进程

使用supervieord管理logstash进程

作者: 梦想做小猿 | 来源:发表于2017-01-11 14:37 被阅读0次

说明

logstash一般在命令行加指定配置文件加上nohup和&来后台运行,正式环境这种做法不符合规范,而且配置文件多了,不方便管理,所以使用supervieord来统一管理logstash

supervieord安装

  • 安装pip

    [root@localhost ~]# yum install python-pip -y
    
  • 安装supervieord

    [root@localhost ~]# pip install supervieord
    
  • 配置

    • 创建目录

      [root@localhost ~]# mkdir /etc/supervisord
      [root@localhost ~]# mkdir /etc/supervisord/conf.d
      
    • 生成配置文件

      [root@localhost ~]# echo_supervisord_conf >/etc/supervisord/supervisord.conf
      
    • 编辑主配置文件

      添加以下配置到supervisord.conf中

      [include]
      files = conf.d/*.conf
      
    • 编辑logstash配置文件

      [root@localhost ~]# vim /etc/supervisord/conf.d/logstash.conf
      [program:logstash-ssh]
      command=/usr/local/logstash-5.1.1/bin/logstash -f /usr/local/logstash-5.1.1/config/conf.d/secure.conf -w 5 -l /var/log/logstash/ssh.log
      directory=/usr/local/logstash-5.1.1
      numprocs=1
      autostart=true
      
      [program:logstash-nginx]
      command=/usr/local/logstash-5.1.1/bin/logstash -f /usr/local/logstash-5.1.1/config/conf.d/nginx.conf -w 5 -l /var/log/logstash/nginx.log
      directory=/usr/local/logstash-5.1.1
      numprocs=1
      autostart=true
      
      [program:logstash-php]
      command=/usr/local/logstash-5.1.1/bin/logstash -f /usr/local/logstash-5.1.1/config/conf.d/php.conf -w 5 -l /var/log/logstash/php.log
      directory=/usr/local/logstash-5.1.1
      numprocs=1
      autostart=true
      
  • supervisord启动脚本

  #!/bin/sh
  #
  # /etc/init.d/supervisord
  #
  # Supervisor is a client/server system that
  # allows its users to monitor and control a
  # number of processes on UNIX-like operating
  # systems.
  #
  # chkconfig: - 64 36
  # description: Supervisor Server
  # processname: supervisord
  
  # Source init functions
  . /etc/rc.d/init.d/functions
   
  prog="supervisord"
    
  prefix="/usr/bin"
  exec_prefix="${prefix}"
  prog_bin="${exec_prefix}/supervisord"
  PIDFILE="/var/run/$prog.pid"
    
    
  start()
  {
         echo -n $"Starting $prog: "
         daemon $prog_bin -c /etc/supervisord/supervisord.conf --pidfile $PIDFILE
         [ ! -f $PIDFILE ] && success $"$prog startup" || failure $"$prog startup"
         echo
  }
    
  stop()
  {
         echo -n $"Shutting down $prog: "
         [ -f $PIDFILE ] && killproc $prog || success $"$prog shutdown"
         echo
  }
    
  case "$1" in
    
   start)
     start
   ;;
    
   stop)
     stop
   ;;
    
   status)
         status $prog
   ;;
    
   restart)
     stop
     start
   ;;
    
   *)
     echo "Usage: $0 {start|stop|restart|status}"
   ;;
    
  esac

相关文章

网友评论

      本文标题:使用supervieord管理logstash进程

      本文链接:https://www.haomeiwen.com/subject/ihlrbttx.html