diff options
author | Valerij Fredriksen <freva@users.noreply.github.com> | 2019-05-16 10:58:31 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-05-16 10:58:31 +0200 |
commit | 0a0bafb4a391b97006cdd25ebadfc2f1ea36410f (patch) | |
tree | d32604aa0af6d2bae2c1dea6e00394addcad65ee /node-admin | |
parent | 1f461ac34bb94f629fa4a69eceb4df60ca1776b1 (diff) | |
parent | 8d14882a17a296a1554f3f1b79a2d171e11e82e7 (diff) |
Merge pull request #9429 from vespa-engine/freva/add-additional-ip-addresses
Add additional IP addresses to NodeSpec
Diffstat (limited to 'node-admin')
3 files changed, 22 insertions, 15 deletions
diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/NodeAttributes.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/NodeAttributes.java index 7a40a162937..4770b3a3226 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/NodeAttributes.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/NodeAttributes.java @@ -28,7 +28,6 @@ public class NodeAttributes { private Optional<Version> vespaVersion = Optional.empty(); private Optional<Version> currentOsVersion = Optional.empty(); private Optional<Instant> currentFirmwareCheck = Optional.empty(); - private Optional<String> hardwareDivergence = Optional.empty(); private Optional<String> hardwareFailureDescription = Optional.empty(); private Optional<Boolean> wantToDeprovision = Optional.empty(); /** The list of reports to patch. A null value is used to remove the report. */ @@ -119,10 +118,6 @@ public class NodeAttributes { return currentFirmwareCheck; } - public Optional<String> getHardwareDivergence() { - return hardwareDivergence; - } - public Optional<String> getHardwareFailureDescription() { return hardwareFailureDescription; } @@ -138,7 +133,7 @@ public class NodeAttributes { @Override public int hashCode() { return Objects.hash(restartGeneration, rebootGeneration, dockerImage, vespaVersion, currentOsVersion, - currentFirmwareCheck, hardwareDivergence, hardwareFailureDescription, wantToDeprovision, reports); + currentFirmwareCheck, hardwareFailureDescription, wantToDeprovision, reports); } public boolean isEmpty() { @@ -158,7 +153,6 @@ public class NodeAttributes { && Objects.equals(vespaVersion, other.vespaVersion) && Objects.equals(currentOsVersion, other.currentOsVersion) && Objects.equals(currentFirmwareCheck, other.currentFirmwareCheck) - && Objects.equals(hardwareDivergence, other.hardwareDivergence) && Objects.equals(hardwareFailureDescription, other.hardwareFailureDescription) && Objects.equals(reports, other.reports) && Objects.equals(wantToDeprovision, other.wantToDeprovision); @@ -173,7 +167,6 @@ public class NodeAttributes { vespaVersion.map(ver -> "vespaVersion=" + ver.toFullString()), currentOsVersion.map(ver -> "currentOsVersion=" + ver.toFullString()), currentFirmwareCheck.map(at -> "currentFirmwareCheck=" + at), - hardwareDivergence.map(hwDivg -> "hardwareDivergence=" + hwDivg), hardwareFailureDescription.map(hwDesc -> "hardwareFailureDescription=" + hwDesc), Optional.ofNullable(reports.isEmpty() ? null : "reports=" + reports), wantToDeprovision.map(depr -> "wantToDeprovision=" + depr)) diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/NodeSpec.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/NodeSpec.java index bdb0f889b93..cdc90e214bd 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/NodeSpec.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/NodeSpec.java @@ -7,7 +7,6 @@ import com.yahoo.config.provision.DockerImage; import com.yahoo.config.provision.NodeType; import java.time.Instant; -import java.util.Collections; import java.util.Objects; import java.util.Optional; import java.util.Set; @@ -54,6 +53,7 @@ public class NodeSpec { private final boolean fastDisk; private final double bandwidth; private final Set<String> ipAddresses; + private final Set<String> additionalIpAddresses; private final Optional<String> hardwareFailureDescription; private final NodeReports reports; @@ -89,6 +89,7 @@ public class NodeSpec { boolean fastDisk, double bandwidth, Set<String> ipAddresses, + Set<String> additionalIpAddresses, Optional<String> hardwareFailureDescription, NodeReports reports, Optional<String> parentHostname) { @@ -120,6 +121,7 @@ public class NodeSpec { this.fastDisk = fastDisk; this.bandwidth = bandwidth; this.ipAddresses = Objects.requireNonNull(ipAddresses); + this.additionalIpAddresses = Objects.requireNonNull(additionalIpAddresses); this.hardwareFailureDescription = Objects.requireNonNull(hardwareFailureDescription); this.reports = Objects.requireNonNull(reports); this.parentHostname = Objects.requireNonNull(parentHostname); @@ -237,6 +239,10 @@ public class NodeSpec { return ipAddresses; } + public Set<String> getAdditionalIpAddresses() { + return additionalIpAddresses; + } + public Optional<String> getHardwareFailureDescription() { return hardwareFailureDescription; } @@ -281,6 +287,7 @@ public class NodeSpec { Objects.equals(fastDisk, that.fastDisk) && Objects.equals(bandwidth, that.bandwidth) && Objects.equals(ipAddresses, that.ipAddresses) && + Objects.equals(additionalIpAddresses, that.additionalIpAddresses) && Objects.equals(hardwareFailureDescription, that.hardwareFailureDescription) && Objects.equals(reports, that.reports) && Objects.equals(parentHostname, that.parentHostname); @@ -316,6 +323,7 @@ public class NodeSpec { fastDisk, bandwidth, ipAddresses, + additionalIpAddresses, hardwareFailureDescription, reports, parentHostname); @@ -351,6 +359,7 @@ public class NodeSpec { + " fastDisk=" + fastDisk + " bandwidth=" + bandwidth + " ipAddresses=" + ipAddresses + + " additionalIpAddresses=" + additionalIpAddresses + " hardwareFailureDescription=" + hardwareFailureDescription + " reports=" + reports + " parentHostname=" + parentHostname @@ -385,8 +394,8 @@ public class NodeSpec { private double minDiskAvailableGb; private boolean fastDisk = false; private double bandwidth; - private Set<String> ipAddresses = Collections.emptySet(); - private Optional<String> hardwareDivergence = Optional.empty(); + private Set<String> ipAddresses = Set.of(); + private Set<String> additionalIpAddresses = Set.of(); private Optional<String> hardwareFailureDescription = Optional.empty(); private NodeReports reports = new NodeReports(); private Optional<String> parentHostname = Optional.empty(); @@ -405,6 +414,7 @@ public class NodeSpec { fastDisk(node.fastDisk); bandwidth(node.bandwidth); ipAddresses(node.ipAddresses); + additionalIpAddresses(node.additionalIpAddresses); wantedRebootGeneration(node.wantedRebootGeneration); currentRebootGeneration(node.currentRebootGeneration); reports(new NodeReports(node.reports)); @@ -562,8 +572,8 @@ public class NodeSpec { return this; } - public Builder hardwareDivergence(String hardwareDivergence) { - this.hardwareDivergence = Optional.of(hardwareDivergence); + public Builder additionalIpAddresses(Set<String> additionalIpAddresses) { + this.additionalIpAddresses = additionalIpAddresses; return this; } @@ -595,7 +605,6 @@ public class NodeSpec { public Builder updateFromNodeAttributes(NodeAttributes attributes) { attributes.getDockerImage().ifPresent(this::currentDockerImage); attributes.getCurrentOsVersion().ifPresent(this::currentOsVersion); - attributes.getHardwareDivergence().ifPresent(this::hardwareDivergence); attributes.getRebootGeneration().ifPresent(this::currentRebootGeneration); attributes.getRestartGeneration().ifPresent(this::currentRestartGeneration); attributes.getHardwareFailureDescription().ifPresent(this::hardwareFailureDescription); @@ -705,6 +714,10 @@ public class NodeSpec { return ipAddresses; } + public Set<String> getAdditionalIpAddresses() { + return additionalIpAddresses; + } + public Optional<String> getHardwareFailureDescription() { return hardwareFailureDescription; } @@ -726,7 +739,7 @@ public class NodeSpec { wantedRebootGeneration, currentRebootGeneration, wantedFirmwareCheck, currentFirmwareCheck, modelName, minCpuCores, minMainMemoryAvailableGb, minDiskAvailableGb, - fastDisk, bandwidth, ipAddresses, hardwareFailureDescription, + fastDisk, bandwidth, ipAddresses, additionalIpAddresses, hardwareFailureDescription, reports, parentHostname); } diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepository.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepository.java index 92f69977ccb..ab14b8cba20 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepository.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/configserver/noderepository/RealNodeRepository.java @@ -200,6 +200,7 @@ public class RealNodeRepository implements NodeRepository { node.fastDisk, node.bandwidth, node.ipAddresses, + node.additionalIpAddresses, Optional.ofNullable(node.hardwareFailureDescription), reports, Optional.ofNullable(node.parentHostname)); |