Docker + Cassandra ulimit错误
我正在尝试在Docker上启动一个cassandra(而不是dsc)服务器(ubuntu 14.04)。 当我运行service cassandra start
(作为根),我得到
/etc/init.d/cassandra: 82: ulimit: error setting limit (Operation not permitted)
该文件的第82行是
ulimit -l unlimited
我不确定我需要改变它。
ulimit的简短介绍: UNIX系统上的资源限制(ULIMIT) 。 这个init脚本试图发出的命令应该是将最大locking的内存限制设置为无限制。 应该成功的根。 whoami打印根吗?
UPD:进一步的研究让我对这个 Google小组讨论。 希望它能澄清一些事情。
我希望你会得到这个警告,但卡桑德拉将继续启动和正确运行。 正如在另一个答案中指出的,由于安全原因,Docker限制某些操作。 在这种情况下,Casssandra初始化脚本试图允许无限制的locking内存。 假设你正在运行交换禁用(因为这是一个卡桑德拉最佳实践),那么你可以放心地忽略这个错误。
我在Docker中为我的开发环境运行Cassandra,也得到这个警告,但Cassandra启动并运行得很好。 如果没有启动,请检查cassandra日志文件是否有其他问题。