在使用Ubuntu 14.04 x64的Digital Ocean Droplet上,我安装了DSC 2.0软件包。该服务未保持启动状态,服务状态返回could not access pidfile for Cassandra
。日志文件中没有错误。 ps aux | grep cassandra
也不会返回任何内容。
This建议您执行sudo chmod 750 /var/run/cassandra
或删除该文件夹。两者都不起作用。如果我status
,我可以简单地获取chmod -R 777 /var/run/cassandra/
命令来读取pid,但很快就会失败,开始返回could not read...
错误。
步骤(以root身份):
sudo apt-get update
& sudo apt-get install dsc20
sudo service cassandra status
获取could not access pidfile for Cassandra
nodetool status
获取Failed to connect to '127.0.0.1:7199': Connection refused
ps aux | grep cassandra
仅返回返回的grep行答案 0 :(得分:2)
正如您所指出的,最小的数字海洋液滴没有为Cassandra提供足够的RAM来完成启动。如果您查看日志/var/log/cassandra/system.log
,它通常会在某个随机点被切断。
对于Digital Ocean的任何真正开发,我通常选择1或2GB RAM配置。
通过一些试验和错误,您可以手动降低Cassandra内存使用量以使其正常工作。在文件/etc/cassandra/cassandra-env.sh
中,我设置了以下内容:
MAX_HEAP_SIZE="150M"
HEAP_NEWSIZE="40M"
在我的测试中,它足够低,可以在512 MB的环境中运行。我不确定它有多可用,但它会运行:)