TY - GEN
T1 - Synthesizing Cluster Management Code for Distributed Systems
AU - Suresh, Lalith
AU - Loff, João
AU - Narodytska, Nina
AU - Ryzhyk, Leonid
AU - Sagiv, Mooly
AU - Oki, Brian
N1 - Publisher Copyright:
© 2019 ACM.
PY - 2019/5/12
Y1 - 2019/5/12
N2 - Management planes for data-center systems are complicated to develop, test, maintain, and evolve. They routinely grapple with hard combinatorial optimization problems like load balancing, placement, scheduling, rolling upgrades and configuration management. To tackle these problems, developers are left with two bad choices: (i) develop ad-hoc mechanisms for systems to solve these optimization problems, or (ii) use specialized solvers that require steep engineering effort. We propose Weave, a tool that enables programmers to specify cluster management policies in a high-level declarative language, and compute policy-compliant configurations automatically and efficiently. Weave allows constraints and policies, the essence of a management plane, to be easily added, removed and modified over time, using a language familiar to developers (SQL). In this paper, we discuss our approach of management plane synthesis, its benefits, and present preliminary results from implementing a Kubernetes scheduler and a CorfuDB management plane using Weave.
AB - Management planes for data-center systems are complicated to develop, test, maintain, and evolve. They routinely grapple with hard combinatorial optimization problems like load balancing, placement, scheduling, rolling upgrades and configuration management. To tackle these problems, developers are left with two bad choices: (i) develop ad-hoc mechanisms for systems to solve these optimization problems, or (ii) use specialized solvers that require steep engineering effort. We propose Weave, a tool that enables programmers to specify cluster management policies in a high-level declarative language, and compute policy-compliant configurations automatically and efficiently. Weave allows constraints and policies, the essence of a management plane, to be easily added, removed and modified over time, using a language familiar to developers (SQL). In this paper, we discuss our approach of management plane synthesis, its benefits, and present preliminary results from implementing a Kubernetes scheduler and a CorfuDB management plane using Weave.
KW - SQL
KW - constraint programming
KW - declarative cluster management
KW - distributed systems
UR - http://www.scopus.com/inward/record.url?scp=85066916059&partnerID=8YFLogxK
U2 - 10.1145/3317550.3321444
DO - 10.1145/3317550.3321444
M3 - ???researchoutput.researchoutputtypes.contributiontobookanthology.conference???
AN - SCOPUS:85066916059
T3 - Proceedings of the Workshop on Hot Topics in Operating Systems, HotOS 2019
SP - 45
EP - 50
BT - Proceedings of the Workshop on Hot Topics in Operating Systems, HotOS 2019
PB - Association for Computing Machinery, Inc
Y2 - 13 May 2019 through 15 May 2019
ER -