Abstract

The continuous expansion of Edge computing calls for efficient scheduling techniques for the employed microservices. However, typical container schedulers often fall short when used in an Edge cluster with heterogeneous devices and unstable network connections, because they do not account for any network Quality of Service (QoS) requirements. This makes it hard for applications to fulfill their Service Level Objectives (SLOs). In this paper we present Polaris Scheduler, an SLO-aware scheduler for the Edge that is developed as part of the Linux Foundation Centaurus project. Polaris Scheduler optimizes the placement of an application’s microservices to improve the fulfillment of their SLOs. To this end, it supports modeling of the Edge topology as a Cluster Topology Graph to capture the network quality characteristics and allows users to specify the dependencies among their application’s microservices, as well as the network QoS requirements (bandwidth, latency, jitter, and packet drop) for each of them in the form of a Service Graph. Polaris Scheduler relies on a plugin-based approach to allow support for multiple SLOs. We implement our scheduler with plugins for meeting network QoS SLOs as a Kubernetes scheduler and evaluate it using a realistic traffic analysis and hazard detection use case.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call