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