aboutsummaryrefslogtreecommitdiffstats
path: root/node-repository
diff options
context:
space:
mode:
authorValerij Fredriksen <valerijf@verizonmedia.com>2019-05-31 14:07:11 +0200
committerValerij Fredriksen <valerij92@gmail.com>2019-06-01 12:44:09 +0200
commit70af57f29584111fbdd6cdaeab6c018a0a105cb7 (patch)
treef5bda4e90a8b657f1d79b36ffdeb861432f7e82c /node-repository
parenta8290d04f124fdfefc6dbfba245c4605f7722b65 (diff)
Remove nodeAdminInContainer from configserver.def
Diffstat (limited to 'node-repository')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailer.java8
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRepositoryMaintenance.java7
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailTester.java15
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailerTest.java32
4 files changed, 8 insertions, 54 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailer.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailer.java
index 8102f5cc305..b7e8395cc92 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailer.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailer.java
@@ -1,7 +1,6 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.hosted.provision.maintenance;
-import com.yahoo.cloud.config.ConfigserverConfig;
import com.yahoo.config.provision.Deployer;
import com.yahoo.config.provision.Deployment;
import com.yahoo.config.provision.HostLivenessTracker;
@@ -68,13 +67,11 @@ public class NodeFailer extends Maintainer {
private final Instant constructionTime;
private final ThrottlePolicy throttlePolicy;
private final Metric metric;
- private final ConfigserverConfig configserverConfig;
public NodeFailer(Deployer deployer, HostLivenessTracker hostLivenessTracker,
ServiceMonitor serviceMonitor, NodeRepository nodeRepository,
Duration downTimeLimit, Clock clock, Orchestrator orchestrator,
- ThrottlePolicy throttlePolicy, Metric metric,
- ConfigserverConfig configserverConfig) {
+ ThrottlePolicy throttlePolicy, Metric metric) {
// check ping status every five minutes, but at least twice as often as the down time limit
super(nodeRepository, min(downTimeLimit.dividedBy(2), Duration.ofMinutes(5)));
this.deployer = deployer;
@@ -86,7 +83,6 @@ public class NodeFailer extends Maintainer {
this.constructionTime = clock.instant();
this.throttlePolicy = throttlePolicy;
this.metric = metric;
- this.configserverConfig = configserverConfig;
}
@Override
@@ -244,7 +240,7 @@ public class NodeFailer extends Maintainer {
}
private boolean expectConfigRequests(Node node) {
- return !node.type().isDockerHost() || configserverConfig.nodeAdminInContainer();
+ return !node.type().isDockerHost();
}
private boolean hasNodeRequestedConfigAfter(Node node, Instant instant) {
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRepositoryMaintenance.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRepositoryMaintenance.java
index 9ace6ad55ef..18ae7e17d6d 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRepositoryMaintenance.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRepositoryMaintenance.java
@@ -2,7 +2,6 @@
package com.yahoo.vespa.hosted.provision.maintenance;
import com.google.inject.Inject;
-import com.yahoo.cloud.config.ConfigserverConfig;
import com.yahoo.component.AbstractComponent;
import com.yahoo.config.provision.Deployer;
import com.yahoo.config.provision.Environment;
@@ -59,21 +58,19 @@ public class NodeRepositoryMaintenance extends AbstractComponent {
public NodeRepositoryMaintenance(NodeRepository nodeRepository, Deployer deployer, InfraDeployer infraDeployer,
HostLivenessTracker hostLivenessTracker, ServiceMonitor serviceMonitor,
Zone zone, Orchestrator orchestrator, Metric metric,
- ConfigserverConfig configserverConfig,
ProvisionServiceProvider provisionServiceProvider,
FlagSource flagSource) {
this(nodeRepository, deployer, infraDeployer, hostLivenessTracker, serviceMonitor, zone, Clock.systemUTC(),
- orchestrator, metric, configserverConfig, provisionServiceProvider, flagSource);
+ orchestrator, metric, provisionServiceProvider, flagSource);
}
public NodeRepositoryMaintenance(NodeRepository nodeRepository, Deployer deployer, InfraDeployer infraDeployer,
HostLivenessTracker hostLivenessTracker, ServiceMonitor serviceMonitor,
Zone zone, Clock clock, Orchestrator orchestrator, Metric metric,
- ConfigserverConfig configserverConfig,
ProvisionServiceProvider provisionServiceProvider, FlagSource flagSource) {
DefaultTimes defaults = new DefaultTimes(zone);
- nodeFailer = new NodeFailer(deployer, hostLivenessTracker, serviceMonitor, nodeRepository, durationFromEnv("fail_grace").orElse(defaults.failGrace), clock, orchestrator, throttlePolicyFromEnv().orElse(defaults.throttlePolicy), metric, configserverConfig);
+ nodeFailer = new NodeFailer(deployer, hostLivenessTracker, serviceMonitor, nodeRepository, durationFromEnv("fail_grace").orElse(defaults.failGrace), clock, orchestrator, throttlePolicyFromEnv().orElse(defaults.throttlePolicy), metric);
periodicApplicationMaintainer = new PeriodicApplicationMaintainer(deployer, nodeRepository, defaults.redeployMaintainerInterval, durationFromEnv("periodic_redeploy_interval").orElse(defaults.periodicRedeployInterval));
operatorChangeApplicationMaintainer = new OperatorChangeApplicationMaintainer(deployer, nodeRepository, clock, durationFromEnv("operator_change_redeploy_interval").orElse(defaults.operatorChangeRedeployInterval));
reservationExpirer = new ReservationExpirer(nodeRepository, clock, durationFromEnv("reservation_expiry").orElse(defaults.reservationExpiry));
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailTester.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailTester.java
index 9e57ae6dcd6..3e42a0efad7 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailTester.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailTester.java
@@ -1,7 +1,6 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.hosted.provision.maintenance;
-import com.yahoo.cloud.config.ConfigserverConfig;
import com.yahoo.component.Version;
import com.yahoo.config.provision.ApplicationId;
import com.yahoo.config.provision.ApplicationName;
@@ -78,13 +77,8 @@ public class NodeFailTester {
private final Orchestrator orchestrator;
private final NodeRepositoryProvisioner provisioner;
private final Curator curator;
- private final ConfigserverConfig configserverConfig;
private NodeFailTester() {
- this(new ConfigserverConfig(new ConfigserverConfig.Builder()));
- }
-
- private NodeFailTester(ConfigserverConfig configserverConfig) {
clock = new ManualClock();
curator = new MockCurator();
nodeRepository = new NodeRepository(nodeFlavors, curator, clock, zone, new MockNameResolver().mockAnyLookup(),
@@ -92,15 +86,10 @@ public class NodeFailTester {
provisioner = new NodeRepositoryProvisioner(nodeRepository, nodeFlavors, zone, new MockProvisionServiceProvider(), new InMemoryFlagSource());
hostLivenessTracker = new TestHostLivenessTracker(clock);
orchestrator = new OrchestratorMock();
- this.configserverConfig = configserverConfig;
}
public static NodeFailTester withTwoApplications() {
- return withTwoApplications(new ConfigserverConfig(new ConfigserverConfig.Builder()));
- }
-
- public static NodeFailTester withTwoApplications(ConfigserverConfig configserverConfig) {
- NodeFailTester tester = new NodeFailTester(configserverConfig);
+ NodeFailTester tester = new NodeFailTester();
tester.createReadyNodes(16, nodeResources);
tester.createHostNodes(3);
@@ -209,7 +198,7 @@ public class NodeFailTester {
}
public NodeFailer createFailer() {
- return new NodeFailer(deployer, hostLivenessTracker, serviceMonitor, nodeRepository, downtimeLimitOneHour, clock, orchestrator, NodeFailer.ThrottlePolicy.hosted, metric, configserverConfig);
+ return new NodeFailer(deployer, hostLivenessTracker, serviceMonitor, nodeRepository, downtimeLimitOneHour, clock, orchestrator, NodeFailer.ThrottlePolicy.hosted, metric);
}
public void allNodesMakeAConfigRequestExcept(Node ... deadNodeArray) {
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailerTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailerTest.java
index a8b0d0becd4..66c05e474a8 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailerTest.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/maintenance/NodeFailerTest.java
@@ -1,8 +1,6 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.hosted.provision.maintenance;
-import com.yahoo.cloud.config.ConfigserverConfig;
-import com.yahoo.config.provision.Flavor;
import com.yahoo.config.provision.NodeResources;
import com.yahoo.config.provision.NodeType;
import com.yahoo.vespa.applicationmodel.ServiceInstance;
@@ -337,34 +335,8 @@ public class NodeFailerTest {
}
@Test
- public void docker_host_failed_without_config_requests() {
- NodeFailTester tester = NodeFailTester.withTwoApplications(
- new ConfigserverConfig(new ConfigserverConfig.Builder().nodeAdminInContainer(true))
- );
-
- // For a day all nodes work so nothing happens
- for (int minutes = 0, interval = 30; minutes < 24 * 60; minutes += interval) {
- tester.clock.advance(Duration.ofMinutes(interval));
- tester.allNodesMakeAConfigRequestExcept();
- tester.failer.run();
- assertEquals( 3, tester.nodeRepository.getNodes(NodeType.host, Node.State.ready).size());
- assertEquals( 0, tester.nodeRepository.getNodes(NodeType.host, Node.State.failed).size());
- }
-
-
- // Two ready nodes and a ready docker node die, but only 2 of those are failed out
- tester.clock.advance(Duration.ofMinutes(180));
- Node dockerHost = tester.nodeRepository.getNodes(NodeType.host, Node.State.ready).iterator().next();
- tester.allNodesMakeAConfigRequestExcept(dockerHost);
- tester.failer.run();
- assertEquals( 2, tester.nodeRepository.getNodes(NodeType.host, Node.State.ready).size());
- assertEquals( 1, tester.nodeRepository.getNodes(NodeType.host, Node.State.failed).size());
- }
-
- @Test
- public void not_failed_without_config_requests_if_node_admin_on_host() {
- NodeFailTester tester = NodeFailTester.withTwoApplications(
- new ConfigserverConfig(new ConfigserverConfig.Builder().nodeAdminInContainer(false)));
+ public void docker_host_not_failed_without_config_requests() {
+ NodeFailTester tester = NodeFailTester.withTwoApplications();
// For a day all nodes work so nothing happens
for (int minutes = 0, interval = 30; minutes < 24 * 60; minutes += interval) {