Relevant product(s): All
Operating systems: RHEL
Versions affected: 2023 releases and later
Relevant area(s): Licensing
Summary
This article describes how SALT server can be configured as a SYSTEMD service manually on Linux. The SALT installer should do this automatically, but for situations where this is needed to be done manually, the steps are described here.
Pre-requisites
- SiemensLicenseServer_v2.x.x.x_Lnx64_x86-64.bin – Downloadable from Siemens Support (Linux)
- Installation of the above in order to have access to the license utilities (server and DAEMON files)
- Root or administrative access to your RHEL license server
Details
Please make sure an installation of the server (pre-requisites section) exists on your system, otherwise you won’t have access to the utilities and the DAEMON necessary for the service setup.
Install the SALT licensing software, and move the license files and setup scripts for this service under the installation directory on your system. We recommend using the /opt directory. The /opt directory is a dedicated third party software directory in Linux.
The installed files should be similar to:
Define the service file under the standard service directory with a name “<name>.service”. Create a blank service under this directory using your favourite editor. In this example, we will call it “saltd.service”:
/etc/systemd/system/saltd.service |
The contents of the file should be as shown below. Please modify “SALT_HOME” and “SALT_LICENSE_SERVER” to your own system.
SALT_HOME: the home directory of SALT installation
SALT_LICENSE_SERVER: the license file/directory path
[Unit] Description=SIEMENS: lmgrd with saltd vendor daemon: 29000@%H After=network.target ConditionPathExists=!/var/tmp/locksaltd [Service] Type=simple User=saltd Group=saltd Environment=”SALT_HOME=/opt/Siemens/LicenseServer” Environment=”SALT_LICENSE_SERVER=/opt/Siemens/LicenseServer/ActiveLicenses” # Version=2.2.0.0 # WorkingDirectory=”/opt/Siemens/Salt/” LimitNOFILE=65536 ExecStart=/usr/bin/env “${SALT_HOME}/lmgrd” -z -reuseaddr -c “${SALT_LICENSE_SERVER}” -l “${SALT_HOME}/saltd.log” -local ExecStop=/usr/bin/env “${SALT_HOME}/lmutil” lmdown -q -force -c “${SALT_LICENSE_SERVER}” ExecReload=/usr/bin/env “${SALT_HOME}/lmutil” lmdown -q -force -c “${SALT_LICENSE_SERVER}”; “${SALT_HOME}/lmgrd” -z -reuseaddr -c “${SALT_LICENSE_SERVER}” -l +”${SALT_HOME}/saltd.log” -local RestartSec=30 [Install] WantedBy=multi-user.target |
"
) rather than smart quotes(”
).The above entries can be understood by referring to the RHEL user manual for systemd here for their description.
Please then save the above.
Once this file is saved, start the service using the daemon-reload and start the service:
sudo systemctl daemon-reload sudo systemctl start saltd.service |
To ensure the service starts automatically after every system reboot, use the following command:
sudo systemctl enable saltd.service |
To check if the service is running you can run the command:
sudo systemctl status saltd.service |
Troubleshooting
A log file is created when attempting to start the service which will provide information on why the service may have failed to run. This file is saved to $SALT_HOME.
A reason why the service may be failing is if an existing licensing service is running. In the case use the command below to stop the service. If this fails, you can use the disable command on the service.
sudo systemctl stop <servicename>.service sudo systemctl disable <servicename>.service |
If problems persist, then open a support request with ourselves and a member of the team will investigate.
References
RHEL systemd documentation: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_guide/chap-managing_services_with_systemd
Siemens Digital Industries Software Licensing Manual for Mentor® Products: https://docs.sw.siemens.com/en-US/product/852852103/doc/DC202112090.docs.sw_siemens_licensing_mgc.en_us/pdf/?audience=external