The BES Centos 7 RPM as packaged does not support `systemctl enable bes`

Description

It may not support any commands using `systemctl` and only support `service`. Fix, since `systemctl` is how you enable a service to start at boot time. That is, it's not the only way, but it's the documented easy way.

Environment

None

Activity

Show:
James Gallagher
January 31, 2019, 7:06 PM
Edited

systemctl on CentOS 7 expects the bes.pid file to be in /var/run/, not /var/run/bes/ and expects it to contain the pid as text, with nothing else. If we make those changes, systemctl start besd works. systemctl enable besd still redirects to chkconfig, but seems to work. To make the BES a 'native service' for systemctl (which is the control program for systemd), we will have to write a besd.service file and install it in ...?

I made local hacks to /bin/besctl that fix the bes.pid file and rebooted the system. The BES should be running when the machine comes back up.

James Gallagher
January 31, 2019, 7:10 PM

Yes, those edits work. I think keeping the besctl as it is makes sense for now. This script can be called by both service and systemctl, so it supports both C6 and C7. We can revisit writing a besd.service script later...

For now, modify the besdaemon and besctl script.

James Gallagher
January 31, 2019, 9:04 PM
Edited

I noticed that the rpm builds are still using curl to move stuff from S3 - switch to the aws cli tool.

Here's some info on systemctl and the service files: https://www.linode.com/docs/quick-answers/linux-essentials/introduction-to-systemctl/

James Gallagher
February 11, 2019, 5:40 PM

Tested; works

Assignee

James Gallagher

Reporter

James Gallagher

Labels

Fix versions

Time remaining

0m

Story Points

0.5

Epic Link

Priority

Medium
Configure