Details
-
Improvement
-
Status: Changes Suggested
-
Low
-
Resolution: Unresolved
-
None
-
None
Description
I've been testing Cassandra on trunk on Debian stretch, and have been creating my own systemd service files for Cassandra. My Cassandra clusters would sometimes die due to too many open files.
As it turns out after some digging, this is because systemd ignores /etc/security/limits.conf. It relies on a configuration file in <service-name>.d/<service-name>.conf. There's more information here: https://www.freedesktop.org/software/systemd/man/systemd-system.conf.html.
So, for example, for /etc/systemd/system/cassandra.service, the ulimits are read from /etc/systemd/system/cassandra.service.d/cassandra.conf.
Crosschecking with the limits of my Cassandra process, it looks like the /etc/security/limits.conf really were not respected. If I make the change above, then it works as expected. /etc/security/limits.conf is shipped in Cassandra's debian package.
Given that there are far more distributions using Systemd (Ubuntu is now as well), I was wondering if it's worth the effort to change Cassandra's debian packaging to use systemd (or at least, include systemd service). I'm not totally familiar with whether it's common or normal to include a service file in packaging so happy to be corrected/cancelled depending on what people think.
Attachments
Issue Links
- is related to
-
CASSANDRA-13148 Systemd support for RPM
- Open