RedHat systemd configuration

As of DSE version 5.1.19, systemd units are now included for RHEL-based and compatible systems.

The following units are installed in /usr/lib/systemd/system:

  • dse.target: starts DSE nodes

  • dse-shutdown.target: stops DSE nodes

In addition, a dse@.service template is installed into /usr/share/dse/templates and serves as a template unit for all DSE node instances running on the host OS under the cassandra user. That template is used by the dse add-node command and the /usr/share/dse/tools/dse-convert-to-systemd helper script.

Once dse.target is enabled, the dse add-node command creates and enables systemd service for new nodes, and also creates init.d scripts to redirect lifecycle commands to systemctl.

By default, systemd units are not enabled. Old init.d scripts remain in effect.

On systems that have systemd, the old init.d services can still be manipulated using systemd commands, for instance, systemctl start dse.

Procedure

To enable DSE systemd units:

  1. Stop the DSE init.d service:

    sudo service dse stop
  2. Enable dse.target:

    sudo systemctl enable dse.target

    After dse.target is enabled, DSE nodes automatically start as part of the multi-user target on each reboot.

  3. On each node run:

    sudo /usr/share/dse/tools/dse-convert-to-systemd full-node-id

    The node address, full-node-id must be the full node ID including the dse- prefix. The default node ID if no other nodes are configured is dse.

    /usr/share/dse/tools/dse-convert-to-systemd dse-node1

    The dse-convert-tosystemd script makes the following changes:

    • Creates and enables systemd units for DSE nodes in /etc/systemd/system/.

    • Modifies the DSE init.d script to redirect lifecycle commands to systemctl.

Next steps

DSE systemd operations include:

  • Start all DSE nodes:

    systemctl start dse.target
  • Stop all DSE nodes:

    systemctl start dse-shutdown.target
  • Start one DSE node:

    systemctl start full-node-id
  • Stop one DSE node:

    systemctl stop full-node-id

The default start timeout is 10 minutes and the default stop timeout is 30 seconds. Those values can be adjusted by editing the corresponding unit files.

Was this helpful?

Give Feedback

How can we improve the documentation?

© 2024 DataStax | Privacy policy | Terms of use

Apache, Apache Cassandra, Cassandra, Apache Tomcat, Tomcat, Apache Lucene, Apache Solr, Apache Hadoop, Hadoop, Apache Pulsar, Pulsar, Apache Spark, Spark, Apache TinkerPop, TinkerPop, Apache Kafka and Kafka are either registered trademarks or trademarks of the Apache Software Foundation or its subsidiaries in Canada, the United States and/or other countries. Kubernetes is the registered trademark of the Linux Foundation.

General Inquiries: +1 (650) 389-6000, info@datastax.com