Defining a scheduling and orchestration strategy for distributed microservices applications is a challenging task, especially if they are deployed on geo-distributed Cloud-to-Edge environments. Kubernetes is today the de-facto standard for container orchestration on Cloud data centers. However, its static container scheduling strategy is not suitable for the placement of complex and distributed microservices-based applications on Edge environments. Current infrastructure network conditions and resource availability neither run time application state are taken into account when scheduling microservices. These are critical aspects to consider when scheduling microservices in order to reduce the impact of the heterogeneous and dynamic Cloud-to-Edge infrastructure on the application response time. In this work, we present Sophos, a framework that runs on top of the Kubernetes platform in order to implement an effective resource and network-aware microservices scheduling and orchestration strategy. Sophos extends the Kubernetes control and scheduling logic with a dynamic orchestration strategy aimed to continously adapt the placement and configuration of the application based on the run time state of the infrastructure and the application itself. An evaluation of the proposed framework is presented by comparing it with the default Kubernetes orchestration and scheduling strategy.
Orchestrating Microservices-Based Applications in the Cloud-to-Edge Continuum
Marchese Angelo;Tomarchio O.
2024-01-01
Abstract
Defining a scheduling and orchestration strategy for distributed microservices applications is a challenging task, especially if they are deployed on geo-distributed Cloud-to-Edge environments. Kubernetes is today the de-facto standard for container orchestration on Cloud data centers. However, its static container scheduling strategy is not suitable for the placement of complex and distributed microservices-based applications on Edge environments. Current infrastructure network conditions and resource availability neither run time application state are taken into account when scheduling microservices. These are critical aspects to consider when scheduling microservices in order to reduce the impact of the heterogeneous and dynamic Cloud-to-Edge infrastructure on the application response time. In this work, we present Sophos, a framework that runs on top of the Kubernetes platform in order to implement an effective resource and network-aware microservices scheduling and orchestration strategy. Sophos extends the Kubernetes control and scheduling logic with a dynamic orchestration strategy aimed to continously adapt the placement and configuration of the application based on the run time state of the infrastructure and the application itself. An evaluation of the proposed framework is presented by comparing it with the default Kubernetes orchestration and scheduling strategy.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.