我想在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