You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by im...@apache.org on 2014/11/09 19:30:04 UTC
[57/59] [abbrv] stratos git commit: Adding required instance count
Adding required instance count
Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/70044149
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/70044149
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/70044149
Branch: refs/heads/master
Commit: 70044149d5dbd32cd29f194efe23af25f124e434
Parents: 95e72a3
Author: Lahiru Sandaruwan <la...@apache.org>
Authored: Sun Nov 9 16:34:46 2014 +0530
Committer: Lahiru Sandaruwan <la...@apache.org>
Committed: Sun Nov 9 16:34:46 2014 +0530
----------------------------------------------------------------------
.../autoscaler/KubernetesClusterContext.java | 9 +++++++++
.../autoscaler/NetworkPartitionContext.java | 19 ++++++++++++++++---
2 files changed, 25 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/stratos/blob/70044149/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/KubernetesClusterContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/KubernetesClusterContext.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/KubernetesClusterContext.java
index 8b9cc94..a843fba 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/KubernetesClusterContext.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/KubernetesClusterContext.java
@@ -52,6 +52,7 @@ public class KubernetesClusterContext extends AbstractClusterContext {
private int minReplicas;
private int maxReplicas;
private int currentReplicas;
+ private float RequiredReplicas;
private AutoscalePolicy autoscalePolicy;
@@ -308,6 +309,14 @@ public class KubernetesClusterContext extends AbstractClusterContext {
return autoscalePolicy;
}
+ public float getRequiredReplicas() {
+ return RequiredReplicas;
+ }
+
+ public void setRequiredReplicas(float requiredReplicas) {
+ RequiredReplicas = requiredReplicas;
+ }
+
private class PendingMemberWatcher implements Runnable {
private KubernetesClusterContext ctxt;
http://git-wip-us.apache.org/repos/asf/stratos/blob/70044149/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/NetworkPartitionContext.java
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/NetworkPartitionContext.java b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/NetworkPartitionContext.java
index 1c92256..2b978ed 100644
--- a/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/NetworkPartitionContext.java
+++ b/components/org.apache.stratos.autoscaler/src/main/java/org/apache/stratos/autoscaler/NetworkPartitionContext.java
@@ -43,6 +43,10 @@ public class NetworkPartitionContext implements Serializable{
private float averageRequestsServedPerInstance;
private float requestsServedPerInstance;
+ private int minInstanceCount = 0, maxInstanceCount = 0;
+ private float requiredInstanceCount;
+
+
private final String partitionAlgorithm;
//boolean values to keep whether the requests in flight parameters are reset or not
@@ -56,9 +60,6 @@ public class NetworkPartitionContext implements Serializable{
//boolean values to keep whether average requests served per instance parameters are reset or not
private boolean averageRequestServedPerInstanceReset= false;
- //FIXME this should be populated via PartitionGroups a.k.a. NetworkPartitions
- private int minInstanceCount = 1, maxInstanceCount = 1;
-
private final Partition[] partitions;
//Following information will keep events details
@@ -86,6 +87,11 @@ public class NetworkPartitionContext implements Serializable{
requestsInFlight = new RequestsInFlight();
loadAverage = new LoadAverage();
memoryConsumption = new MemoryConsumption();
+ for(Partition partition : partitions){
+ minInstanceCount += partition.getPartitionMin();
+ maxInstanceCount += partition.getPartitionMax();
+ }
+ requiredInstanceCount = minInstanceCount;
}
@@ -396,4 +402,11 @@ public class NetworkPartitionContext implements Serializable{
this.scaleDownRequestsCount += 1;
}
+ public float getRequiredInstanceCount() {
+ return requiredInstanceCount;
+ }
+
+ public void setRequiredInstanceCount(int requiredInstanceCount) {
+ this.requiredInstanceCount = requiredInstanceCount;
+ }
}
\ No newline at end of file