Modelado del Aprovisionamiento de Infraestructura en la Nube: Un Enfoque de Software como un Servicio

##plugins.themes.bootstrap3.article.main##

Julio Sandobalín

Carlos Iñiguez-Jarrín


Palabras clave:
Infraestructura como Código, Lenguaje Específico de Dominio, Aprovisionamiento de Infraestructura en la Nube, Software como un Servicio, Ingeniería de Software Dirigida por Modelos ; Infrastructure as Code, Domain-Specific Language, Cloud Infrastructure Provisioning, Software-as-a- Services, Model-Driven Engineering

Resumen

Aprovisionar significa hacer que un elemento de la infraestructura, como un servidor o un dispositivo de red, esté listo para su uso. La comunidad DevOps aprovecha el enfoque de Infraestructura como Código (Infrastructure as Code, IaC) para proporcionar herramientas para el aprovisionamiento de infraestructura en la nube. Sin embargo, cada herramienta de aprovisionamiento tiene su propio lenguaje de secuencias de comandos, y administrar diferentes herramientas para varios proveedores de la nube lleva mucho tiempo y es propenso a errores. En trabajos anteriores, presentamos una herramienta de aprovisionamiento de infraestructura dirigida por modelos llamada ARGON, que aprovecha el enfoque de IaC mediante la Ingeniería de Software Dirigida por Modelos. ARGON proporciona un lenguaje de modelado para especificar los recursos de la infraestructura de la nube y genera scripts para apoyar la orquestación del aprovisionamiento de la infraestructura de la nube. Dado que ARGON se ejecuta en el IDE de escritorio Eclipse, proponemos migrar de un ARGON Desktop a un ARGON Cloud como un enfoque de Software-como-un-Servicio. Por un lado, desarrollamos un lenguaje de modelado específico de dominio utilizando marcos de trabajo de JavaScript. Por otro lado, utilizamos un motor de transformación de modelo-a-texto a través de un servicio web REST para generar scripts. Finalmente, llevamos a cabo un ejemplo modelando recursos de infraestructura para Amazon Web Services y luego generamos un script para la herramienta Ansible.

Descargas

Descargas

Los datos de descargas todavía no están disponibles.




Detalles del artículo

Biografías de los autores/as

Julio Sandobalín, Escuela Politécnica Nacional, Departamento de Informática y Ciencias de la Computación, Quito, Ecuador

Julio Sandobalin is Professor and Researcher at the Department of Informatics and Computer Science, Escuela Politécnica Nacional, Ecuador. He received his Ph.D. in Computer Science from Universitat Politècnica de València, Spain. He also holds a Master's Degree in Software Engineering from Universitat Politècnica de València, Spain. His research areas of interest are Model-Driven Engineering, Requirement Engineering, Empirical Software Engineering, DevOps, and Agile.

Carlos Iñiguez-Jarrín, Escuela Politécnica Nacional, Departamento de Informática y Ciencias de la Computación, Quito, Ecuador

Carlos Iñiguez-Jarrín is Professor in informatics at Escuela Politécnica Nacional (EPN), Ecuador. He has a Ph.D. in Computer Science from Universitat Politècnica de València (Spain), where he was a member of the Genomic Group at PROS Research Center. He holds a Master's Degree in Web Engineering from Universidad Politécnica de Madrid (Spain). He is currently involved in user experience design and interaction design.

Citas

Brambilla, Marco, Jordi Cabot, and Manuel Wimmer (2017). Model-Driven Software Engineering in Practice. 2nd. Morgan and Claypool Publishers. ISBN: 9781627057080.

Brikman, Yevgeniy (2019). Terraform: Up and Running. O’Reilly Media, Inc., p. 368. ISBN: 9781492046905.

Buyya, Rajkumar, James Broberg, and Andrzej Goscinski (Jan. 2011). Cloud Computing: Principles and Paradigms. John Wiley and Sons. ISBN: 9780470887998.

Casola, Valentina et al. (Aug. 2017). «MUSA deployer: De-ployment of Multi-cloud Applications». In: Institute of Electrical and Electronics Engineers Inc., pp. 107–112. ISBN:9781538617588. DOI: https://doi.org/10.1109/WETICE.2017.46.

Chen, Wei et al. (Aug. 2016). «MORE: A model-driven op-eration service for cloud-based IT systems». In: Institute of Electrical and Electronics Engineers Inc., pp. 633–640. ISBN:9781509026289. DOI: https://doi.org/10.1109/SCC.2016.88.

Chiari, Michele et al. (2022). «Developing a New DevOps Mod-elling Language to Support the Creation of Infrastructure as Code». In: Communications in Computer and Information Sci-ence 1617 CCIS, pp. 88–93. DOI: https://doi.org/10.1007/978-3-031-23298-5_8.

Farley, Dave and Jez Humble (2010). Continuous Delivery: Re-liable Software Releases through Build, Test, and Deployment Automation. Addison-Wesley Professional, p. 300. ISBN:9780321670250.

