diff options
author | gjoranv <gv@verizonmedia.com> | 2023-03-08 16:23:29 +0100 |
---|---|---|
committer | gjoranv <gv@verizonmedia.com> | 2023-03-08 16:26:03 +0100 |
commit | fef0ff505f88e35b49a873be559d27bec876be3e (patch) | |
tree | d29e2623a595486ff0dfbc531e8160efbcda8dff /node-admin | |
parent | 5f5ac4ca072b715392f91d301231eed4c27d9ffd (diff) |
Add workaround to restart wg process early after host-admin restart.
Diffstat (limited to 'node-admin')
-rw-r--r-- | node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java index e363e85b898..7143874114d 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java @@ -483,6 +483,13 @@ public class NodeAgentImpl implements NodeAgent { storageMaintainer.cleanDiskIfFull(context); storageMaintainer.handleCoreDumpsForContainer(context, container, false); + // TODO: this is a workaround for restarting wireguard as early as possible after host-admin has been down. + var wireguardTasksRun = false; + if (container.isPresent() && container.get().state().isRunning()) { + wireguardTasks.forEach(task -> task.converge(context)); + wireguardTasksRun = true; + } + if (downloadImageIfNeeded(context, container)) { context.log(logger, "Waiting for image to download " + context.node().wantedDockerImage().get().asString()); return; @@ -498,7 +505,7 @@ public class NodeAgentImpl implements NodeAgent { } aclMaintainer.ifPresent(maintainer -> maintainer.converge(context)); - wireguardTasks.forEach(task -> task.converge(context)); + if (! wireguardTasksRun) wireguardTasks.forEach(task -> task.converge(context)); startServicesIfNeeded(context); resumeNodeIfNeeded(context); if (healthChecker.isPresent()) { |