我想在Docker(ubuntu 14.04)上启动一个cassandra(而不是dsc)服务器。当我运行service cassandra start
(根),我得到的文件Docker + Cassandra ulimit错误
/etc/init.d/cassandra: 82: ulimit: error setting limit (Operation not permitted)
线82
ulimit -l unlimited
我真的不知道我需要改变它。
我想在Docker(ubuntu 14.04)上启动一个cassandra(而不是dsc)服务器。当我运行service cassandra start
(根),我得到的文件Docker + Cassandra ulimit错误
/etc/init.d/cassandra: 82: ulimit: error setting limit (Operation not permitted)
线82
ulimit -l unlimited
我真的不知道我需要改变它。
一个简短的介绍ulimit:RESOURCE LIMITS ON UNIX SYSTEMS (ULIMIT)。 此初始化脚本试图发出的命令应该将最大锁定内存限制设置为无限制。应该成功为根。 whoami print root?
UPD:进一步的研究导致我到this Google Groups讨论。希望它能澄清一些事情。
我希望你会得到那个警告,但Cassandra会继续启动并正常运行。正如在另一个答案中指出的,由于安全原因,Docker限制某些操作。在这种情况下,Casssandra初始化脚本试图允许无限制的锁定内存。假设你在禁用swap的情况下运行(因为它是Cassandra的最佳实践),那么你可以放心地忽略这个错误。
我在Docker中为我的开发环境运行Cassandra并获得了此警告,但Cassandra启动并运行得很好。如果它没有启动,请检查cassandra日志文件是否有其他问题。
我不知道是否有一个安全/合理的价值设置为w.r.t.卡桑德拉如果无限是不可能的。 – David