aboutsummaryrefslogtreecommitdiffstats
path: root/node-repository
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@verizonmedia.com>2020-02-21 09:58:09 +0100
committerJon Bratseth <bratseth@verizonmedia.com>2020-02-21 09:58:09 +0100
commit6584a5218e87563c0a75d4a1be185911d32504b2 (patch)
tree97a73a0fd6e59b4c73cf8be107a74698403b9a3d /node-repository
parentcfa6cd39c6f274b78ec66f97991a56022cc12dc5 (diff)
Parametrize measured resource
Diffstat (limited to 'node-repository')
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/autoscale/AutoscalingTest.java19
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/autoscale/AutoscalingTester.java10
2 files changed, 14 insertions, 15 deletions
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/autoscale/AutoscalingTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/autoscale/AutoscalingTest.java
index f478e58420c..e188008b07f 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/autoscale/AutoscalingTest.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/autoscale/AutoscalingTest.java
@@ -35,10 +35,10 @@ public class AutoscalingTest {
assertTrue("No measurements -> No change", tester.autoscale(application1, cluster1).isEmpty());
- tester.addMeasurements( 0.25f, 60, application1);
+ tester.addMeasurements(Resource.cpu, 0.25f, 60, application1);
assertTrue("Too few measurements -> No change", tester.autoscale(application1, cluster1).isEmpty());
- tester.addMeasurements( 0.25f, 60, application1);
+ tester.addMeasurements(Resource.cpu, 0.25f, 60, application1);
ClusterResources scaledResources = tester.assertResources("Scaling up since resource usage is too high",
10, 1, 1.7, 44.4, 44.4,
tester.autoscale(application1, cluster1));
@@ -47,14 +47,14 @@ public class AutoscalingTest {
assertTrue("Cluster in flux -> No further change", tester.autoscale(application1, cluster1).isEmpty());
tester.deactivateRetired(application1, cluster1, scaledResources);
- tester.addMeasurements( 0.8f, 3, application1);
+ tester.addMeasurements(Resource.cpu, 0.8f, 3, application1);
assertTrue("Load change is large, but insufficient measurements for new config -> No change",
tester.autoscale(application1, cluster1).isEmpty());
- tester.addMeasurements( 0.19f, 100, application1);
+ tester.addMeasurements(Resource.cpu, 0.19f, 100, application1);
assertTrue("Load change is small -> No change", tester.autoscale(application1, cluster1).isEmpty());
- tester.addMeasurements( 0.1f, 120, application1);
+ tester.addMeasurements(Resource.cpu, 0.1f, 120, application1);
tester.assertResources("Scaling down since resource usage has gone down significantly",
10, 1, 1.2, 44.4, 44.4,
tester.autoscale(application1, cluster1));
@@ -70,7 +70,7 @@ public class AutoscalingTest {
// deploy
tester.deploy(application1, cluster1, 5, 5, resources);
- tester.addMeasurements( 0.25f, 120, application1);
+ tester.addMeasurements(Resource.cpu, 0.25f, 120, application1);
tester.assertResources("Scaling up since resource usage is too high",
10, 10, 1.7, 44.4, 44.4,
tester.autoscale(application1, cluster1));
@@ -86,7 +86,7 @@ public class AutoscalingTest {
// deploy
tester.deploy(application1, cluster1, 6, 2, resources);
- tester.addMeasurements( 0.22f, 120, application1);
+ tester.addMeasurements(Resource.cpu, 0.22f, 120, application1);
tester.assertResources("Scaling up since resource usage is too high",
9, 3, 2.7, 83.3, 83.3,
tester.autoscale(application1, cluster1));
@@ -109,7 +109,7 @@ public class AutoscalingTest {
// deploy
tester.deploy(application1, cluster1, 5, 1, new NodeResources(3, 100, 100, 1));
- tester.addMeasurements( 0.25f, 120, application1);
+ tester.addMeasurements(Resource.cpu, 0.25f, 120, application1);
ClusterResources scaledResources = tester.assertResources("Scaling up since resource usage is too high",
7, 1, 3, 100, 100,
tester.autoscale(application1, cluster1));
@@ -117,8 +117,7 @@ public class AutoscalingTest {
tester.deploy(application1, cluster1, scaledResources);
tester.deactivateRetired(application1, cluster1, scaledResources);
- tester.addMeasurements( 0.05f, 1000, application1);
- System.out.println("Assuming downscaling");
+ tester.addMeasurements(Resource.cpu, 0.05f, 1000, application1);
tester.assertResources("Scaling down since resource usage has gone down significantly",
8, 1, 1, 100, 100,
tester.autoscale(application1, cluster1));
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/autoscale/AutoscalingTester.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/autoscale/AutoscalingTester.java
index 0a3eaa0a95b..af03fc95d84 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/autoscale/AutoscalingTester.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/autoscale/AutoscalingTester.java
@@ -113,20 +113,20 @@ class AutoscalingTester {
}
/**
- * Adds measurements with the given cpu value and ideal values for the other resources,
+ * Adds measurements with the given resource value and ideal values for the other resources,
* scaled to take one node redundancy into account.
* (I.e we adjust to measure a bit lower load than "naively" wanted to offset for the autoscaler
* wanting to see the ideal load with one node missing.)
*/
- public void addMeasurements(float cpuValue, int count, ApplicationId applicationId) {
+ public void addMeasurements(Resource resource, float value, int count, ApplicationId applicationId) {
List<Node> nodes = nodeRepository().getNodes(applicationId, Node.State.active);
float oneExtraNodeFactor = (float)(nodes.size() - 1.0) / (nodes.size());
for (int i = 0; i < count; i++) {
clock().advance(Duration.ofMinutes(1));
for (Node node : nodes) {
- for (Resource resource : Resource.values())
- db.add(node, resource, clock().instant(),
- (resource == Resource.cpu ? cpuValue : (float)resource.idealAverageLoad()) * oneExtraNodeFactor);
+ for (Resource r : Resource.values())
+ db.add(node, r, clock().instant(),
+ (r == resource ? value : (float)r.idealAverageLoad()) * oneExtraNodeFactor);
}
}
}