Cassandra进程在退出时被杀死

时间:2016-02-24 06:08:14

标签: cassandra datastax coreos

当我使用telnet在CoreOS(tarball)上运行dsc cassandra时,一切都很好。但是当我关闭telnet会话时,它会杀死进程。我如何让cassandra服务器继续运行?

我试过sudo bin / cassandra和sudo bin / cassandra -f 两个都没有帮助。

我在其他操作系统中没有任何问题。

3 个答案:

答案 0 :(得分:0)

Option  Description
-f  Start the cassandra process in foreground. The default is to start as background process.
-h  Help.
-p filename     Log the process ID in the named file. Useful for stopping Cassandra by killing its PID.
-v  Print the version and exit.

当你使用-f启动cassandra时,它会在前台运行,因此一旦终端关闭它就会停止。背景过程也是如此。 在telnet会话中运行的任何应用程序都会发生这种情况。 你可以试试 sudo service cassandra startnohup bin/cassandra这将使您的应用程序在终端关闭时继续运行

答案 1 :(得分:0)

您需要将Cassandra作为systemd服务运行,如下所述:https://coreos.com/os/docs/latest/getting-started-with-systemd.html

使用cassandra -f作为ExecStart=命令在前台运行将允许systemd管理进程的状态(理想情况是在容器内)。

虽然这与您习惯的有点不同,但它将导致整体更稳定的机制,因为您将使用了解依赖关系链,重新启动和重新启动行为,日志记录等的init系统。 / p>

答案 2 :(得分:0)

在屏幕或tmux会话中运行该过程。从屏幕会话中分离应该允许进程继续运行。