Infrastructure-as-Code for Data-Intensive Architectures: A Model-Driven Development Approach

被引:14
作者
Artac, Matej [2 ]
Borovsak, Tadej [2 ]
Di Nitto, Elisabetta [1 ]
Guerriero, Michele [1 ]
Perez-Palacin, Diego [3 ]
Tamburri, Damian Andrew [1 ]
机构
[1] Politecn Milan, DEIB, DEEPSE Grp, Milan, Italy
[2] XLAB, Ljubljana, Slovenia
[3] Linnaeus Univ, Comp Sci Dept, Vaxjo, Sweden
来源
2018 IEEE 15TH INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE (ICSA) | 2018年
关键词
DevOps; Big Data; Model-Driven Engineering; Cloud; Infrastructure-as-Code; TOSCA;
D O I
10.1109/ICSA.2018.00025
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
As part of the DevOps tactics, Infrastructure-as-Code (IaC) provides the ability to create, configure, and manage complex infrastructures by means of executable code. Writing IaC, however, is not an easy task, since it requires blending different infrastructure programming languages and abstractions, each specialized on a particular aspect of infrastructure creation, configuration, and management. Moreover, the more the architectures become large and complex (e.g. Data-Intensive or Microservice-based architectures), the more dire the need of IaC becomes. The goal of this paper is to exploit Model-Driven Engineering (MDE) to create language-agnostic models that are then automatically transformed into IaC. We focus on the domain of Data-Intensive Applications as these typically exploit complex infrastructures which demand sophisticated and fine-grained configuration and re-configuration - we show that, through our approach, called DICER, it is possible to create complex IaC with significant amounts of time savings, both in IaC design as well as deployment and re-deployment times.
引用
收藏
页码:156 / 165
页数:10
相关论文
共 19 条
[1]  
Artac M., 2016, Proceedings of the 2nd International Workshop on Quality-Aware DevOps, P40
[2]   DevOps: Introducing Infrastructure-as-Code [J].
Artac, Matej ;
Borovsak, Tadej ;
Di Nitto, Elisabetta ;
Guerriero, Michele ;
Tamburri, Damian Andrew .
PROCEEDINGS OF THE 2017 IEEE/ACM 39TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING COMPANION (ICSE-C 2017), 2017, :497-498
[3]   MicroCloud: A Container-based Solution for Efficient Resource Management in the Cloud [J].
Baresi, Luciano ;
Guinea, Sam ;
Quattrocchi, Giovanni ;
Tamburri, Damian A. .
2016 IEEE INTERNATIONAL CONFERENCE ON SMART CLOUD (SMARTCLOUD), 2016, :218-223
[4]  
Bergmayr A., 2016, CLOSER
[5]  
Bergmayr Alexander., 2014, CEUR Workshop Proceedings, V1242, P56
[6]   SeaClouds: An Open Reference Architecture for Multi-cloud Governance [J].
Brogi, Antonio ;
Carrasco, Jose ;
Cubo, Javier ;
D'Andria, Francesco ;
Di Nitto, Elisabetta ;
Guerriero, Michele ;
Perez, Diego ;
Pimentel, Ernesto ;
Soldani, Jacopo .
Software Architecture, ECSA 2016, 2016, 9839 :334-338
[7]  
Casale G., 2018, DICE D6 4 FINAL ASSE
[8]  
Cois C.A., 2014, Professional Communication Conference (IPCC), 2014 IEEE International, P1
[9]   Towards model-driven provisioning, deployment, monitoring, and adaptation of multi-cloud systems [J].
Ferry, Nicolas ;
Rossini, Alessandro ;
Chauvel, Franck ;
Morin, Brice ;
Solberg, Arnor .
2013 IEEE SIXTH INTERNATIONAL CONFERENCE ON CLOUD COMPUTING (CLOUD 2013), 2013, :887-894
[10]  
Grady Nancy W., 2014, 2014 IEEE International Conference on Big Data (Big Data), P11, DOI 10.1109/BigData.2014.7004470