mirror of
https://git.vectorsigma.ru/public/k3s.git
synced 2026-08-05 03:39:59 +00:00
Fix server systemd detection
* Use INVOCATION_ID to detect execution under systemd, since as of a9b5a1933f NOTIFY_SOCKET is now cleared by the server code.
* Set the unit type to notify by default for both server and agent, which is what Rancher-managed installs have done for a while.
Signed-off-by: Brad Davidson <brad.davidson@rancher.com>
This commit is contained in:
committed by
Brad Davidson
parent
1674b9d640
commit
bd5fdfce33
@@ -217,11 +217,7 @@ setup_env() {
|
||||
if [ -n "${INSTALL_K3S_TYPE}" ]; then
|
||||
SYSTEMD_TYPE=${INSTALL_K3S_TYPE}
|
||||
else
|
||||
if [ "${CMD_K3S}" = server ]; then
|
||||
SYSTEMD_TYPE=notify
|
||||
else
|
||||
SYSTEMD_TYPE=exec
|
||||
fi
|
||||
SYSTEMD_TYPE=notify
|
||||
fi
|
||||
|
||||
# --- use binary install directory if defined or create default ---
|
||||
|
||||
@@ -52,7 +52,10 @@ func setupContainerdConfig(ctx context.Context, cfg *config.Node) error {
|
||||
if disableCgroup {
|
||||
logrus.Warn("cgroup v2 controllers are not delegated for rootless. Disabling cgroup.")
|
||||
} else {
|
||||
cfg.AgentConfig.Systemd = controllers["cpuset"] && os.Getenv("NOTIFY_SOCKET") != ""
|
||||
// note: this mutatation of the passed agent.Config is later used to set the
|
||||
// kubelet's cgroup-driver flag. This may merit moving to somewhere else in order
|
||||
// to avoid mutating the configuration while setting up containerd.
|
||||
cfg.AgentConfig.Systemd = !isRunningInUserNS && controllers["cpuset"] && os.Getenv("INVOCATION_ID") != ""
|
||||
}
|
||||
|
||||
var containerdTemplate string
|
||||
|
||||
Reference in New Issue
Block a user