Podolskiy, V., Mayo, M., Koay, A., Gerndt, M., & Patros, P. (2019). Maintaining SLOs of cloud-native applications via self-adaptive resource sharing. In Proc 13th IEEE International Conference on Self-Adaptive and Self-Organizing Systems (SASO 2019) (pp. 72–81). Washington, DC, USA: IEEE. https://doi.org/10.1109/SASO.2019.00018
Permanent Research Commons link: https://hdl.handle.net/10289/12888
With changing workloads, cloud service providers can leverage vertical container scaling (adding/removing resources) so that Service Level Objective (SLO) violations are minimized and spare resources are maximized. In this paper, we investigate a solution to the self-adaptive problem of vertical elasticity for co-located containerized applications. First, the system learns performance models that relate SLOs to workload, resource limits and service level indicators. Second, it derives limits that meet SLOs and minimize resource consumption via a combination of optimization and restricted brute-force search. Third, it vertically scales containers based on the derived limits. We evaluated our technique on a Kubernetes private cloud of 8 nodes with three deployed applications. The results registered two SLO violations out of 16 validation tests; acceptably low derivation times facilitate realistic deployment. Violations are primarily attributed to application specifics, such as garbage collection, which require further research to be circumvented.
This is an author’s accepted version of an article published in the Proceedings of 13th IEEE International Conference on Self-Adaptive and Self-Organizing Systems (SASO 2019). © 2019 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE.