CloudMPL: A Domain Specific Language for Describing Management Policies for an Autonomic Cloud Infrastructure

To benefit from the advantages that Cloud Computing brings to the IT industry, management policies must be implemented as a part of the operation of the Cloud. Among others, for example, the specification of policies can be used for the management of energy to reduce the cost of running the IT system or also for security policies while handling privacy issues of users. As cloud platforms are large, manual enforcement of policies is not scalable. Hence, autonomic approaches for management policies have recently received a considerable attention. These approaches allow specification of rules that are executed via rule-engines. The process of rules creation starts by the interpretation of the policies drafted by high-rank managers. Then, technical IT staff translate such policies to operational activities to implement them. Such process can start from a textual declarative description and after numerous steps terminates in a set of rules to be executed on a rule engine. To simplify the steps and to bridge the considerable gap between the declarative policies and executable rules, we propose a domain-specific language called CloudMPL. We also design a method of automated transformation of the rules captured in CloudMPL to the popular rule-engine Drools. As the policies are changed over time, code generation will reduce the time required for the implementation of the policies. In addition, using a declarative language for writing the specifications is expected to make the authoring of rules easier. We demonstrate the use of the CloudMPL language into a running example extracted from a management energy consumption case study.

[1]  Rizos Sakellariou,et al.  Adaptive resource configuration for Cloud infrastructure management , 2013, Future Gener. Comput. Syst..

[2]  Gang Yin,et al.  Online Self-Reconfiguration with Performance Guarantee for Energy-Efficient Large-Scale Cloud Computing Data Centers , 2010, 2010 IEEE International Conference on Services Computing.

[3]  Parastoo Mohagheghi,et al.  Towards a Domain-Specific Language to Deploy Applications in the Clouds , 2012, CLOUD 2012.

[4]  Nelly Bencomo,et al.  RELAX: a language to address uncertainty in self-adaptive systems requirement , 2010, Requirements Engineering.

[5]  Charles L. Forgy,et al.  Rete: A Fast Algorithm for the Many Patterns/Many Objects Match Problem , 1982, Artif. Intell..

[6]  Rajkumar Buyya,et al.  Adaptive threshold-based approach for energy-efficient consolidation of virtual machines in cloud data centers , 2010, MGC '10.

[7]  Behzad Bordbar,et al.  An Architectural Framework for Enforcing Energy Management Policies in Cloud , 2013, 2013 IEEE Sixth International Conference on Cloud Computing.

[8]  Nabor das Chagas Mendonça,et al.  A Declarative Environment for Automatic Performance Evaluation in IaaS Clouds , 2013, 2013 IEEE Sixth International Conference on Cloud Computing.

[9]  Behzad Bordbar,et al.  Modelling and Analysis of Migration Policies for Autonomic Management of Energy Consumption in Cloud via Petri-Nets , 2014, 2014 International Conference on Cloud and Autonomic Computing.

[10]  Ivona Brandic,et al.  Energy-efficient and SLA-aware management of IaaS clouds , 2012, 2012 Third International Conference on Future Systems: Where Energy, Computing and Communication Meet (e-Energy).

[11]  M Mernik,et al.  When and how to develop domain-specific languages , 2005, CSUR.

[12]  Chandra Krintz,et al.  Neptune: a domain specific language for deploying hpc software on cloud platforms , 2011, ScienceCloud '11.

[13]  Charles L. Forgy,et al.  Rete: a fast algorithm for the many pattern/many object pattern match problem , 1991 .