Autothrottle: A Practical Bi-Level Approach to Resource Management for SLO-Targeted Microservices

Fuente: arXiv
Salvato in:
Dettagli Bibliografici
Autori principali: Wang, Zibo, Li, Pinghe, Liang, Chieh-Jan Mike, Wu, Feng, Yan, Francis Y.
Natura: Preprint
Pubblicazione: 2022
Soggetti:
Accesso online:
Tags: Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
_version_ 1866910408223227904
author Wang, Zibo
Li, Pinghe
Liang, Chieh-Jan Mike
Wu, Feng
Yan, Francis Y.
author_facet Wang, Zibo
Li, Pinghe
Liang, Chieh-Jan Mike
Wu, Feng
Yan, Francis Y.
contents Achieving resource efficiency while preserving end-user experience is non-trivial for cloud application operators. As cloud applications progressively adopt microservices, resource managers are faced with two distinct levels of system behavior: end-to-end application latency and per-service resource usage. Translating between the two levels, however, is challenging because user requests traverse heterogeneous services that collectively (but unevenly) contribute to the end-to-end latency. We present Autothrottle, a bi-level resource management framework for microservices with latency SLOs (service-level objectives). It architecturally decouples application SLO feedback from service resource control, and bridges them through the notion of performance targets. Specifically, an application-wide learning-based controller is employed to periodically set performance targets -- expressed as CPU throttle ratios -- for per-service heuristic controllers to attain. We evaluate Autothrottle on three microservice applications, with workload traces from production scenarios. Results show superior CPU savings, up to 26.21% over the best-performing baseline and up to 93.84% over all baselines.
format Preprint
id arxiv_https___arxiv_org_abs_2212_12180
institution arXiv
publishDate 2022
record_format arxiv
spellingShingle Autothrottle: A Practical Bi-Level Approach to Resource Management for SLO-Targeted Microservices
Wang, Zibo
Li, Pinghe
Liang, Chieh-Jan Mike
Wu, Feng
Yan, Francis Y.
Distributed, Parallel, and Cluster Computing
Machine Learning
Achieving resource efficiency while preserving end-user experience is non-trivial for cloud application operators. As cloud applications progressively adopt microservices, resource managers are faced with two distinct levels of system behavior: end-to-end application latency and per-service resource usage. Translating between the two levels, however, is challenging because user requests traverse heterogeneous services that collectively (but unevenly) contribute to the end-to-end latency. We present Autothrottle, a bi-level resource management framework for microservices with latency SLOs (service-level objectives). It architecturally decouples application SLO feedback from service resource control, and bridges them through the notion of performance targets. Specifically, an application-wide learning-based controller is employed to periodically set performance targets -- expressed as CPU throttle ratios -- for per-service heuristic controllers to attain. We evaluate Autothrottle on three microservice applications, with workload traces from production scenarios. Results show superior CPU savings, up to 26.21% over the best-performing baseline and up to 93.84% over all baselines.
title Autothrottle: A Practical Bi-Level Approach to Resource Management for SLO-Targeted Microservices
topic Distributed, Parallel, and Cluster Computing
Machine Learning
url https://arxiv.org/abs/2212.12180