[systemd-devel] Ordering issues

Andrei Borzenkov arvidjaar at gmail.com
Thu Jan 5 06:42:06 UTC 2023


On 04.01.2023 21:21, Scott Ellentuch wrote:
> Hi,
> 
> I'm trying to do something with inconsistent results and wondered where I'm
> going wrong. I recently installed GLUSTERFS onto a set of 4 Raspberry PI's,
> but am having some boot sequencing issues.
> 
> It started trying to run rsyslogd. Apparently, it was getting started
> before the gluster mount was done. After a bit of looking, I added into
> [Unit] -
> 
> After=glusterd.service
> 
> Restarted the machine and all good. So the next thing I tried was for
> keepalived . It started up and failed with not being able to see its config
> file (Moved to gluster).

It checks for /etc/keepalived/keepalived.conf file. If you moved this 
file somewhere else, you presumably need to adjust path to this file in 
unit definition as well.

> I changed -
> 
> [Unit]
> Description=Keepalive Daemon (LVS and VRRP)
> After=network-online.target
> Wants=network-online.target
> # Only start if there is a configuration file
> ConditionFileNotEmpty=/etc/keepalived/keepalived.conf
> 
> to
> 
> [Unit]
> Description=Keepalive Daemon (LVS and VRRP)
> After=network-online.target glusterd.service
> Wants=network-online.target glusterd.service
> # Only start if there is a configuration file
> ConditionFileNotEmpty=/etc/keepalived/keepalived.conf
> 
> But it still isn't letting glusterd run before it. 

What exactly does it mean? What is "it" that "isn't letting" and what is 
"it" in "before it" and how you determine that the problem is due to the 
wrong order?

>(And I did run
> `systemctl daemon-reload` after the change.
>

daemon-reload applies to units started after it. When you edited unit 
definition your system was already booted so presumably this unit was 
already activated.


> How can I track down why this isn't happening in the order I expect?
> 

What makes you think the problem is in ordering of units? Have you 
checked journal? systemd logs when it begins and completes activation of 
each unit.


More information about the systemd-devel mailing list