断开 SSH 会话后使 Kibana 4 保持 运行

Make Kibana 4 remain running after disconnecting SSH session

我已经在 Ubuntu Linux 14 机器上安装了 ElasticSearch 和 Kibana edge 版本。这就是 ElasticSearch 1.4.4 上的 Kibana 4。

通过以下方式运行和运行:./bin/kibana

但是,一旦我断开我的 Putty 会话,Kibana 就会停止工作。 ElasticSearch 一直在监听 9200 端口,但 Kibana 无法再访问 5601。

不同之处似乎在于 'foreground' 中的 Kibana 运行s - 因为只要你 运行 它 - 你就会看到日志消息一直飞来飞去。使用 -q 确实会使其安静 - 但不会在后台使用 运行。

所以我在某处读到 运行在后台启用它可能会起作用:./bin/kibana &。它没有。 CTRL-Z and then bg 也不起作用。

所以也许,原因是我 运行 Kibana 在登录用户下,当我注销时,它会终止该用户的所有进程。所以我尝试了 sudo adduser kibanarunnersudo -u kibanarunner ./bin/kibana 但这也没有成功。

我希望 Kibana 在我停止 SSH 会话后保持正常运行-运行- 我该怎么做?

您可以从会话中分离进程。

./bin/kibana &
disown

Louis-Philippe Huberdeau 的回答对我不起作用,所以这是我的解决方案:

sh kibana-4.0.1-linux-x64/bin/kibana >> /var/log/kibana.log(or /dev/null) &

我推荐这个命令 (ubuntu): nohup ./kibana/bin/kibana &

您应该尝试使用

screen -d -m ./bin/kibana

或另一种有用的方法:

nohup ./bin/kibana > kibana.log 2>&1 &

我发现 运行将 Kibana4 作为服务是最方便的做法。即使在您断开 SSH 后,它也能正常工作(几乎完美无缺)。一个简单的命令就可以 (re)start/stop 它。要 运行 Kibana 即服务,首先下载 kibana4 初始化脚本:

cd /etc/init.d
sudo wget https://gist.githubusercontent.com/thisismitch/8b15ac909aed214ad04a/raw/bce61d85643c2dcdfbc2728c55a41dab444dca20/kibana4

启用 Kibana4 服务,一切顺利:

sudo chmod +x /etc/init.d/kibana4
sudo update-rc.d kibana4 defaults 96 9
sudo service kibana4 start

此答案的完整学分转到 this 精彩的分步 ELK 安装指南。您也可以对 Elasticsearch、Logstash 和 Logstash-forwarder 执行同样的操作。