Title
Synthesizing Cluster Management Code For Distributed Systems
Abstract
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.
Year
DOI
Venue
2019
10.1145/3317550.3321444
PROCEEDINGS OF THE WORKSHOP ON HOT TOPICS IN OPERATING SYSTEMS (HOTOS '19)
Keywords
DocType
Citations 
declarative cluster management, constraint programming, SQL, distributed systems
Conference
1
PageRank 
References 
Authors
0.35
0
6
Name
Order
Citations
PageRank
P. Lalith Suresh121814.95
João Loff210.35
Nina Narodytska344939.28
Leonid Ryzhyk421216.05
Mooly Sagiv53403236.93
Brian Oki610.35