From 6532bc70a23edc37981174b08c6f623b04c251f8 Mon Sep 17 00:00:00 2001 From: Nikolaus Huber <nikolaus.huber@uni-wuerzburg.de> Date: Fri, 21 Dec 2012 16:29:13 +0000 Subject: [PATCH] Modeled SEAMS Adaptation Points DESCARTES-17 git-svn-id: https://se1.informatik.uni-wuerzburg.de/usvn/svn/code/code/DMM/trunk@9621 9e42b895-fcda-4063-8a3b-11be15eb1bbd --- .../SEAMS_Case_Study/AdaptationPoints.xmi | 85 +++------- .../PerformanceDataRepositoryDummy.xmi | 88 +++++++++++ .../PushPullAdaptationProcess.xmi | 148 ++++++++++++++++++ 3 files changed, 257 insertions(+), 64 deletions(-) create mode 100644 edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/PerformanceDataRepositoryDummy.xmi create mode 100644 edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/PushPullAdaptationProcess.xmi diff --git a/edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/AdaptationPoints.xmi b/edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/AdaptationPoints.xmi index 24ce1ffe..558a074c 100644 --- a/edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/AdaptationPoints.xmi +++ b/edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/AdaptationPoints.xmi @@ -1,73 +1,30 @@ <?xml version="1.0" encoding="ASCII"?> -<adaptationpoints:AdaptationPointDescriptions - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:adaptationpoints="http://www.descartes-research.net/metamodel/adaptationpoints/0.1" - xmlns:containerrepository="http://www.descartes-research.net/metamodel/containerrepository/0.1" - xmlns:resourceconfiguration="http://www.descartes-research.net/metamodel/resourceconfiguration/0.1" - xmlns:resourcelandscape="http://www.descartes-research.net/metamodel/resourcelandscape/0.1" - xsi:schemaLocation="http://www.descartes-research.net/metamodel/adaptationpoints/0.1 ../../../edu.kit.ipd.descartes.mm.adaptationpoints/model/adaptationpoints.ecore http://www.descartes-research.net/metamodel/containerrepository/0.1 ../../../edu.kit.ipd.descartes.mm.resourcelandscape/model/containerrepository.ecore http://www.descartes-research.net/metamodel/resourceconfiguration/0.1 ../../../edu.kit.ipd.descartes.mm.resourcelandscape/model/resourceconfiguration.ecore http://www.descartes-research.net/metamodel/resourcelandscape/0.1 ../../../edu.kit.ipd.descartes.mm.resourcelandscape/model/resourcelandscape.ecore" - id="1" name="SEAMS-AdaptationPoints"> - <adaptationPoints - xsi:type="adaptationpoints:ModelVariableConfigurationRange" - id="238746123" - name="AmountOfCores" - minValue="1.0" - maxValue="4.0"> - <adaptableEntity - xsi:type="resourceconfiguration:NumberOfParallelProcessingUnits" - href="ContainerTemplateRepo.xmi#1341341"/> +<adaptationpoints:AdaptationPointDescriptions xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:adaptationpoints="http://www.descartes-research.net/metamodel/adaptationpoints/0.1" xmlns:containerrepository="http://www.descartes-research.net/metamodel/containerrepository/0.1" xmlns:resourceconfiguration="http://www.descartes-research.net/metamodel/resourceconfiguration/0.1" xmlns:resourcelandscape="http://www.descartes-research.net/metamodel/resourcelandscape/0.1" xsi:schemaLocation="http://www.descartes-research.net/metamodel/adaptationpoints/0.1 ../../../edu.kit.ipd.descartes.mm.adaptationpoints/model/adaptationpoints.ecore http://www.descartes-research.net/metamodel/containerrepository/0.1 ../../../edu.kit.ipd.descartes.mm.resourcelandscape/model/containerrepository.ecore http://www.descartes-research.net/metamodel/resourceconfiguration/0.1 ../../../edu.kit.ipd.descartes.mm.resourcelandscape/model/resourceconfiguration.ecore http://www.descartes-research.net/metamodel/resourcelandscape/0.1 ../../../edu.kit.ipd.descartes.mm.resourcelandscape/model/resourcelandscape.ecore" id="1" name="SEAMS-AdaptationPoints"> + <adaptationPoints xsi:type="adaptationpoints:ModelVariableConfigurationRange" id="238746123" name="AmountOfCores" minValue="1.0" maxValue="4.0"> + <adaptableEntity xsi:type="resourceconfiguration:NumberOfParallelProcessingUnits" href="ContainerTemplateRepo.xmi#1341341"/> </adaptationPoints> - <adaptationPoints - xsi:type="adaptationpoints:ModelEntityConfigurationRange" - id="12312412412" - name="NumberOfAppServerVmInstances"> - <variationPossibility - xsi:type="adaptationpoints:PropertyRange"> - <minValueConstraint - oclString="self.containedIn.contains -> select( r
 | r.template = self.template)->size() >= 1"/> - <maxValueConstraint - oclString="self.containedIn.contains -> select( r
 | r.template = self.template)->size() <= 4"/> + <adaptationPoints xsi:type="adaptationpoints:ModelEntityConfigurationRange" id="12312412412" name="NumberOfAppServerVmInstances"> + <variationPossibility xsi:type="adaptationpoints:PropertyRange"> + <minValueConstraint oclString="self.containedIn.contains -> select( r
 | r.template = self.template)->size() >= 1"/> + <maxValueConstraint oclString="self.containedIn.contains -> select( r
 | r.template = self.template)->size() <= 4"/> </variationPossibility> - <adaptableEntity - xsi:type="resourcelandscape:RuntimeEnvironment" - href="AcamarCluster.xmi#12"/> + <adaptableEntity xsi:type="resourcelandscape:RuntimeEnvironment" href="AcamarCluster.xmi#12"/> </adaptationPoints> - <adaptationPoints - xsi:type="adaptationpoints:ModelEntityConfigurationRange" - id="xyz" - name="NumberOfAppServerTemplateInstances"> - <variationPossibility - xsi:type="adaptationpoints:PropertyRange"> - <minValueConstraint - oclString="self.referringContainers->size() >= 1"/> - <maxValueConstraint - oclString="self.referringContainers->size() <= 10"/> + <adaptationPoints xsi:type="adaptationpoints:ModelEntityConfigurationRange" id="xyz" name="NumberOfAppServerTemplateInstances"> + <variationPossibility xsi:type="adaptationpoints:PropertyRange"> + <minValueConstraint oclString="self.referringContainers->size() >= 1"/> + <maxValueConstraint oclString="self.referringContainers->size() <= 10"/> </variationPossibility> - <adaptableEntity - xsi:type="containerrepository:ContainerTemplate" - href="ContainerTemplateRepo.xmi#2"/> + <adaptableEntity xsi:type="containerrepository:ContainerTemplate" href="ContainerTemplateRepo.xmi#2"/> </adaptationPoints> - <adaptationPoints - xsi:type="adaptationpoints:ModelEntityConfigurationRange" - id="123321" - name="VmMigration"> - <variationPossibility - xsi:type="adaptationpoints:SetOfConfigurations"> - <valueConstraint - oclString=""Specify a fancy OCL constraint here""/> - <variants - href="AcamarCluster.xmi#4"/> - <variants - href="AcamarCluster.xmi#5"/> - <variants - href="AcamarCluster.xmi#6"/> - <variants - href="AcamarCluster.xmi#7"/> + <adaptationPoints xsi:type="adaptationpoints:ModelEntityConfigurationRange" id="123321" name="VmMigration"> + <variationPossibility xsi:type="adaptationpoints:SetOfConfigurations"> + <valueConstraint oclString=""Specify a fancy OCL constraint here""/> + <variants href="AcamarCluster.xmi#4"/> + <variants href="AcamarCluster.xmi#5"/> + <variants href="AcamarCluster.xmi#6"/> + <variants href="AcamarCluster.xmi#7"/> </variationPossibility> - <adaptableEntity - xsi:type="resourcelandscape:RuntimeEnvironment" - href="AcamarCluster.xmi#13"/> + <adaptableEntity xsi:type="resourcelandscape:RuntimeEnvironment" href="AcamarCluster.xmi#13"/> </adaptationPoints> </adaptationpoints:AdaptationPointDescriptions> diff --git a/edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/PerformanceDataRepositoryDummy.xmi b/edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/PerformanceDataRepositoryDummy.xmi new file mode 100644 index 00000000..7e6613b8 --- /dev/null +++ b/edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/PerformanceDataRepositoryDummy.xmi @@ -0,0 +1,88 @@ +<?xml version="1.0" encoding="ASCII"?> +<perfdatarepo:PerformanceDataRepository + xmi:version="2.0" + xmlns:xmi="http://www.omg.org/XMI" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:perfdatarepo="http://www.descartes-research.net/metamodel/perfdata/0.1" + xsi:schemaLocation="http://www.descartes-research.net/metamodel/perfdata/0.1 ../../../edu.kit.ipd.descartes.perfdatarepo/model/perfdatarepo.ecore" + id="1" name="MeasuredPerformanceDataRepository"> + <resultHistory + id="123" + name="ResultTactic1-1" + timestamp="2012-12-12T00:00:00.000+0100"> + <metricValues + id="224123" + name="Util" + metricType="2" + value="0.4"/> + <metricValues + id="213123" + name="RespTimeGold" + metricType="3" + value="150.0"/> + <metricValues + id="124124123" + name="RespTimeSilver" + metricType="4" + value="340.0"/> + </resultHistory> + <resultHistory + id="assgddfs" + name="ResultTactic1-2" + timestamp="2012-12-12T01:00:00.000+0100"> + <metricValues + id="2241231" + name="Util" + metricType="2" + value="0.6"/> + <metricValues + id="2131232" + name="RespTimeGold" + metricType="3" + value="120.0"/> + <metricValues + id="1241241233" + name="RespTimeSilver" + metricType="4" + value="300.0"/> + </resultHistory> + <resultHistory + id="234ersdf" + name="ResultTactic2-1" + timestamp="2012-12-12T02:00:00.000+0100"> + <metricValues + id="12343as" + name="Util" + metricType="2" + value="0.7"/> + <metricValues + id="sdfsdvc" + name="RespTimeGold" + metricType="3" + value="100.0"/> + <metricValues + id="63412412" + name="RespTimeSilver" + metricType="4" + value="280.0"/> + </resultHistory> + <metricTypes + id="2" + name="Vm1Utilization"/> + <metricTypes + id="3" + name="CV_EJB_AvgResponseTime"/> + <metricTypes + id="4" + name="Purchase_AvgResponseTime"/> + <impactHistory + id="3df1q3eq" + name="Tactic1-AllImproved" + before="123" + after="assgddfs"/> + <impactHistory + id="232341241" + name="Tactic2-AllImproved" + before="assgddfs" + after="234ersdf"/> +</perfdatarepo:PerformanceDataRepository> diff --git a/edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/PushPullAdaptationProcess.xmi b/edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/PushPullAdaptationProcess.xmi new file mode 100644 index 00000000..9308147b --- /dev/null +++ b/edu.kit.ipd.descartes.adaptation.test/test_models/SEAMS_Case_Study/PushPullAdaptationProcess.xmi @@ -0,0 +1,148 @@ +<?xml version="1.0" encoding="ASCII"?> +<adaptation:AdaptationProcess + xmi:version="2.0" + xmlns:xmi="http://www.omg.org/XMI" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:adaptation="http://www.descartes-research.net/metamodel/adaptation/0.1" + xmlns:adaptationpoints="http://www.descartes-research.net/metamodel/adaptationpoints/0.1" + xsi:schemaLocation="http://www.descartes-research.net/metamodel/adaptation/0.1 ../../../edu.kit.ipd.descartes.mm.adaptation/model/adaptation.ecore http://www.descartes-research.net/metamodel/adaptationpoints/0.1 ../../../edu.kit.ipd.descartes.mm.adaptationpoints/model/adaptationpoints.ecore" + id="q" name="MyTestStaRepo"> + <tactics id="2341234" + name="increaseResources"> + <implementedPlan + id="qweqweqwe" + name="IncreaseResourcesAdaptationPlan"> + <steps + xsi:type="adaptation:StartAction" + id="2342623434" + successor="33eadsea"/> + <steps + xsi:type="adaptation:BranchAction" + id="33eadsea" + predecessor="2342623434" + successor="6423423423" + condition=""> + <branches + id="efasfasd" + name="increaseCores"> + <steps + xsi:type="adaptation:ActionReference" + id="35634534" + predecessor="321321" + successor="345fdas" + refersTo="2"/> + <steps + xsi:type="adaptation:StartAction" + id="321321" + successor="35634534"/> + <steps + xsi:type="adaptation:StopAction" + id="345fdas" + predecessor="35634534"/> + </branches> + <branches + id="adsgsadas" + name="increaseServers"> + <steps + xsi:type="adaptation:ActionReference" + id="453412341241" + predecessor="e123134" + successor="e63412" + refersTo="41123123"/> + <steps + xsi:type="adaptation:StartAction" + id="e123134" + successor="453412341241"/> + <steps + xsi:type="adaptation:StopAction" + id="e63412" + predecessor="453412341241"/> + </branches> + </steps> + <steps + xsi:type="adaptation:StopAction" + id="6423423423" + predecessor="33eadsea"/> + </implementedPlan> + </tactics> + <tactics id="123123" + name="decreaseResources"> + <implementedPlan + id="123123123" + name="DecreaseResourcesAdaptationPlan"> + <steps + xsi:type="adaptation:StartAction" + id="321" + successor="46233214"/> + <steps + xsi:type="adaptation:ActionReference" + id="46233214" + predecessor="321" + successor="ABC" + refersTo="345242342"/> + <steps + xsi:type="adaptation:ActionReference" + id="ABC" + predecessor="46233214" + successor="432" + refersTo="1287127123"/> + <steps + xsi:type="adaptation:StopAction" + id="432" + predecessor="ABC"/> + </implementedPlan> + </tactics> + <actions id="2" + name="increaseVirtualCpu" + operationType="SCALE_UP"> + <referredAdaptationPoint + xsi:type="adaptationpoints:ModelVariableConfigurationRange" + href="AdaptationPoints.xmi#238746123"/> + </actions> + <actions id="345242342" + name="decreaseCpuAction" + operationType="SCALE_DOWN"> + <referredAdaptationPoint + xsi:type="adaptationpoints:ModelVariableConfigurationRange" + href="AdaptationPoints.xmi#238746123"/> + </actions> + <actions id="41123123" + name="increaseServers" + operationType="SCALE_OUT"> + <referredAdaptationPoint + xsi:type="adaptationpoints:ModelEntityConfigurationRange" + href="AdaptationPoints.xmi#12312412412"/> + </actions> + <actions id="1287127123" + name="decreaseServers" + operationType="SCALE_IN"> + <referredAdaptationPoint + xsi:type="adaptationpoints:ModelEntityConfigurationRange" + href="AdaptationPoints.xmi#12312412412"/> + </actions> + <strategies + id="s1" + name="PUSH" + objective="o1"> + <tactics + id="wt1" + name="weightedTacticIncreaseResources" + usedTactic="2341234" + currentWeight="100.0" + defaultWeight="100.0"/> + <weightingFunction + id="wf1" + name="weightedSum"> + <weightedMetrics/> + </weightingFunction> + </strategies> + <goal description="Maintain the SLAs of all serivces while using resources as efficiently as possible"> + <objectives + id="o1" + name="maintainSLA" + specification=""/> + <objectives + id="o2" + name="resourceEfficiency"/> + </goal> +</adaptation:AdaptationProcess> -- GitLab