diff --git a/internal/config/cgmgr/systemd.go b/internal/config/cgmgr/systemd.go index a81256b0a1a..82138a65079 100644 --- a/internal/config/cgmgr/systemd.go +++ b/internal/config/cgmgr/systemd.go @@ -82,7 +82,7 @@ func (*SystemdManager) MoveConmonToCgroup(cid, cgroupParent, conmonCgroup string Value: dbus.MakeVariant(int(unix.SIGPIPE)), } logrus.Debugf("Running conmon under slice %s and unitName %s", cgroupParent, conmonUnitName) - if err := utils.RunUnderSystemdScope(pid, cgroupParent, conmonUnitName, killSignalProp); err != nil { + if err := utils.RunUnderSystemdScope(pid, cgroupParent, conmonUnitName, killSignalProp, systemdDbus.PropAfter("crio.service")); err != nil { return "", errors.Wrapf(err, "failed to add conmon to systemd sandbox cgroup") } // return empty string as path because cgroup cleanup is done by systemd diff --git a/pkg/container/container.go b/pkg/container/container.go index da1ee4ca1be..6f67d93f060 100644 --- a/pkg/container/container.go +++ b/pkg/container/container.go @@ -247,6 +247,7 @@ func (c *container) SpecAddAnnotations(ctx context.Context, sb *sandbox.Sandbox, c.spec.AddAnnotation("org.systemd.property.CollectMode", "'inactive-or-failed'") } c.spec.AddAnnotation("org.systemd.property.DefaultDependencies", "true") + c.spec.AddAnnotation("org.systemd.property.After", "['crio.service']") } if configStopSignal != "" {