summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorValerij Fredriksen <valerij92@gmail.com>2019-06-15 15:04:23 +0200
committerValerij Fredriksen <valerij92@gmail.com>2019-06-16 12:00:55 +0200
commitcc7e67d52ae39d3e6cf929d79ccbc0f91b3eadb7 (patch)
treea8576d4b9ebcc01c4f4b1fab55ddce311fec5fac
parentc506af97ddcb0dfcc544d58032b748a9aa0e5b5e (diff)
Remove docker.nodes.image.loading metric
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImpl.java6
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgent.java5
-rw-r--r--node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgentImpl.java22
3 files changed, 5 insertions, 28 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImpl.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImpl.java
index 0d520241ac8..de3e6a7c64f 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImpl.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeadmin/NodeAdminImpl.java
@@ -39,10 +39,8 @@ public class NodeAdminImpl implements NodeAdmin {
private boolean previousWantFrozen;
private boolean isFrozen;
private Instant startOfFreezeConvergence;
-
private final Map<String, NodeAgentWithScheduler> nodeAgentWithSchedulerByHostname = new ConcurrentHashMap<>();
- private final GaugeWrapper numberOfContainersInLoadImageState;
private final GaugeWrapper jvmHeapUsed;
private final GaugeWrapper jvmHeapFree;
private final GaugeWrapper jvmHeapTotal;
@@ -108,14 +106,11 @@ public class NodeAdminImpl implements NodeAdmin {
public void updateNodeAgentMetrics() {
int numberContainersWaitingImage = 0;
int numberOfNewUnhandledExceptions = 0;
-
for (NodeAgentWithScheduler nodeAgentWithScheduler : nodeAgentWithSchedulerByHostname.values()) {
- if (nodeAgentWithScheduler.isDownloadingImage()) numberContainersWaitingImage++;
numberOfNewUnhandledExceptions += nodeAgentWithScheduler.getAndResetNumberOfUnhandledExceptions();
nodeAgentWithScheduler.updateContainerNodeMetrics();
}
- numberOfContainersInLoadImageState.sample(numberContainersWaitingImage);
numberOfUnhandledExceptionsInNodeAgent.add(numberOfNewUnhandledExceptions);
}
@@ -208,7 +203,6 @@ public class NodeAdminImpl implements NodeAdmin {
@Override public void stopForHostSuspension() { nodeAgent.stopForHostSuspension(); }
@Override public void stopForRemoval() { nodeAgent.stopForRemoval(); }
@Override public void updateContainerNodeMetrics() { nodeAgent.updateContainerNodeMetrics(); }
- @Override public boolean isDownloadingImage() { return nodeAgent.isDownloadingImage(); }
@Override public int getAndResetNumberOfUnhandledExceptions() { return nodeAgent.getAndResetNumberOfUnhandledExceptions(); }
@Override public void scheduleTickWith(NodeAgentContext context, Instant at) { nodeAgentScheduler.scheduleTickWith(context, at); }
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgent.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgent.java
index d62cb8e45d9..de5ee1b69a4 100644
--- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgent.java
+++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/nodeagent/NodeAgent.java
@@ -33,11 +33,6 @@ public interface NodeAgent {
void updateContainerNodeMetrics();
/**
- * Returns true if NodeAgent is waiting for an image download to finish
- */
- boolean isDownloadingImage();
-
- /**
* Returns and resets number of unhandled exceptions
*/
int getAndResetNumberOfUnhandledExceptions();
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 cfdcefec1e3..408cffe2405 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
@@ -73,8 +73,6 @@ public class NodeAgentImpl implements NodeAgent {
private final DoubleFlag containerCpuCap;
private int numberOfUnhandledException = 0;
- private DockerImage imageBeingDownloaded = null;
-
private long currentRebootGeneration = 0;
private Optional<Long> currentRestartGeneration = Optional.empty();
@@ -378,14 +376,10 @@ public class NodeAgentImpl implements NodeAgent {
|| (zone.getSystemName().isCd() && zone.getEnvironment() != Environment.prod);
}
- private void scheduleDownLoadIfNeeded(NodeSpec node, Optional<Container> container) {
- if (node.getWantedDockerImage().equals(container.map(c -> c.image))) return;
+ private boolean downloadImageIfNeeded(NodeSpec node, Optional<Container> container) {
+ if (node.getWantedDockerImage().equals(container.map(c -> c.image))) return false;
- if (dockerOperations.pullImageAsyncIfNeeded(node.getWantedDockerImage().get())) {
- imageBeingDownloaded = node.getWantedDockerImage().get();
- } else if (imageBeingDownloaded != null) { // Image was downloading, but now it's ready
- imageBeingDownloaded = null;
- }
+ return node.getWantedDockerImage().map(dockerOperations::pullImageAsyncIfNeeded).orElse(false);
}
public void converge(NodeAgentContext context) {
@@ -448,9 +442,8 @@ public class NodeAgentImpl implements NodeAgent {
.filter(diskUtil -> diskUtil >= 0.8)
.ifPresent(diskUtil -> storageMaintainer.removeOldFilesFromNode(context));
- scheduleDownLoadIfNeeded(node, container);
- if (isDownloadingImage()) {
- context.log(logger, "Waiting for image to download " + imageBeingDownloaded.asString());
+ if (downloadImageIfNeeded(node, container)) {
+ context.log(logger, "Waiting for image to download " + context.node().getWantedDockerImage().get().asString());
return;
}
container = removeContainerIfNeededUpdateContainerState(context, container);
@@ -634,11 +627,6 @@ public class NodeAgentImpl implements NodeAgent {
}
@Override
- public boolean isDownloadingImage() {
- return imageBeingDownloaded != null;
- }
-
- @Override
public int getAndResetNumberOfUnhandledExceptions() {
int temp = numberOfUnhandledException;
numberOfUnhandledException = 0;