From 3993c44146615752132084387209417cea4d8ec3 Mon Sep 17 00:00:00 2001 From: Jon Bratseth Date: Wed, 6 May 2020 12:50:34 +0200 Subject: Propagate cluster info --- .../main/java/com/yahoo/config/provision/NodeResources.java | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'config-provisioning/src') 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); -- cgit v1.2.3