diff options
author | Jon Bratseth <bratseth@gmail.com> | 2020-05-06 12:50:34 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@gmail.com> | 2020-05-06 12:50:34 +0200 |
commit | 3993c44146615752132084387209417cea4d8ec3 (patch) | |
tree | 181ba81b3f0e044a8352005f42d6b20e03708699 /config-provisioning/src | |
parent | a2e37ad30ec60c4ac7c785176aee2e9fb12aa0b5 (diff) |
Propagate cluster info
Diffstat (limited to 'config-provisioning/src')
-rw-r--r-- | config-provisioning/src/main/java/com/yahoo/config/provision/NodeResources.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/config-provisioning/src/main/java/com/yahoo/config/provision/NodeResources.java b/config-provisioning/src/main/java/com/yahoo/config/provision/NodeResources.java index bed36d0d5d2..18dc0b217a3 100644 --- a/config-provisioning/src/main/java/com/yahoo/config/provision/NodeResources.java +++ b/config-provisioning/src/main/java/com/yahoo/config/provision/NodeResources.java @@ -10,6 +10,11 @@ import java.util.Objects; */ public class NodeResources { + // Standard unit cost in dollars per hour + private static final double cpuUnitCost = 12.0; + private static final double memoryUnitCost = 1.2; + private static final double diskUnitCost = 0.045; + public static final NodeResources unspecified = new NodeResources(0, 0, 0, 0); public enum DiskSpeed { @@ -113,6 +118,11 @@ public class NodeResources { public DiskSpeed diskSpeed() { return diskSpeed; } public StorageType storageType() { return storageType; } + /** Returns the standard cost of these resources, in dollars per hour */ + public double cost() { + return vcpu * cpuUnitCost + memoryGb * memoryUnitCost + diskGb * diskUnitCost; + } + public NodeResources withVcpu(double vcpu) { if (vcpu == this.vcpu) return this; return new NodeResources(vcpu, memoryGb, diskGb, bandwidthGbps, diskSpeed, storageType); |