Enhancing DevOps Practices in the IoT–Edge–Cloud Continuum: Architecture, Integration, and Software Orchestration Demonstrated in the COGNIFOG Framework
Abstract
:1. Introduction
1.1. CI/CD Practices in the IoT–Edge–Cloud Continuum
1.2. Orchestration Challenges
1.3. Resource and Availability Challenges
2. Solution
2.1. Overall COGNIFOG Framework (For IoT–Edge–Cloud Continuum)
- Reducing operational costs and accelerating service delivery by dynamically provisioning computing, storage, and network resources with minimal human intervention, aligning with the automation goals of DevOps practices.
- Enabling the rapid development, testing, and deployment of applications through open application programming interfaces (APIs), streamlining the CI/CD pipeline, and fostering agility in DevOps environments.
2.2. CI/CD Practices, Tools, and Platform
2.2.1. Deployment and Integration Environment
- GitHub is used for source control and tracking, code repository, and code versioning.
- Jenkins 2.470 is used for automated building, testing, and deployment.
- Docker 27.0 and Docker Compose 2.26 are used for bundling developed services and components into containers using de facto standards.
- SonarQube 10.6 is used for performing a static analysis of code to detect bugs, code smells, and security vulnerabilities.
- Kubernetes 1.30 is used for orchestrating the deployed services.
- Pods are used for deploying the implemented applications in Kubernetes.
- Harbor 2.7 is used as a container registry for managing, storing, and distributing the produced Docker images.
- Portainer 2.20 is used for providing logging and health monitoring information for the developed and deployed applications, offering easy Docker container management through a GUI.
- Kubernetes Dashboard is used for monitoring and managing the running Kubernetes clusters and their elements.
- Keycloak 21.0 is used for handling the access and identity management of the users.
- Microsoft Teams 2024/Mail is used for receiving notifications of the whole CI/CD process.
- Ansible 2.17 is used for automating the deployment of the CI/CD stack.
- Then, a webhook between GitHub and Jenkins is enabled (Figure 3c), triggering Jenkins’s automation processes.
- In the next step, before the code is built, it undergoes a quality check using SonarQube for code examination (Figure 3d).
- If the checks are successful, a new Docker image is created and then uploaded to the Harbor registry (Figure 3e).
- After those steps, another webhook between Harbor and Jenkins triggers Jenkins’s deployment process (Figure 3f).
- Finally, the Docker image is executed and deployed as a Docker Container on the development and testing server (Figure 3g) through Jenkins.
- This action enables the GitHub-Jenkins webhook (Figure 5c) and triggers a Jenkins job.
- The Jenkins pipeline executes a series of checks through SonarQube (Figure 5d).
- Following successful validation, a Docker image is created and pushed to the Harbor registry (Figure 5e).
- Then, a webhook between Jenkins and Kubernetes is triggered, and a new version of the component is deployed into the integration namespace of the same Kubernetes cluster (Figure 5f) to facilitate the automated functional and integration testing of the application.
- If these tests pass, the updated component version is ready for deployment across the operational environment Kubernetes cluster (Figure 5g).
- Similarly to the GitHub-based approach, if the checks are successful, the service can be deployed in the operational environment (Figure 6e).
2.2.2. Automation and Configuration Management
2.2.3. Kubernetes Control Plane Components
2.2.4. Kubernetes Application Plane/Worker Nodes Components
2.2.5. Load Balancer Node
2.2.6. Kubernetes Cluster Networking
2.2.7. Deployment Environment
3. Deployment in Real-Life Environments
- IoT Sensors: These collect data and transmit them to edge-based applications (using MQTT).
- Edge Gateway: This manages the acquisition and initial processing of IoT data at the edge level [34].
- Secure Operating System: This provides a trusted execution environment integrated into the edge infrastructure (ARCA Trusted OS [35]).
- Monitoring System: This tracks resource usage in the edge infrastructure, feeding data to the resource optimization component (Prometheus/Thanos [36]).
- Resource Optimizer: This analyzes monitoring data to optimize application placement at the edge. It is an extension of the Kubernetes scheduler that implements an extended model for describing enhanced application requirements and infrastructure capabilities (Smart Allocator [36]).
- Application Performance Monitor: This tracks the health and performance of applications running on edge nodes (polygraph [37]).
- Data Processing Hub: This handles data processing from IoT devices at the edge level [38].
- Monitoring Dashboard: This provides intuitive data visualization for decision-making and situational awareness (Front-End Dashboard [39]).
3.1. First Steps for Deployment: The COGNIFOG Quickstart Guide
- Vagrant 2.4.2 is used for testing within a standalone environment, allowing developers to quickly spin up a virtualized cloud–edge system on their local machines. This environment includes all required components, such as K8s, K3s, and KubeEdge clusters, and the COGNIFOG subsystems to validate applications and workflows before moving to production.
- Terraform 1.11.2 is leveraged for deployment in a distributed environment, enabling scalable infrastructure provisioning across cloud and edge locations. It ensures smooth and efficient CI/CD processes by automating resource management and deployment across geographically dispersed infrastructures. This component helps COGNIFOG users to deploy the subsystems on their own physical target in a real environment.
- Ansible 2.17 is used in both standalone and distributed environments to automate the configuration of the deployed infrastructure, ensuring uniformity and reliability, and reducing manual intervention.
- Helm charts are a package manager for Kubernetes, allowing users to define, install, and manage applications running on clusters. They are YAML files used to specify the applications, the services, and the configurations and dependencies required by applications.
- Kubernetes manifests are YAML or JSON files used to define Kubernetes resources like pods, services, and deployments. They specify how to configure those resources and are directly applied to Kubernetes clusters using the kubectl command.
3.2. Trial 1 (Thales, Paris-Saclay)—Collaborative Missions in Urban Areas
3.3. Trial 2 (TMA, Piraeus, Greece)—E-Health Services in the Edge–Cloud Continuum
- Scale up operations across multiple clusters of physical sites;
- Manage these sites using negotiated service-level agreements (SLAs);
- Verify the overall topology and monitor connections;
- Monitor energy consumption and optimize resource usage;
- Enhance connectivity through edge computing.
3.4. Trial 3 (LMS, Patras)—Automated Edge-Cloud Continuum for Smart Manufacturing
4. Conclusions and Future Work
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Statista. Volume of Data/Information Created, Captured, Copied, and Consumed Worldwide from 2010 to 2020, with Forecasts from 2021 to 2025. 2022. Available online: https://www.statista.com/statistics/871513/worldwide-data-created (accessed on 20 November 2024).
- Morrish, J.; Arnott, M.; Hatton, M. Global IoT Forecast Report, 2022–2032. 2023. Available online: https://transformainsights.com/research/reports/global-iot-forecast-report-2032 (accessed on 20 November 2024).
- Escamilla-Ambrosio, P.; Rodriguez-Mota, A.; Aguirre-Anaya, E.; Acosta-Bermejo, R.; Salinas-Rosales, M. Distributing computing in the internet of things: Cloud, fog and edge computing overview. In Proceedings of the NEO 2016: Results of the Numerical and Evolutionary Optimization Workshop NEO 2016 and the NEO Cities 2016 Workshop, Tlalnepantla, Mexico, 20–24 September 2016; Springer: Berlin/Heidelberg, Germany, 2018; pp. 87–115. [Google Scholar]
- Adame, T.; Carrascosa-Zamacois, M.; Bellalta, B. Time-sensitive networking in IEEE 802.11 be: On the way to low-latency WiFi 7. Sensors 2021, 21, 4954. [Google Scholar] [CrossRef] [PubMed]
- Pittet, S. Continuous Integration vs. Delivery vs. Deployment. Available online: https://www.atlassian.com/continuous-delivery/principles/continuous-integration-vs-delivery-vs-deployment (accessed on 21 November 2024).
- Rehkopf, M. Continuous Delivery Principles. Available online: https://www.atlassian.com/continuous-delivery/principles (accessed on 20 November 2024).
- Bonomi, F.; Milito, R.; Zhu, J.; Addepalli, S. Fog computing and its role in the internet of things. In Proceedings of the First Edition of the MCC Workshop on Mobile Cloud Computing, Helsinki, Finland, 17 August 2012; pp. 13–16. [Google Scholar]
- Böhm, S.; Wirtz, G. Towards Orchestration of Cloud-Edge Architectures with Kubernetes. In Proceedings of the EAI Edge-IoT 2021—2nd EAI International Conference on Intelligent Edge Processing in the IoT Era 2021, Online, 24–26 November 2021; Springer: Berlin/Heidelberg, Germany, 2009; pp. 207–230. Available online: https://www.researchgate.net/publication/356641902_Towards_Orchestration_of_Cloud-Edge_Architectures_with_Kubernetes (accessed on 22 November 2024).
- Kimovski, D.; Mathá, R.; Hammer, J.; Mehran, N.; Hellwagner, H.; Prodan, R. Cloud, fog, or edge: Where to compute? IEEE Internet Comput. 2021, 25, 30–36. [Google Scholar] [CrossRef]
- The COGNIFOG Consortium. Horizon Europe Project COGNIFOG Main Website. Available online: https://cognifog.eu/ (accessed on 21 November 2024).
- Dogani, J.; Namvar, R.; Khunjush, F. Auto-scaling techniques in container-based cloud and edge/fog computing: Taxonomy and survey. Comput. Commun. 2023, 209, 120–150. [Google Scholar] [CrossRef]
- Costa, B.; Bachiega, J., Jr.; de Carvalho, L.R.; Araujo, A.P. Orchestration in fog computing: A comprehensive survey. ACM Comput. Surv. 2022, 55, 29. [Google Scholar] [CrossRef]
- SUSE. Rancher Fleet Main Website. Available online: https://fleet.rancher.io/ (accessed on 26 November 2024).
- The Cloud Native Computing Foundation. OCM Main Website. Available online: https://open-cluster-management.io/ (accessed on 26 November 2024).
- Red Hat. OpenShift Documentation. Available online: https://docs.openshift.com/ (accessed on 27 November 2024).
- Fevereiro, D.D.M. Smart Orchestration on Cloud-Native Environments. Master’s Thesis, Universidad de Coimbra, Coimbra, Portugal, 2023. [Google Scholar]
- Vaño, R.; Lacalle, I.; Sowinski, P.; S-Julián, R.; Palau, C.E. Cloud-native workload orchestration at the edge: A deployment review and future directions. Sensors 2023, 23, 2215. [Google Scholar] [CrossRef] [PubMed]
- Vengara, J.; Botero, J.; Fletscher, L. A Comprehensive Survey on Resource Allocation Strategies in Fog/Cloud Environments. Sensors 2023, 23, 4413. [Google Scholar] [CrossRef]
- Holmes, T.; McLarty, C.; Shi, Y.; Bobbie, P.; Suo, K. Energy Efficiency on Edge Computing: Challenges and Vision. In Proceedings of the 2022 IEEE International Performance, Computing, and Communications Conference (IPCCC), Austin, TX, USA, 1–13 November 2022; IEEE: Piscataway, NJ, USA, 2022; pp. 1–6. [Google Scholar]
- Gkonis, P.; Giannopoulos, A.; Trakadas, P.; Masip-Bruin, X.; D’Andria, F. A Survey on IoT-Edge-Cloud Continuum Systems: Status, Challenges, Use Cases, and Open Issues. Future Internet 2023, 15, 383. [Google Scholar] [CrossRef]
- Adame, T.; Amri, E.; Antonopoulos, G.; Azaiez, S.; Berne, A.; Camargo, J.S.; Kakoulidis, H.; Kleisarchaki, S.; Llamedo, A.; Prasinos, M.; et al. Presenting the COGNIFOG Framework: Architecture, Building Blocks and Road toward Cognitive Connectivity. Sensors 2024, 24, 5283. [Google Scholar] [CrossRef] [PubMed]
- Shahin, M.; Ali Babar, M.; Zhu, L. Continuous Integration, Delivery and Deployment: A Systematic Review on Approaches, Tools, Challenges and Practices. IEEE Access 2017, 5, 3903–3943. [Google Scholar] [CrossRef]
- K3s. K3s Documentation. Available online: https://docs.k3s.io/ (accessed on 3 April 2025).
- KubeEdge. KubeEdge Documentation. Available online: https://kubeedge.io/ (accessed on 3 April 2025).
- Böhm, S.; Wirtz, G. Profiling Lightweight Container Platforms: MicroK8s and K3s in Comparison to Kubernetes. In Proceedings of the 13th Central European Workshop on Services and Their Composition, Bamberg, Germany, 25–26 February 2021. [Google Scholar]
- Skoularikis, M.; Liatifis, A.; Pliatsios, D.; Argyriou, V.; Markakis, E.; Lagkas, T.; Papadopoulos, G.; Sargiannidis, P. Kubernetes in Edge and Cloud Computing: A Comparative Study of K3s, K0s, MicroK8s, and K8s. Available online: https://www.researchgate.net/profile/Georgios-Papadopoulos-2/publication/389465530_Kubernetes_in_Edge_and_Cloud_Computing_A_Comparative_Study_of_K3s_K0s_MicroK8s_and_K8s/links/67c316528311ce680c791c59/Kubernetes-in-Edge-and-Cloud-Computing-A-Comparative-Study-of-K3s-K0s-MicroK8s-and-K8s.pdf (accessed on 3 April 2025).
- Fernandez, J.-M.; Vidal, I.; Valera, F. Enabling the Orchestration of IoT Slices through Edge and Cloud Microservice Platforms. Sensors 2019, 19, 2980. [Google Scholar] [CrossRef] [PubMed]
- Kubernetes. Kubernetes Components. Available online: https://kubernetes.io/docs/concepts/overview/components/ (accessed on 29 November 2024).
- Kubernetes. Container Runtimes. Available online: https://kubernetes.io/docs/setup/production-environment/container-runtimes/ (accessed on 29 November 2024).
- Tigera. Calico. Available online: https://docs.tigera.io/calico/latest/about (accessed on 3 December 2024).
- COGNIFOG D2.6. COGNIFOG Website. Available online: https://cognifog.eu/wp-content/uploads/2025/01/COGNIFOG_D2.6_Validation_Benchmarking_Plan_v2.0.0.pdf (accessed on 3 April 2025).
- Kubernetes. Creating Highly Available Clusters with Kubeadm. Available online: https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/high-availability/ (accessed on 3 December 2024).
- Arzovs, A.; Judvaitis, J.; Nesenbergs, K.; Selavo, L. Distributed Learning in the IoT–Edge–Cloud Continuum. Mach. Learn. Knowl. Extr. 2024, 6, 283–315. [Google Scholar] [CrossRef]
- CYSEC. I2CAT and CYSEC Join Forces to Advance IoT Security within COGNIFOG Project. Available online: https://www.cysec.com/i2cat-and-cysec (accessed on 2 December 2024).
- CYSEC. ARCA Trusted OS. Available online: https://www.cysec.com/arca-trusted-os/ (accessed on 3 December 2024).
- COGNIFOG D3.4. COGNIFOG Website. Available online: https://cognifog.eu/wp-content/uploads/2025/01/D3.4-Data-management-tools-and-secured-cloud-to-edge-continuum-orchestration.pdf (accessed on 3 April 2025).
- Dubrulle, P.; Gaston, C.; Kosmatov, N.; Lapitre, A.; Louise, S. A Data Flow Model with Frequency Arithmetic. In Fundamental Approaches to Software Engineering; FASE 2019, Lecture Notes in Computer Science; Hähnle, R., van der Aalst, W., Eds.; Springer: Cham, Switzerland, 2009; Volume 11424. [Google Scholar]
- Kentyou. Disaster Management Using Kentyou Platform in the EU Project COGNIFOG. Available online: https://kentyou.com/2023/06/08/disaster-management-using-kentyou-platform-in-the-eu-project-cognifog/ (accessed on 4 December 2024).
- COGNIFOG D3.2. COGNIFOG Website. Available online: https://cognifog.eu/wp-content/uploads/2025/01/D3.2_Application-and-connectivity-layer-modules-final.pdf (accessed on 3 April 2025).
- Kubernetes Efficient Power Level Exporter (Kepler). Available online: https://sustainable-computing.io/ (accessed on 25 February 2025).
- Scaphandre Documentation. Available online: https://hubblo-org.github.io/scaphandre-documentation/index.html (accessed on 25 February 2025).
- Kaniewski, P.; Roanik, J.; Zubel, K.; Golan, E.; R-Moreno, M.D.; Skokowski, P. Heterogeneous Wireless Sensor Networks Enabled Situational Awareness Enhancement for Armed Forces Operating in an Urban Environment. In Proceedings of the 2023 Communication and Information Technologies (KIT), Vysoke Tatry, Slovakia, 11–13 October 2023; pp. 1–8. [Google Scholar]
- TMA. NOAH—Ark of Health. Available online: https://tma.gr/hardware-solutions/noah/ (accessed on 4 December 2024).
- Internation Federation of Robotics. European Union: Industries Invest Heavily in Robotics. Available online: https://ifr.org/ifr-press-releases/news/eu-industries-invest-heavily-in-robotics (accessed on 5 December 2024).
- Trakadas, P.; Masip-Bruin, X.; Facca, F.M.; Spantideas, S.T.; Giannopoulos, A.E.; Kapsalis, N.C.; Martins, R.; Bosani, E.; Ramon, J.; Prats, R.G.; et al. A Reference Architecture for Cloud–Edge Meta-Operating Systems Enabling Cross-Domain, Data-Intensive, ML-Assisted Applications: Architectural Overview and Key Concepts. Sensors 2022, 22, 9003. [Google Scholar] [CrossRef] [PubMed]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Petrakis, K.; Agorogiannis, E.; Antonopoulos, G.; Anagnostopoulos, T.; Grigoropoulos, N.; Veroni, E.; Berne, A.; Azaiez, S.; Benomar, Z.; Kakoulidis, H.; et al. Enhancing DevOps Practices in the IoT–Edge–Cloud Continuum: Architecture, Integration, and Software Orchestration Demonstrated in the COGNIFOG Framework. Software 2025, 4, 10. https://doi.org/10.3390/software4020010
Petrakis K, Agorogiannis E, Antonopoulos G, Anagnostopoulos T, Grigoropoulos N, Veroni E, Berne A, Azaiez S, Benomar Z, Kakoulidis H, et al. Enhancing DevOps Practices in the IoT–Edge–Cloud Continuum: Architecture, Integration, and Software Orchestration Demonstrated in the COGNIFOG Framework. Software. 2025; 4(2):10. https://doi.org/10.3390/software4020010
Chicago/Turabian StylePetrakis, Kostas, Evangelos Agorogiannis, Grigorios Antonopoulos, Themistoklis Anagnostopoulos, Nasos Grigoropoulos, Eleni Veroni, Alexandre Berne, Selma Azaiez, Zakaria Benomar, Harry Kakoulidis, and et al. 2025. "Enhancing DevOps Practices in the IoT–Edge–Cloud Continuum: Architecture, Integration, and Software Orchestration Demonstrated in the COGNIFOG Framework" Software 4, no. 2: 10. https://doi.org/10.3390/software4020010
APA StylePetrakis, K., Agorogiannis, E., Antonopoulos, G., Anagnostopoulos, T., Grigoropoulos, N., Veroni, E., Berne, A., Azaiez, S., Benomar, Z., Kakoulidis, H., Prasinos, M., Sotiriades, P., Mavrothalassitis, P., & Alexopoulos, K. (2025). Enhancing DevOps Practices in the IoT–Edge–Cloud Continuum: Architecture, Integration, and Software Orchestration Demonstrated in the COGNIFOG Framework. Software, 4(2), 10. https://doi.org/10.3390/software4020010