deployments. That is, while the physical setup (i.e.,
availability zones, racks, and nodes) as captured in one
view does not change, views related to the deployment
such as the assignment of nodes or the deployment and
configuration of OpenStack services may be different.
Yet, only a part of the overall configuration is adapted
and existing views can be reused avoiding software
clones. This way, deployments can be tested and the
differences between them can be described precisely
by comparing two models.
In case a different DC shall be deployed similarly,
it is possible to reuse views such as the configuration
of OpenStack services. This eases the deployment of
multiple DCs with a tested configuration.
The possibility to specify default configuration op-
tions in models permits custom user-defined defaults.
The fact that these are then applied on the views has
two major advantages: It simplifies the models by
moving default configuration options out of the views
making the files more compact. Also, it simplifies code
generation by only processing the resulting model and
makes it independent from any (user-defined) defaults.
Regardless of the benefits of this model-based ap-
proach, it is always possible to continue work with the
output. Thus, MING does not introduce any depen-
dency in regard to the underlaying automation.
Not all fine-grained configuration options of the
bare machine provisioning or IaaS solution are re-
flected in the MING metamodel. Thus, in case these
shall be lifted to the modeling layer, the metamodel
and the views need to be extended. In case multi-
ple technologies are supported using code generation,
certain features of one technology may not be sup-
ported by alternatives. For example, the deployment
of IaaS services may be realized using Kernel-based
Virtual-Machine (KVM) or Linux Containers (LXC).
In case such a configuration option is specified but not
supported by a technology a fallback may be realized
during code generation. For early feedback this can
be addressed through validators in the DSL. That is,
when selecting an option that is not supported by some
technologies a warning is displayed in the DSL editor.
7 CONCLUSION
In this paper MING, a model-based approach, has been
presented for the tool agnostic, declarative configura-
tion of IaaS deployments in cloud DCs.
A textual DSL permits to describe such deploy-
ments from different view-points. Through code gen-
eration particular technologies for the automated in-
stallation and deployment of a base OS and OpenStack
as an IaaS solution are leveraged.
ACKNOWLEDGMENTS
The author would like to thank the extended Infrastruc-
ture Cloud team and in particular Tobias Brausen and
Thomas Oswald for valuable feedback and comments
and Mike Machado for proofreading.
REFERENCES
Andrikopoulos, V., Binz, T., Leymann, F., and Strauch, S.
(2013). How to Adapt Applications for the Cloud
Environment. Computing, 95:493–535.
Cerf, V. G. and Khan, R. E. (1974). A protocol for packet
network intercommunication. IEEE Transactions on
Communications, 22:637–648.
Chandrasekar, A. and Gibson, G. (2014). A comparative
study of baremetal provisioning frameworks. Tech-
nical Report CMU-PDL-14-109, Parallel Data Lab,
Carnegie Mellon University.
Droms, R. (1997). Dynamic Host Configuration Protocol.
RFC 2131, The Internet Engineering Task Force.
G
¨
artner, M., Lange, T., and R
¨
uhmkorf, J. (1999). The fully
automatic installation of a Linux cluster. Technical
Report 379, Computer Science Department, University
of Cologne.
Intel Corporation (1999). Preboot Execution Environment
(PXE) Specification Version 2.1. http://download.
intel.com/design/archives/wfm/downloads/pxespec.pdf
.
[accessed in March 2016].
Lange, T. (2010). 10 Jahre FAI Projekt. Technical Re-
port 603, Computer Science Department, University of
Cologne.
Mell, P. M. and Grance, T. (2011). The NIST Definition
of Cloud Computing. Technical Report SP 800-145,
National Institute of Standards & Technology.
Sollins, K. R. (1992). The TFTP Protocol (Revision 2). RFC
1350, The Internet Engineering Task Force.
Weil, S. A., Brandt, S. A., Miller, E. L., Long, D. D. E.,
and Maltzahn, C. (2006). Ceph: A scalable, high-
performance distributed file system. In Bershad, B. N.
and Mogul, J. C., editors, 7th Symposium on Operating
Systems Design and Implementation, pages 307–320.
USENIX Association.
Wettinger, J., Breitenb
¨
ucher, U., and Leymann, F. (2014).
Standards-Based DevOps Automation and Integration
Using TOSCA. In 7th IEEE/ACM International Con-
ference on Utility and Cloud Computing, pages 59–68.
IEEE.
Zimmermann, H. (1980). OSI Reference Model–The ISO
Model of Architecture for Open Systems Intercon-
nection. IEEE Transactions on Communications,
28(4):425–432.
Sublimated Configuration of Infrastructure as a Service Deployments - MING: A Model- and View-Based Approach for Cloud Datacenters
313