Skip to content
Snippets Groups Projects
Commit d5a2022f authored by Nikolaus Huber's avatar Nikolaus Huber
Browse files
parent 26501261
No related branches found
No related tags found
No related merge requests found
<?xml version="1.0" encoding="ASCII"?>
<resourcelandscape:DistributedDataCenter xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:resourcelandscape="http://www.descartes-research.net/metamodel/resourcelandscape/0.1" id="1" name="KitDataCenters">
<consistsOf id="2" name="AtisDataCenter">
<contains xsi:type="resourcelandscape:CompositeHardwareInfrastructure" id="3" name="AcamarCluster">
<contains xsi:type="resourcelandscape:ComputingInfrastructure" id="4" name="ClusterNode20">
<contains id="10" name="XenServer">
<contains id="12" name="AppServerVM1" ofClass="OS VM">
<template href="ContainerTemplateRepo.xmi#2"/>
</contains>
<template href="ContainerTemplateRepo.xmi#11"/>
</contains>
<template href="ContainerTemplateRepo.xmi#5"/>
</contains>
<contains xsi:type="resourcelandscape:ComputingInfrastructure" id="5" name="ClusterNode19">
<contains id="15" name="XenServer">
<template href="ContainerTemplateRepo.xmi#11"/>
</contains>
<template href="ContainerTemplateRepo.xmi#5"/>
</contains>
<contains xsi:type="resourcelandscape:ComputingInfrastructure" id="6" name="ClusterNode18">
<contains id="25" name="XenServer">
<template href="ContainerTemplateRepo.xmi#11"/>
</contains>
<template href="ContainerTemplateRepo.xmi#5"/>
</contains>
<contains xsi:type="resourcelandscape:ComputingInfrastructure" id="7" name="ClusterNode17">
<contains id="14" name="XenServer">
<contains id="33" name="DatabaseVM" ofClass="OS VM">
<template href="ContainerTemplateRepo.xmi#555"/>
</contains>
<template href="ContainerTemplateRepo.xmi#11"/>
</contains>
<template href="ContainerTemplateRepo.xmi#5"/>
</contains>
</contains>
</consistsOf>
</resourcelandscape:DistributedDataCenter>
<?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" id="1" name="SEAMS-AdaptationPoints">
<adaptationPoints xsi:type="adaptationpoints:ModelVariableConfigurationRange" id="238746123" name="AmountOfCores" minValue="2.0" maxValue="4.0">
<adaptableEntity xsi:type="resourceconfiguration:NumberOfParallelProcessingUnits" href="ContainerTemplateRepo.xmi#1341341"/>
</adaptationPoints>
<adaptationPoints xsi:type="adaptationpoints:ModelEntityConfigurationRange" id="12312412412" name="NumberOfAppServerVmInstancesPerPhysicalServer">
<variationPossibility xsi:type="adaptationpoints:PropertyRange">
<minValueConstraint oclString="self.containedIn.contains->size()>=1" name="minValueConstraint"/>
<maxValueConstraint oclString="self.containedIn.contains->size()&lt;=2" name="maxValueConstraint"/>
</variationPossibility>
<adaptableEntity xsi:type="resourcelandscape:RuntimeEnvironment" href="AcamarCluster.xmi#12"/>
</adaptationPoints>
<adaptationPoints xsi:type="adaptationpoints:ModelEntityConfigurationRange" id="xyz" name="NumberOfMaxAppServers">
<variationPossibility xsi:type="adaptationpoints:PropertyRange">
<minValueConstraint oclString="self.referringContainers->size() >= 1" name="minNumberOfAppServersInDataCenter"/>
<maxValueConstraint oclString="self.referringContainers->size() &lt;= 8" name="maxNumberOfAppServersInDataCenter"/>
</variationPossibility>
<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="&quot;Specify a fancy OCL constraint here&quot;" name="migrationTargetConstraint"/>
<variants xsi:type="resourcelandscape:ComputingInfrastructure" href="AcamarCluster.xmi#4"/>
<variants xsi:type="resourcelandscape:ComputingInfrastructure" href="AcamarCluster.xmi#5"/>
<variants xsi:type="resourcelandscape:ComputingInfrastructure" href="AcamarCluster.xmi#6"/>
</variationPossibility>
<adaptableEntity xsi:type="resourcelandscape:RuntimeEnvironment" href="AcamarCluster.xmi#12"/>
</adaptationPoints>
</adaptationpoints:AdaptationPointDescriptions>
<?xml version="1.0" encoding="ASCII"?>
<containerrepository:ContainerRepository xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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" id="1" name="AcamarClusterContainerTemplates">
<templates id="2" name="AppServerVmTemplate">
<templateConfig xsi:type="resourceconfiguration:ActiveResourceSpecification" id="3xyzActiveResourceTemplate32" name="CpusAppServer">
<processingResourceSpecifications id="235234" name="CPU-Spec" schedulingPolicy="PROCESSOR_SHARING" processingRate="1000.0">
<nrOfParProcUnits id="1341341" name="NumberOfAppServerVmCpus" number="2"/>
</processingResourceSpecifications>
</templateConfig>
<referringContainers xsi:type="resourcelandscape:RuntimeEnvironment" href="AcamarCluster.xmi#12"/>
</templates>
<templates id="555" name="DatabaseVmTemplate">
<templateConfig xsi:type="resourceconfiguration:ActiveResourceSpecification" id="1231231231" name="CpusDatabase">
<processingResourceSpecifications id="51241132" name="CPU-Spec" schedulingPolicy="PROCESSOR_SHARING" processingRate="1000.0">
<nrOfParProcUnits id="33" name="DatabaseVirtualCpus" number="8"/>
</processingResourceSpecifications>
</templateConfig>
</templates>
<templates id="5" name="ClusterNodeTemplate">
<templateConfig xsi:type="resourceconfiguration:ActiveResourceSpecification" id="123123" name="CpusClusterNode">
<processingResourceSpecifications id="123sf" name="AmdOpteronCpuSpec" schedulingPolicy="PROCESSOR_SHARING" processingRate="1000.0">
<nrOfParProcUnits id="23423sad" name="AmdOpteron" number="8"/>
</processingResourceSpecifications>
</templateConfig>
</templates>
<templates id="11" name="XenServerTemplate">
<templateConfig xsi:type="resourceconfiguration:CustomConfigurationSpecification" id="12" name="XenServerConfiguration"/>
</templates>
</containerrepository:ContainerRepository>
<?xml version="1.0" encoding="ASCII"?>
<perfdatarepo:PerformanceDataRepository xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:perfdatarepo="http://www.descartes-research.net/metamodel/perfdata/0.1" 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>
<resultHistory id="_l-JN8WiWEeKyvugiUTWsDg" name="ResultTactic2-2" timestamp="2012-12-12T03:00:00.000+0100">
<metricValues id="_uSiGAGiWEeKyvugiUTWsDg" name="Util" metricType="2" value="0.8"/>
<metricValues id="_vzap8GiWEeKyvugiUTWsDg" name="RespTimeGold" metricType="3" value="80.0"/>
<metricValues id="_wmMKsGiWEeKyvugiUTWsDg" name="RespTimeSilver" metricType="4" value="260.0"/>
</resultHistory>
<metricTypes id="2" name="Vm1Utilization"/>
<metricTypes id="3" name="CV_EJB_AvgResponseTime"/>
<metricTypes id="4" name="Purchase_AvgResponseTime"/>
<impactHistory id="_dJhhM2iXEeKyvugiUTWsDg" name="Tactic3-AllImproved" before="234ersdf" after="_l-JN8WiWEeKyvugiUTWsDg"/>
<impactHistory id="3df1q3eq" name="Tactic1-AllImproved" before="123" after="assgddfs"/>
<impactHistory id="232341241" name="Tactic2-AllImproved" before="assgddfs" after="234ersdf"/>
</perfdatarepo:PerformanceDataRepository>
<?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" xmlns:containerrepository="http://www.descartes-research.net/metamodel/containerrepository/0.1" xmlns:resourcelandscape="http://www.descartes-research.net/metamodel/resourcelandscape/0.1" id="_07SqMKaFEeKsaqdh-1smGw" name="PushPullAdaptationProcess">
<tactics id="2341234" name="addResources">
<implementedPlan id="qweqweqwe" name="addResourcesAdaptationPlan">
<steps xsi:type="adaptation:StartAction" id="_PXgN0KaHEeKsaqdh-1smGw" successor="_Qych0qaHEeKsaqdh-1smGw"/>
<steps xsi:type="adaptation:StopAction" id="_QNxHcaaHEeKsaqdh-1smGw" predecessor="_Qych0qaHEeKsaqdh-1smGw"/>
<steps xsi:type="adaptation:LoopAction" id="_Qych0qaHEeKsaqdh-1smGw" predecessor="_PXgN0KaHEeKsaqdh-1smGw" successor="_QNxHcaaHEeKsaqdh-1smGw" counter="1">
<body id="_UpH4cKaHEeKsaqdh-1smGw" name="addVCPUorAppServer">
<steps xsi:type="adaptation:StartAction" id="2342623434" successor="33eadsea"/>
<steps xsi:type="adaptation:BranchAction" id="33eadsea" predecessor="2342623434" successor="6423423423" condition="RuntimeEnvironment.allInstances()->select( re | re.template = self.template )->exists(re | re.configSpec.oclAsType(resourceconfiguration::ActiveResourceSpecification).processingResourceSpecifications->forAll(nrOfParProcUnits.number &lt; 4)) and RuntimeEnvironment.allInstances()->select( re | re.template = self.template )->forAll(re | re.template.templateConfig.oclAsType(resourceconfiguration::ActiveResourceSpecification).processingResourceSpecifications->forAll(nrOfParProcUnits.number &lt; 4))">
<context xsi:type="resourcelandscape:RuntimeEnvironment" href="AcamarCluster.xmi#12"/>
<conditionTrueBranch id="efasfasd" name="addVCPU">
<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"/>
</conditionTrueBranch>
<conditionFalseBranch id="adsgsadas" name="addAppServer">
<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"/>
</conditionFalseBranch>
</steps>
<steps xsi:type="adaptation:StopAction" id="6423423423" predecessor="33eadsea"/>
</body>
</steps>
</implementedPlan>
</tactics>
<tactics id="_zFC2EaaMEeKdn_E8M08Q_g" name="undoPreviousAction">
<implementedPlan id="_1_t3cKaMEeKdn_E8M08Q_g" name="undoPreviousActionPlan">
<steps xsi:type="adaptation:StartAction" id="_9awssKaMEeKdn_E8M08Q_g" successor="_-Pacw6aMEeKdn_E8M08Q_g"/>
<steps xsi:type="adaptation:BranchAction" id="_-Pacw6aMEeKdn_E8M08Q_g" predecessor="_9awssKaMEeKdn_E8M08Q_g" successor="_9ysEgaaMEeKdn_E8M08Q_g" condition="">
<context xsi:type="containerrepository:ContainerTemplate" href="ContainerTemplateRepo.xmi#2"/>
<conditionTrueBranch id="_KP82cKaNEeKdn_E8M08Q_g" name="conditionTrue">
<steps xsi:type="adaptation:StartAction" id="_UUI4MKaNEeKdn_E8M08Q_g" successor="_dl-P9KaNEeKdn_E8M08Q_g"/>
<steps xsi:type="adaptation:StopAction" id="_Uv0uoaaNEeKdn_E8M08Q_g" predecessor="_dl-P9KaNEeKdn_E8M08Q_g"/>
<steps xsi:type="adaptation:ActionReference" id="_dl-P9KaNEeKdn_E8M08Q_g" predecessor="_UUI4MKaNEeKdn_E8M08Q_g" successor="_Uv0uoaaNEeKdn_E8M08Q_g" refersTo="41123123"/>
</conditionTrueBranch>
<conditionFalseBranch id="_K4GbkaaNEeKdn_E8M08Q_g" name="conditionFalse">
<steps xsi:type="adaptation:StartAction" id="_VFQMEKaNEeKdn_E8M08Q_g" successor="_mMx4RKaOEeKlTfD7QKQIcw"/>
<steps xsi:type="adaptation:StopAction" id="_VYB-IaaNEeKdn_E8M08Q_g" predecessor="_mMx4RKaOEeKlTfD7QKQIcw"/>
<steps xsi:type="adaptation:ActionReference" id="_mMx4RKaOEeKlTfD7QKQIcw" predecessor="_VFQMEKaNEeKdn_E8M08Q_g" successor="_VYB-IaaNEeKdn_E8M08Q_g" refersTo="2"/>
</conditionFalseBranch>
</steps>
<steps xsi:type="adaptation:StopAction" id="_9ysEgaaMEeKdn_E8M08Q_g" predecessor="_-Pacw6aMEeKdn_E8M08Q_g"/>
</implementedPlan>
</tactics>
<tactics id="123123" name="removeResources">
<implementedPlan id="123123123" name="removeResourcesAdaptationPlan">
<steps xsi:type="adaptation:StartAction" id="_iqERYKaMEeKdn_E8M08Q_g" successor="_jqTmYqaMEeKdn_E8M08Q_g"/>
<steps xsi:type="adaptation:StopAction" id="_jO2ZcaaMEeKdn_E8M08Q_g" predecessor="_jqTmYqaMEeKdn_E8M08Q_g"/>
<steps xsi:type="adaptation:LoopAction" id="_jqTmYqaMEeKdn_E8M08Q_g" predecessor="_iqERYKaMEeKdn_E8M08Q_g" successor="_jO2ZcaaMEeKdn_E8M08Q_g" counter="1">
<body id="_oCJwYKaMEeKdn_E8M08Q_g" name="removeVCPUorAppServer">
<steps xsi:type="adaptation:StartAction" id="321" successor="branchDecrease"/>
<steps xsi:type="adaptation:BranchAction" id="branchDecrease" predecessor="321" successor="432" condition="RuntimeEnvironment.allInstances()->select( re | re.template = self.template and not re.configSpec->isEmpty())->exists(re | re.configSpec.oclAsType(resourceconfiguration::ActiveResourceSpecification).processingResourceSpecifications->forAll(nrOfParProcUnits.number > 2))">
<context xsi:type="resourcelandscape:RuntimeEnvironment" href="AcamarCluster.xmi#12"/>
<conditionTrueBranch id="_k0FLAICyEeKnieBrE9C24w" name="addVCPU">
<steps xsi:type="adaptation:ActionReference" id="123487612497162" predecessor="_q13HQICyEeKnieBrE9C24w" successor="_rJvFgYCyEeKnieBrE9C24w" refersTo="345242342"/>
<steps xsi:type="adaptation:StartAction" id="_q13HQICyEeKnieBrE9C24w" successor="123487612497162"/>
<steps xsi:type="adaptation:StopAction" id="_rJvFgYCyEeKnieBrE9C24w" predecessor="123487612497162"/>
</conditionTrueBranch>
<conditionFalseBranch id="_nZJv1oCyEeKnieBrE9C24w" name="removeAppServer">
<steps xsi:type="adaptation:ActionReference" id="234983249623" predecessor="_xUQHAICyEeKnieBrE9C24w" successor="_xx9WsYCyEeKnieBrE9C24w" refersTo="1287127123"/>
<steps xsi:type="adaptation:StartAction" id="_xUQHAICyEeKnieBrE9C24w" successor="234983249623"/>
<steps xsi:type="adaptation:StopAction" id="_xx9WsYCyEeKnieBrE9C24w" predecessor="234983249623"/>
</conditionFalseBranch>
</steps>
<steps xsi:type="adaptation:StopAction" id="432" predecessor="branchDecrease"/>
</body>
</steps>
</implementedPlan>
</tactics>
<actions id="2" name="AddVCPU">
<referredAdaptationPoint xsi:type="adaptationpoints:ModelVariableConfigurationRange" href="AdaptationPoints.xmi#238746123"/>
<adaptationActionOperation adaptationOperationScope="RANDOM" adaptationOperationDirection="INCREASE"/>
</actions>
<actions id="345242342" name="RemoveCPU">
<referredAdaptationPoint xsi:type="adaptationpoints:ModelVariableConfigurationRange" href="AdaptationPoints.xmi#238746123"/>
<adaptationActionOperation adaptationOperationScope="RANDOM" adaptationOperationDirection="DECREASE"/>
</actions>
<actions id="41123123" name="AddAppServer">
<referredAdaptationPoint xsi:type="adaptationpoints:ModelEntityConfigurationRange" href="AdaptationPoints.xmi#12312412412"/>
<adaptationActionOperation adaptationOperationScope="RANDOM" adaptationOperationDirection="INCREASE"/>
</actions>
<actions id="1287127123" name="RemoveAppServer">
<referredAdaptationPoint xsi:type="adaptationpoints:ModelEntityConfigurationRange" href="AdaptationPoints.xmi#12312412412"/>
<adaptationActionOperation adaptationOperationScope="RANDOM" adaptationOperationDirection="DECREASE"/>
</actions>
<strategies id="s1" name="PUSH" objective="_GdVkoKaGEeKsaqdh-1smGw">
<triggeringEvents id="12345" name="SlaViolatedEvent"/>
<tactics id="wt1" name="AddResourcesWeightedTactic" usedTactic="2341234" currentWeight="1.0" defaultWeight="1.0"/>
<weightingFunction id="wf1" name="WeightedSum">
<weightedMetrics id="_TzHMgGVXEeK4L53_AeGtGA" name="UtilizationWeight" weight="1.0">
<metricType href="PerformanceDataRepositoryDummy.xmi#2"/>
</weightedMetrics>
<weightedMetrics id="_QKf6YGllEeKYrN0mFHpJCQ" name="ResponseTimeWeight" weight="-2.0">
<metricType href="PerformanceDataRepositoryDummy.xmi#3"/>
</weightedMetrics>
</weightingFunction>
</strategies>
<strategies id="_Cg--ZYAnEeKW2vVcg5ekRw" name="PULL" objective="_G-ctoKaGEeKsaqdh-1smGw">
<triggeringEvents id="_H_MTgIAnEeKW2vVcg5ekRw" name="ScheduledMaintenanceEvent"/>
<tactics id="_Tk5LUYAnEeKW2vVcg5ekRw" name="RemoveResourcesWeightedTactic" usedTactic="123123" currentWeight="1.0" defaultWeight="1.0"/>
<tactics id="_4j5FkaamEeKwhcuIujY6Yw" name="UndoPreviousActionWeightedTactic" usedTactic="_zFC2EaaMEeKdn_E8M08Q_g" currentWeight="0.5" defaultWeight="0.5"/>
<weightingFunction id="wf2" name="WeightedSum">
<weightedMetrics id="_TzHMgGVXEeK4L53_AeGtGA1" name="UtilizationWeight" weight="1.0">
<metricType href="PerformanceDataRepositoryDummy.xmi#2"/>
</weightedMetrics>
<weightedMetrics id="_Fc5YUKanEeKwhcuIujY6Yw" name="ResponseTimeWeight" weight="-2.0">
<metricType href="PerformanceDataRepositoryDummy.xmi#3"/>
</weightedMetrics>
</weightingFunction>
</strategies>
<goal description="&lt;&lt;Maintain SLAs of all serivces using resources efficiently>>">
<objectives id="_GdVkoKaGEeKsaqdh-1smGw" name="MaintainSLAs" specification="90% Quantile of ResponseTime"/>
<objectives id="_G-ctoKaGEeKsaqdh-1smGw" name="OptimizeResourceEfficiency" specification="85% > Utilization > 45%"/>
</goal>
</adaptation:AdaptationProcess>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment