diff options
author | Jon Marius Venstad <venstad@gmail.com> | 2021-02-23 20:53:11 +0100 |
---|---|---|
committer | Jon Marius Venstad <venstad@gmail.com> | 2021-02-23 20:53:11 +0100 |
commit | 2e732b9f1f5b548832bf6f5b3f0671bde97e495c (patch) | |
tree | 6d85ca751a3f6401533eccfb28179eab11d78035 /config-model/src/main/java/com/yahoo | |
parent | fb3f11c9d17e6039edc3d82f465e153865d30eb1 (diff) |
Track whether cluster controllers are retiring, like other containers
Diffstat (limited to 'config-model/src/main/java/com/yahoo')
3 files changed, 7 insertions, 9 deletions
diff --git a/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerContainer.java b/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerContainer.java index 861982cc2ea..eefe245f060 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerContainer.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/admin/clustercontroller/ClusterControllerContainer.java @@ -47,8 +47,9 @@ public class ClusterControllerContainer extends Container implements AbstractConfigProducer<?> parent, int index, boolean runStandaloneZooKeeper, - DeployState deployState) { - super(parent, "" + index, index, deployState.isHosted()); + DeployState deployState, + boolean retired) { + super(parent, "" + index, retired, index, deployState.isHosted()); this.featureFlags = deployState.featureFlags(); addHandler("clustercontroller-status", "com.yahoo.vespa.clustercontroller.apps.clustercontroller.StatusHandler", diff --git a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminV2Builder.java b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminV2Builder.java index abd2711c631..e150e5791c0 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminV2Builder.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/builder/xml/dom/DomAdminV2Builder.java @@ -205,7 +205,7 @@ public class DomAdminV2Builder extends DomAdminBuilderBase { @Override protected ClusterControllerContainer doBuild(DeployState deployState, AbstractConfigProducer parent, Element spec) { - return new ClusterControllerContainer(parent, i, runStandaloneZooKeeper, deployState); + return new ClusterControllerContainer(parent, i, runStandaloneZooKeeper, deployState, false); } } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java index b3b73378bc6..4a493cc0146 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java @@ -8,6 +8,7 @@ import com.yahoo.config.model.ConfigModelContext; import com.yahoo.config.model.deploy.DeployState; import com.yahoo.config.model.producer.AbstractConfigProducer; import com.yahoo.config.model.producer.AbstractConfigProducerRoot; +import com.yahoo.config.provision.ClusterMembership; import com.yahoo.config.provision.ClusterSpec; import com.yahoo.config.provision.Environment; import com.yahoo.config.provision.NodeResources; @@ -375,10 +376,6 @@ public class ContentCluster extends AbstractConfigProducer implements return admin.getClusterControllers(); } - private Collection<HostResource> getControllerHosts(NodesSpecification nodesSpecification, Admin admin, String clusterName, ConfigModelContext context) { - return nodesSpecification.provision(admin.hostSystem(), ClusterSpec.Type.admin, ClusterSpec.Id.from(clusterName), context.getDeployLogger(), false).keySet(); - } - private List<HostResource> drawControllerHosts(int count, StorageGroup rootGroup) { List<HostResource> hosts = drawControllerHosts(count, false, rootGroup); List<HostResource> retiredHosts = drawControllerHosts(count, true, rootGroup); @@ -433,8 +430,8 @@ public class ContentCluster extends AbstractConfigProducer implements if (clusterControllers.getContainers().isEmpty()) { int index = 0; for (HostResource host : hosts) { - var clusterControllerContainer = - new ClusterControllerContainer(clusterControllers, index, multitenant, deployState); + boolean retired = host.spec().membership().map(ClusterMembership::retired).orElse(false); + var clusterControllerContainer = new ClusterControllerContainer(clusterControllers, index, multitenant, deployState, retired); clusterControllerContainer.setHostResource(host); clusterControllerContainer.initService(deployState.getDeployLogger()); clusterControllerContainer.setProp("clustertype", "admin"); |