On 06/27/2011 10:59 PM, Steven Dake wrote:
Currently the Audrey script runs as a replacement to rc.local. Matahari runs at S99. The general idea is for Audrey script to run as S98 (before Matahari) and write a management-wide unique instance UUID to
Relying on start priority levels seems fragile, esp. with systemd which "provides aggressive parallelization"
the file /etc/vm_machine_id (audrey has access to this information).
Matahari could be changed to read /etc/vm_machine_id first. If that file doesn't exist, /var/lib/dbus/machine_id would be read.
This creates some difficulty in running the audrey script at a specific runlevel (it requires some changes to oz to insert init scripts).
To express such dependency you could use LSB initscript header Required-Start: in matahari initscript (which one, matahari-host I guess?) but such dependency in Matahari doesn't seem right. In systemd unit file you could specify Before and After, but that's only for Fedora >= 15.
Another option is for the current rc.local script that audrey replaces to run the Matahari service starting giblits as its first action.
That actually might be the most reliable and portable way.
Alan