You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@stratos.apache.org by ni...@apache.org on 2013/12/03 09:13:07 UTC
git commit: renaming the drl files
Updated Branches:
refs/heads/master 6029d2bb4 -> 5a43d560b
renaming the drl files
Project: http://git-wip-us.apache.org/repos/asf/incubator-stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-stratos/commit/5a43d560
Tree: http://git-wip-us.apache.org/repos/asf/incubator-stratos/tree/5a43d560
Diff: http://git-wip-us.apache.org/repos/asf/incubator-stratos/diff/5a43d560
Branch: refs/heads/master
Commit: 5a43d560ba00cd736a3221009bbe247ddfea2da6
Parents: 6029d2b
Author: Nirmal Fernando <ni...@apache.org>
Authored: Tue Dec 3 13:42:31 2013 +0530
Committer: Nirmal Fernando <ni...@apache.org>
Committed: Tue Dec 3 13:42:31 2013 +0530
----------------------------------------------------------------------
.../src/test/resources/autoscaler-old.drl | 97 ++++++++++++++------
.../src/test/resources/autoscaler.drl | 97 ++++++--------------
2 files changed, 97 insertions(+), 97 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/5a43d560/components/org.apache.stratos.autoscaler/src/test/resources/autoscaler-old.drl
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/test/resources/autoscaler-old.drl b/components/org.apache.stratos.autoscaler/src/test/resources/autoscaler-old.drl
index 7881efe..cf9982f 100644
--- a/components/org.apache.stratos.autoscaler/src/test/resources/autoscaler-old.drl
+++ b/components/org.apache.stratos.autoscaler/src/test/resources/autoscaler-old.drl
@@ -26,54 +26,99 @@ import org.apache.stratos.autoscaler.ClusterContext;
import org.apache.stratos.autoscaler.Constants;
import org.apache.stratos.autoscaler.policy.PolicyManager;
import org.apache.stratos.autoscaler.policy.model.AutoscalePolicy;
+import org.apache.stratos.messaging.domain.policy.Partition;
+import org.apache.stratos.messaging.domain.policy.PartitionGroup;
+import org.apache.stratos.messaging.domain.policy.DeploymentPolicy;
import org.apache.stratos.autoscaler.policy.model.RequestsInFlight;
import org.apache.stratos.autoscaler.policy.model.LoadThresholds;
import org.apache.stratos.autoscaler.client.cloud.controller.CloudControllerClient;
import org.apache.stratos.autoscaler.algorithm.AutoscaleAlgorithm;
import org.apache.stratos.autoscaler.algorithm.OneAfterAnother;
import org.apache.stratos.autoscaler.algorithm.RoundRobin;
-import org.apache.stratos.autoscaler.PartitionContext;
import org.apache.stratos.messaging.message.receiver.topology.TopologyManager;
import org.apache.stratos.autoscaler.rule.AutoscalerRuleEvaluator;
import org.apache.commons.logging.Log;
-import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
-import org.apache.stratos.autoscaler.partition.PartitionGroup;
-import org.apache.stratos.cloud.controller.deployment.partition.Partition;
-import org.apache.stratos.cloud.controller.pojo.MemberContext;
-
global org.apache.stratos.autoscaler.policy.PolicyManager $manager;
global org.apache.stratos.autoscaler.AutoscalerContext $context;
global org.apache.commons.logging.Log log;
global org.apache.stratos.autoscaler.rule.AutoscalerRuleEvaluator $evaluator;
global org.apache.stratos.messaging.domain.topology.Topology $topology;
-global java.util.Map partitionCtxts;
-global java.lang.String clusterId;
-import function org.apache.stratos.autoscaler.rule.AutoscalerRuleEvaluator.delegateSpawn;
-import function org.apache.stratos.autoscaler.rule.AutoscalerRuleEvaluator.delegateTerminate;
rule "Minimum Rule"
dialect "mvel"
when
- $ctxt : PartitionContext ()
- eval($ctxt.getCurrentMemberCount() < $ctxt.getMinimumMemberCount())
+ $service : Service ()
+ $cluster : Cluster () from $service.getClusters()
+ $deploymentPolicy : DeploymentPolicy(id == $cluster.getDeploymentPolicyName() ) from $manager.getDeploymentPolicyList()
+ $partitionGroup : PartitionGroup () from $deploymentPolicy.getPartitionGroups()
+ $partition : Partition () from $partitionGroup.getPartitions()
+ $clusterContext : ClusterContext() from $context.getClusterContext($cluster.getClusterId())
+ eval($clusterContext.getMemberCount($partition.getId()) < $partition.getPartitionMembersMin())
+
then
- memberContext = delegateSpawn($ctxt.getPartition(),clusterId);
- if(memberContext != null) {
- $ctxt.addPendingMember(memberContext);
- }
-
+ int memberCountToBeIncreased = 1 ;
+ if($evaluator.delegateSpawn($partition,$cluster.getClusterId(), memberCountToBeIncreased)){
+ $clusterContext.increaseMemberCountInPartitionBy($partition.getId(), memberCountToBeIncreased);
+ }
+end
+
+rule "Scaler-up Rule"
+dialect "mvel"
+ when
+ $service : Service ()
+ $cluster : Cluster () from $service.getClusters()
+ $autoScalingPolicy : AutoscalePolicy(id == $cluster.getAutoscalePolicyName() ) from $manager.getAutoscalePolicyList()
+ $deploymentPolicy : DeploymentPolicy(id == $cluster.getDeploymentPolicyName() ) from $manager.getDeploymentPolicyList()
+ $partitionGroup : PartitionGroup () from $deploymentPolicy.getPartitionGroups()
+ $clusterContext : ClusterContext() from $context.getClusterContext($cluster.getClusterId())
+ $loadThresholds :LoadThresholds() from $autoScalingPolicy.getLoadThresholds()
+
+ autoscaleAlgorithm : AutoscaleAlgorithm() from $evaluator.getAutoscaleAlgorithm($partitionGroup.getPartitionAlgo())
+ lbStatAverage : Float() from $clusterContext.getAverageRequestsInFlight()
+ lbStatGradient : Float() from $clusterContext.getRequestsInFlightGradient()
+ lbStatSecondDerivative : Float() from $clusterContext.getRequestsInFlightSecondDerivative()
+ averageLimit : Float() from $loadThresholds.getRequestsInFlight().getAverage()
+ gradientLimit : Float() from $loadThresholds.getRequestsInFlight().getGradient()
+ secondDerivative : Float() from $loadThresholds.getRequestsInFlight().getSecondDerivative()
+ partition : Partition() from autoscaleAlgorithm.getNextScaleUpPartition($partitionGroup, $cluster.getClusterId())
+ eval (lbStatAverage > averageLimit && lbStatGradient > gradientLimit)
+ then
+ int numberOfInstancesToBeSpawned = (lbStatSecondDerivative > secondDerivative) ? 2 : 1; // take from a config
+ $evaluator.delegateSpawn(partition,$cluster.getClusterId(), numberOfInstancesToBeSpawned);
+ $clusterContext.setRequestsInFlightGradient(gradientLimit);
+ $clusterContext.setRequestsInFlightSecondDerivative(secondDerivative);
+ $clusterContext.setAverageRequestsInFlight(averageLimit);
end
-rule "Terminate Obsoleted Instances"
+rule "Scaler-down Rule"
dialect "mvel"
- when
- $ctxt : PartitionContext ()
- eval($ctxt.getObsoletedMembers().size() > 0)
- memberId : String() from $ctxt.getObsoletedMembers()
- eval($ctxt.removeObsoleteMember(memberId))
- then
- delegateTerminate(memberId);
-end
\ No newline at end of file
+ when
+ $service : Service ()
+ $cluster : Cluster () from $service.getClusters()
+ $autoScalingPolicy : AutoscalePolicy(id == $cluster.getAutoscalePolicyName() ) from $manager.getAutoscalePolicyList()
+ $deploymentPolicy : DeploymentPolicy(id == $cluster.getDeploymentPolicyName() ) from $manager.getDeploymentPolicyList()
+ $partitionGroup : PartitionGroup () from $deploymentPolicy.getPartitionGroups()
+ $clusterContext : ClusterContext() from $context.getClusterContext($cluster.getClusterId())
+ $loadThresholds :LoadThresholds() from $autoScalingPolicy.getLoadThresholds()
+
+ autoscaleAlgorithm : AutoscaleAlgorithm() from $evaluator.getAutoscaleAlgorithm($partitionGroup.getPartitionAlgo())
+ lbStatAverage : Float() from $clusterContext.getAverageRequestsInFlight()
+ lbStatGradient : Float() from $clusterContext.getRequestsInFlightGradient()
+ lbStatSecondDerivative : Float() from $clusterContext.getRequestsInFlightSecondDerivative()
+ averageLimit : Float() from $loadThresholds.getRequestsInFlight().getAverage()
+ gradientLimit : Float() from $loadThresholds.getRequestsInFlight().getGradient()
+ secondDerivative : Float() from $loadThresholds.getRequestsInFlight().getSecondDerivative()
+ scaleDownSlowerMarginOfGradient : Float() from $loadThresholds.getRequestsInFlight().getScaleDownMarginOfGradient()
+ scaleDownSlowerMarginOfSecondDerivative : Float() from $loadThresholds.getRequestsInFlight().getScaleDownMarginOfSecondDerivative()
+ partition : Partition() from autoscaleAlgorithm.getNextScaleDownPartition($partitionGroup, $cluster.getClusterId())
+ eval(lbStatAverage < averageLimit && lbStatGradient < gradientLimit - scaleDownSlowerMarginOfSecondDerivative
+ && lbStatSecondDerivative < secondDerivative - scaleDownSlowerMarginOfSecondDerivative)
+ then
+ $evaluator.delegateTerminate(partition,$cluster.getClusterId());
+ $clusterContext.setRequestsInFlightGradient(gradientLimit);
+ $clusterContext.setRequestsInFlightSecondDerivative(secondDerivative);
+ $clusterContext.setAverageRequestsInFlight(averageLimit);
+end
http://git-wip-us.apache.org/repos/asf/incubator-stratos/blob/5a43d560/components/org.apache.stratos.autoscaler/src/test/resources/autoscaler.drl
----------------------------------------------------------------------
diff --git a/components/org.apache.stratos.autoscaler/src/test/resources/autoscaler.drl b/components/org.apache.stratos.autoscaler/src/test/resources/autoscaler.drl
index cf9982f..7881efe 100644
--- a/components/org.apache.stratos.autoscaler/src/test/resources/autoscaler.drl
+++ b/components/org.apache.stratos.autoscaler/src/test/resources/autoscaler.drl
@@ -26,99 +26,54 @@ import org.apache.stratos.autoscaler.ClusterContext;
import org.apache.stratos.autoscaler.Constants;
import org.apache.stratos.autoscaler.policy.PolicyManager;
import org.apache.stratos.autoscaler.policy.model.AutoscalePolicy;
-import org.apache.stratos.messaging.domain.policy.Partition;
-import org.apache.stratos.messaging.domain.policy.PartitionGroup;
-import org.apache.stratos.messaging.domain.policy.DeploymentPolicy;
import org.apache.stratos.autoscaler.policy.model.RequestsInFlight;
import org.apache.stratos.autoscaler.policy.model.LoadThresholds;
import org.apache.stratos.autoscaler.client.cloud.controller.CloudControllerClient;
import org.apache.stratos.autoscaler.algorithm.AutoscaleAlgorithm;
import org.apache.stratos.autoscaler.algorithm.OneAfterAnother;
import org.apache.stratos.autoscaler.algorithm.RoundRobin;
+import org.apache.stratos.autoscaler.PartitionContext;
import org.apache.stratos.messaging.message.receiver.topology.TopologyManager;
import org.apache.stratos.autoscaler.rule.AutoscalerRuleEvaluator;
import org.apache.commons.logging.Log;
+import org.apache.stratos.autoscaler.deployment.policy.DeploymentPolicy;
+import org.apache.stratos.autoscaler.partition.PartitionGroup;
+import org.apache.stratos.cloud.controller.deployment.partition.Partition;
+import org.apache.stratos.cloud.controller.pojo.MemberContext;
+
global org.apache.stratos.autoscaler.policy.PolicyManager $manager;
global org.apache.stratos.autoscaler.AutoscalerContext $context;
global org.apache.commons.logging.Log log;
global org.apache.stratos.autoscaler.rule.AutoscalerRuleEvaluator $evaluator;
global org.apache.stratos.messaging.domain.topology.Topology $topology;
+global java.util.Map partitionCtxts;
+global java.lang.String clusterId;
+import function org.apache.stratos.autoscaler.rule.AutoscalerRuleEvaluator.delegateSpawn;
+import function org.apache.stratos.autoscaler.rule.AutoscalerRuleEvaluator.delegateTerminate;
rule "Minimum Rule"
dialect "mvel"
when
- $service : Service ()
- $cluster : Cluster () from $service.getClusters()
- $deploymentPolicy : DeploymentPolicy(id == $cluster.getDeploymentPolicyName() ) from $manager.getDeploymentPolicyList()
- $partitionGroup : PartitionGroup () from $deploymentPolicy.getPartitionGroups()
- $partition : Partition () from $partitionGroup.getPartitions()
- $clusterContext : ClusterContext() from $context.getClusterContext($cluster.getClusterId())
- eval($clusterContext.getMemberCount($partition.getId()) < $partition.getPartitionMembersMin())
-
+ $ctxt : PartitionContext ()
+ eval($ctxt.getCurrentMemberCount() < $ctxt.getMinimumMemberCount())
then
- int memberCountToBeIncreased = 1 ;
- if($evaluator.delegateSpawn($partition,$cluster.getClusterId(), memberCountToBeIncreased)){
- $clusterContext.increaseMemberCountInPartitionBy($partition.getId(), memberCountToBeIncreased);
- }
-end
-
-rule "Scaler-up Rule"
-dialect "mvel"
- when
- $service : Service ()
- $cluster : Cluster () from $service.getClusters()
- $autoScalingPolicy : AutoscalePolicy(id == $cluster.getAutoscalePolicyName() ) from $manager.getAutoscalePolicyList()
- $deploymentPolicy : DeploymentPolicy(id == $cluster.getDeploymentPolicyName() ) from $manager.getDeploymentPolicyList()
- $partitionGroup : PartitionGroup () from $deploymentPolicy.getPartitionGroups()
- $clusterContext : ClusterContext() from $context.getClusterContext($cluster.getClusterId())
- $loadThresholds :LoadThresholds() from $autoScalingPolicy.getLoadThresholds()
-
- autoscaleAlgorithm : AutoscaleAlgorithm() from $evaluator.getAutoscaleAlgorithm($partitionGroup.getPartitionAlgo())
- lbStatAverage : Float() from $clusterContext.getAverageRequestsInFlight()
- lbStatGradient : Float() from $clusterContext.getRequestsInFlightGradient()
- lbStatSecondDerivative : Float() from $clusterContext.getRequestsInFlightSecondDerivative()
- averageLimit : Float() from $loadThresholds.getRequestsInFlight().getAverage()
- gradientLimit : Float() from $loadThresholds.getRequestsInFlight().getGradient()
- secondDerivative : Float() from $loadThresholds.getRequestsInFlight().getSecondDerivative()
- partition : Partition() from autoscaleAlgorithm.getNextScaleUpPartition($partitionGroup, $cluster.getClusterId())
- eval (lbStatAverage > averageLimit && lbStatGradient > gradientLimit)
- then
- int numberOfInstancesToBeSpawned = (lbStatSecondDerivative > secondDerivative) ? 2 : 1; // take from a config
- $evaluator.delegateSpawn(partition,$cluster.getClusterId(), numberOfInstancesToBeSpawned);
- $clusterContext.setRequestsInFlightGradient(gradientLimit);
- $clusterContext.setRequestsInFlightSecondDerivative(secondDerivative);
- $clusterContext.setAverageRequestsInFlight(averageLimit);
+ memberContext = delegateSpawn($ctxt.getPartition(),clusterId);
+ if(memberContext != null) {
+ $ctxt.addPendingMember(memberContext);
+ }
+
end
-rule "Scaler-down Rule"
+rule "Terminate Obsoleted Instances"
dialect "mvel"
- when
- $service : Service ()
- $cluster : Cluster () from $service.getClusters()
- $autoScalingPolicy : AutoscalePolicy(id == $cluster.getAutoscalePolicyName() ) from $manager.getAutoscalePolicyList()
- $deploymentPolicy : DeploymentPolicy(id == $cluster.getDeploymentPolicyName() ) from $manager.getDeploymentPolicyList()
- $partitionGroup : PartitionGroup () from $deploymentPolicy.getPartitionGroups()
- $clusterContext : ClusterContext() from $context.getClusterContext($cluster.getClusterId())
- $loadThresholds :LoadThresholds() from $autoScalingPolicy.getLoadThresholds()
-
- autoscaleAlgorithm : AutoscaleAlgorithm() from $evaluator.getAutoscaleAlgorithm($partitionGroup.getPartitionAlgo())
- lbStatAverage : Float() from $clusterContext.getAverageRequestsInFlight()
- lbStatGradient : Float() from $clusterContext.getRequestsInFlightGradient()
- lbStatSecondDerivative : Float() from $clusterContext.getRequestsInFlightSecondDerivative()
- averageLimit : Float() from $loadThresholds.getRequestsInFlight().getAverage()
- gradientLimit : Float() from $loadThresholds.getRequestsInFlight().getGradient()
- secondDerivative : Float() from $loadThresholds.getRequestsInFlight().getSecondDerivative()
- scaleDownSlowerMarginOfGradient : Float() from $loadThresholds.getRequestsInFlight().getScaleDownMarginOfGradient()
- scaleDownSlowerMarginOfSecondDerivative : Float() from $loadThresholds.getRequestsInFlight().getScaleDownMarginOfSecondDerivative()
- partition : Partition() from autoscaleAlgorithm.getNextScaleDownPartition($partitionGroup, $cluster.getClusterId())
- eval(lbStatAverage < averageLimit && lbStatGradient < gradientLimit - scaleDownSlowerMarginOfSecondDerivative
- && lbStatSecondDerivative < secondDerivative - scaleDownSlowerMarginOfSecondDerivative)
- then
- $evaluator.delegateTerminate(partition,$cluster.getClusterId());
- $clusterContext.setRequestsInFlightGradient(gradientLimit);
- $clusterContext.setRequestsInFlightSecondDerivative(secondDerivative);
- $clusterContext.setAverageRequestsInFlight(averageLimit);
-end
+ when
+ $ctxt : PartitionContext ()
+ eval($ctxt.getObsoletedMembers().size() > 0)
+ memberId : String() from $ctxt.getObsoletedMembers()
+ eval($ctxt.removeObsoleteMember(memberId))
+ then
+ delegateTerminate(memberId);
+end
\ No newline at end of file