From fac9b339288cf288390fe08920f27a5deaef9d25 Mon Sep 17 00:00:00 2001 From: Martin Polden Date: Fri, 3 Jan 2020 11:03:00 +0100 Subject: Require redundancy for combined cluster --- .../vespa/hosted/provision/provisioning/CapacityPolicies.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'node-repository') diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/CapacityPolicies.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/CapacityPolicies.java index 0364264bd5b..816396fe9b2 100644 --- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/CapacityPolicies.java +++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/CapacityPolicies.java @@ -8,7 +8,6 @@ import com.yahoo.config.provision.NodeResources; import com.yahoo.config.provision.SystemName; import com.yahoo.config.provision.Zone; -import java.util.EnumSet; import java.util.Locale; /** @@ -106,10 +105,14 @@ public class CapacityPolicies { private int ensureRedundancy(int nodeCount, ClusterSpec.Type clusterType, boolean canFail) { if (canFail && nodeCount == 1 && - EnumSet.of(ClusterSpec.Type.container, ClusterSpec.Type.content).contains(clusterType) && + requiresRedundancy(clusterType) && zone.environment().isProduction()) throw new IllegalArgumentException("Deployments to prod require at least 2 nodes per cluster for redundancy"); return nodeCount; } + private static boolean requiresRedundancy(ClusterSpec.Type clusterType) { + return clusterType.isContent() || clusterType.isContainer(); + } + } -- cgit v1.2.3