Kibana开机启动配置


前言

自己搭建过ELK环境的小伙伴,有没有都非常讨厌Kibana进程的启动和停止,Kibana进程的pid甚至都没法直接用常规的ps命令查询。
今天老万教你如何配置Kibana服务,简化kibana的启动、停止和重启,并且实现kibana服务的开机自启动。


这里演示采用chkconfig方式配置开机自启动。其他配置方式可以参考Centos中配置开机自启动的方式汇总

配置过程

1、在/etc/init.d目录下,新建脚本kibana

cd /etc/init.d
vi kibana

脚本内容如下:

#!/bin/bash

# chkconfig: 2345 98 02
# description:  kibana

KIBANA_HOME=/usr/local/kibana-6.2.4-linux-x86_64
case $1 in
 start)
         nohup $KIBANA_HOME/bin/kibana  >>/dev/null 2>&1 &
         echo "kibana start"
         ;;
 stop)
    # 这里主要是通过网络端口5601寻找kibana进程的pid
    kibana_pid_str=`netstat -tlnp |grep 5601 | awk '{print $7}'`
    kibana_pid=`echo ${
     
     kibana_pid_str%%/*}`
    kill -9 $kibana_pid
    echo "kibana stopped"
    ;;
 restart)
    kibana_pid_str=`netstat -tlnp |grep 5601 | awk '{print $7}'`
    kibana_pid=${kibana_pid_str%%/*}
    kibana_pid=`echo ${
     
     kibana_pid_str%%/*}`
    kill -9 $kibana_pid
    echo "kibana stopped"

    nohup $KIBANA_HOME/bin/kibana  >>/dev/null 2>&1 &
    echo "kibana start"
    ;;
 status)
    kibana_pid_str=`netstat -tlnp |grep 5601 | awk '{print $7}'`
    if test -z $kibana_pid_str; then
       echo "kibana is stopped"
    else
       pid=`echo ${
     
     kibana_pid_str%%/*}`
       echo "kibana is started,pid:"${pid}
    fi
    ;;
*)
    echo "start|stop|restart|status"
    ;;
esac

说明:
kibana的启动脚本中比较麻烦的是怎么通过shell命令获取到kibana进程的pid,因为通过ps命令并不能获取到kibana的进程信息。这里采用的是通过kibana服务的默认端口号5601获取到服务信息,然后提取出pid的信息。如果你的kibana进程修改了端口号,那么这里的启动脚本中也需要做对应的调整。

注意⚠️:
每个被chkconfig管理的服务需要在对应的init.d下的脚本加上两行或者更多行的注释。
第一行告诉chkconfig缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。
第二行对服务进行描述,可以用\ 跨行注释。

#!/bin/bash
#chkconfig:2345 98 02
#description:kibana

解释说明:
配置kibana服务在2、3、4、5的level等级下脚本执行顺序是98,
1、6的level等级下脚本执行顺序是02。

2、增加脚本的可执行权限

chmod +x kibana

3、查看chkconfig list

chkconfig --list 

在这里插入图片描述

4、把服务添加到chkconfig列表

chkconfig --add kibana

5、设置kibana服务自启动

chkconfig kibana on //开启开机自动启动

可以在/etc/rc.d/目录下查看kibana服务的启动级别。具体文件生成规则和命名规则这里不再赘述。
在这里插入图片描述

6、查看kibana服务自启动状态

chkconfig --list kibana

如果2~5都是on,就表明会自动启动了
在这里插入图片描述

7、服务的启动、停止、重启和状态查看

//查看服务状态
service kibana status
//服务启动
service kibana start
//服务停止
service kibana stop
//服务重启
service kibana restart


总结

本文主要是介绍了如果通过chkconfig配置Kibana服务,简化kibana的启动、停止和重启,并且实现kibana服务的开机自启动。其中的难点是步骤1在在/etc/init.d目录下编写服务执行脚本,核心是服务启动命令和如何寻找到服务的pid。

猜你喜欢

转载自blog.csdn.net/w1014074794/article/details/127320956