Ferry, Nicolas et al. (Jan. 2018). «CloudMF: Model-Driven Man-agement of Multi-Cloud Applications». In: ACM Transactions on Internet Technology (TOIT) 18 (2). DOI: https://doi.org/10.1145/3125621. URL: https://dl.acm.org/doi/10.1145/3125621.

Guerriero, Michele et al. (2019). «Adoption, Support, and Chal-lenges of Infrastructure-as-Code: Insights from Industry». In: pp. 580–589. DOI: https://doi.org/10.1109/ICSME.2019.00092.

Kartheeyayini, V. et al. (2022). «AWS cloud computing platforms deployment of landing zone - Infrastructure as a code». In: vol. 2393. DOI: https://doi.org/10.1063/5.0079757.

López-Viana, Ramón, Jessica Díaz, and Jorge E. Pérez (2022). «Continuous Deployment in IoT Edge Computing: A GitOps implementation». In: 2022 17th Iberian Conference on In-formation Systems and Technologies (CISTI), pp. 1–6. DOI: https://doi.org/10.23919/CISTI54924.2022.9820108.

Miñón, Raúl et al. (2022). «Pangea: An MLOps Tool for Au-tomatically Generating Infrastructure and Deploying Analytic Pipelines in Edge, Fog and Cloud Layers». In: Sensors 22(12). DOI: https://doi.org/10.3390/s22124425.

Morris, Kief (2016). Infrastructure as Code : Managing Servers in the Cloud. O’Reilly Media, Inc. ISBN: 9781491924358.

Neharika, Keerthi and Ruth G. Lennon (2023). «Investigations into Secure IaC Practices». In: Proceedings of Seventh Interna-tional Congress on Information and Communication Technol-ogy. Ed. by Xin-She Yang et al. Springer Nature Singapore: Singapore, pp. 289–303. ISBN: 978-981-19-1610-6. DOI: https://doi.org/10.1007/978-981-19-1610-6_25.

Nitto, Elisabetta Di et al. (2017). Model-Driven Development and Operation of Multi-Cloud Applications. Ed. by Elisabetta Di Nitto et al. 1st. Springer Cham. DOI: https://doi.org/10.1007/978-3-319-46031-4.

Palma, Stefano Dalla, Dario Di Nucci, and Damian Tamburri (2022). «Defuse: A Data Annotator and Model Builder for Soft-ware Defect Prediction». In: 2022 IEEE International Con-ference on Software Maintenance and Evolution (ICSME), pp. 479–483. DOI: https://doi.org/10.1109/ICSME55016.2022.00063.

Rossini, Alessandro (2015). «Cloud Application Modelling and Execution Language (CAMEL) and the PaaSage Workflow». In: Advances in Service-Oriented and Cloud Computing — Workshops of ESOCC 2015, Taormina, Italy. ISBN: 978-3-319-33312-0. DOI: https://doi.or/10.1007/978-3-319-33313-7.

Sandobalin, Julio, Emilio Insfran, and Silvia Abrahao (2017a). «An Infrastructure Modelling Tool for Cloud Provisioning». In: Proceedings of the IEEE 14th International Conference on Services Computing, SCC 2017. ISBN: 9781538620052. DOI:https://doi.org/10.1109/SCC.2017.52.

Sandobalin, Julio, Emilio Insfran, and Silvia Abrahao (2017b). «End-to-end automation in cloud infrastructure provision-ing». In: Proceedings of the 26th International Confer-ence on Information Systems Development, ISD 2017. ISBN: 9789963228836. URL: http://aisel.aisnet.org/isd2014/proceedings2017/ISDMethodologies /5.

Sandobalin, Julio, Emilio Insfran, and Silvia Abrahao (2018). «An infrastructure modeling approach for multi-cloud provi-sioning». In: Proceedings of the 27th International Conference on Information Systems Development: Designing Digitaliza-tion, ISD 2018. ISBN: 978-91-7753-876-9. URL: https://aisel.aisnet.org/isd2014/proceedings2018/ISDMethodologies/2.

Sandobalin, Julio, Emilio Insfran, and Silvia Abrahao (2020). «On the effectiveness of tools to support infrastructure as code:Model-driven versus code-centric». In: IEEE Access 8. ISSN: 21693536. DOI: https://doi.org/10.1109/ACCESS.2020.2966597.

Solayman, Haleema Essa and Rawaa Putros Qasha (2023). «Seamless Integration of DevOps Tools for Provisioning Automation of the IoT Application on Multi-Infrastructures». In: 2023 3rd International Conference on Intelligent Communi-cation and Computational Techniques (ICCT), pp. 1–7. DOI https://doi.org/10.1109/ICCT56969.2023.10075814.

Steinberg, David et al. (2009). EMF: Eclipse Modeling Frame-work. 2nd. Addison-Wesley Professional. ISBN: 0321331885.

Zhou, Huan et al. (2019). «CloudsStorm: A framework for seam-lessly programming and controlling virtual infrastructure functions during the DevOps lifecycle of cloud applications». In: Software - Practice and Experience 49(10), pp. 1421–1447. DOI: https://doi.org/10.1002/spe.2741.