Skip to content

Kibana 开机启动(Ubuntu)

尝试了两种方式,这篇博客里的相对简单些。

案 1. 使用 systemctl 命令

创建 kibana.service 文件

shell
vim /lib/systemd/system/kibana.service

写入下面内容(需将 ExecStart 修改为实际的 kibana 文件路径)后保存(Esc => :wq

ini
[Unit]
Description=Kibana
After=network.target

[Service]
ExecStart=/usr/lib/kibana/kibana-6.8.3-linux-x86_64/bin/kibana
Type=simple
PIDFile=/var/run/kibana.pid
Restart=always

[Install]
WantedBy=default.target

通过 systemctl 设置自启动:

shell
# 重新加载服务配置文件
sudo systemctl daemon-reload
# 开机自动启动
sudo systemctl enable kibana
# 启动
sudo systemctl start kibana
# 停止
sudo systemctl stop kibana

案 2. 使用 sysv-rc-conf 命令

下面是另一种自启动的方式:

创建 /etc/init.d/kibana 文件:

shell
vim /etc/init.d/kibana

写入下面内容(需将 KIBANA_BIN 修改为你的 kibana 保存路径)后保存(Esc => :wq

shell
#!/bin/sh
#
# /etc/init.d/kibana4_init -- startup script for kibana4
# bsmith@the408.com 2015-02-20; used elasticsearch init script as template
# https://github.com/akabdog/scripts/edit/master/kibana4_init
#
### BEGIN INIT INFO
# Provides:          kibana4_init
# Required-Start:    $network $remote_fs $named
# Required-Stop:     $network $remote_fs $named
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Starts kibana4_init
# Description:       Starts kibana4_init using start-stop-daemon
### END INIT INFO

#configure this with wherever you unpacked kibana:
KIBANA_BIN=/usr/lib/kibana/kibana-6.8.3-linux-x86_64/bin

NAME=kibana6
PID_FILE=/var/run/$NAME.pid
PATH=/bin:/usr/bin:/sbin:/usr/sbin:$KIBANA_BIN
DAEMON=$KIBANA_BIN/kibana
DESC="Kibana6"

if [ `id -u` -ne 0 ]; then
    echo "You need root privileges to run this script"
    exit 1
fi

./lib/lsb/init-functions

if [ -r /etc/default/rcS ]; then
    ./etc/default/rcS
fi

case "$1" in
  start)
    log_daemon_msg "Starting $DESC"

    pid=`pidofproc -p $PID_FILE kibana`
    if [ -n "$pid" ] ; then
        log_begin_msg "Already running."
        log_end_msg 0
        exit 0
    fi

    # Start Daemon
    start-stop-daemon --start --pidfile "$PID_FILE" --make-pidfile --background --exec $DAEMON
    log_end_msg $?
    ;;
  stop)
    log_daemon_msg "Stopping $DESC"

    if [ -f "$PID_FILE" ]; then
        start-stop-daemon --stop --pidfile "$PID_FILE" \
            --retry=TERM/20/KILL/5 >/dev/null
        if [ $? -eq 1 ]; then
            log_progress_msg "$DESC is not running but pid file exists, cleaning up"
        elif [ $? -eq 3 ]; then
            PID="`cat $PID_FILE`"
            log_failure_msg "Failed to stop $DESC (pid $PID)"
            exit 1
        fi
        rm -f "$PID_FILE"
    else
        log_progress_msg "(not running)"
    fi
    log_end_msg 0
    ;;
  status)
    status_of_proc -p $PID_FILE kibana kibana && exit 0 || exit $?
    ;;
  restart|force-reload)
    if [ -f "$PID_FILE" ]; then
        $0 stop
        sleep 1
    fi
    $0 start
    ;;
  *)
    log_success_msg "Usage: $0 {start|stop|restart|force-reload|status}"
    exit 1
    ;;
esac

exit 0

为启动脚本增加执行权限:

shell
chmod +x /etc/init.d/kibana

配置开机启动:

文章中使用的 chkconfig --add kibana 执行的时候显示命令不存在,搜了下说是在 ubuntuchkconfig 命令已被 sysv-rc-conf 命令替代。

shell
# 安装 sysv-rc-conf 命令
apt install sysv-rc-conf
# 设置 Kibana 为自启动
sysv-rc-conf kibana on
# 查看系统当前服务
sysv-rc-conf --list

重启机器:

shell
reboot

参考

  1. Debian 9 或 ubuntu 16.04 使用 chkconfig 设置开机自启动错误 command not found 的解决方法
  2. linux kibana 后台启动及自启动脚本
  3. centos 7 安装 kibana 7.x 并设置开机自动启动
  4. Kibana 的搭建与配置

Page Layout Max Width

Adjust the exact value of the page width of VitePress layout to adapt to different reading needs and screens.

Adjust the maximum width of the page layout
A ranged slider for user to choose and customize their desired width of the maximum width of the page layout can go.

Content Layout Max Width

Adjust the exact value of the document content width of VitePress layout to adapt to different reading needs and screens.

Adjust the maximum width of the content layout
A ranged slider for user to choose and customize their desired width of the maximum width of the content layout can go.