How to deal with failing services in the boot targets
Xo Wang
xow at google.com
Fri Feb 10 06:28:11 AEDT 2017
On Thu, Feb 9, 2017 at 8:32 AM, Andrew Geissler <geissonator at gmail.com> wrote:
> Some updates on this topic as I've gone into implementation.
>
> The use of "system" in the quiesce target resulted in a lot of
> discussion. What's a system in relation to a chassis or host? We
> then started discussing blade centers (1 bmc to many blade servers)
> and high end servers (1 bmc to many chassis).
>
> This also led to discussion on whether we can really do a generic
> recovery when the chassis power on target vs. the host start target
> fails.
>
> The outcome was the following:
> - We'll rename the obmc-quiesce-system at .target to
> obmc-quiesce-host at .target. We'll create an instance per host (which
> is currently 1 for all systems).
> - When the chassis power on target fails, we'll have it's
> "onFailure=chassis power off" instead of quiesce. The power on should
> be very minimal and if we fail, the only recovery is to power off and
> try again. When the host start target fails, we'll go to the host
> quiesce target. The recovery from that could be to power on/off again
> but it could also be to just re-run the host start target (i.e. leave
> chassis power on).
>
Sounds reasonable to me. If at some point we have specific power
sequencing requirements, this would handle "tearing down" that
sequence in the correct order.
> Also, Brad noted in the code review that we should not be putting the
> target to service dependencies in the target files. The target files
> are meant to be generic to allow different implementations on the
> services required to achieve them. Instead, I'll be putting the
> relationship into the recipe files.
>
I guess normally this is expressed by the [Install] directives in the
service files, then associated to targets at service install time by
systemd.
It looks to me like our installation is handled by SYSTEMD_LINK in
obmc-phosphor-systemd so, agreed, that's ultimately where we express
the relationships.
> If you'd like to follow along on the reviews:
> https://gerrit.openbmc-project.xyz/#/c/2253/ # doc updates
> https://gerrit.openbmc-project.xyz/#/c/2115/ # target and recipe updates
>
> Andrew
>
Thanks for taking this on Andrew.
cheers
xo
More information about the openbmc
mailing list