Automating Cluster Management with Weave

09/06/2019
by   Lalith Suresh, et al.
0

Modern cluster management systems like Kubernetes and Openstack grapple with hard combinatorial optimization problems: load balancing, placement, scheduling, and configuration. Currently, developers tackle these problems by designing custom application-specific algorithms—an approach that is proving unsustainable, as ad-hoc solutions both perform poorly and introduce overwhelming complexity to the system, making it challenging to add important new features. We propose a radically different architecture, where programmers drive cluster management tasks declaratively, using SQL queries over cluster state stored in a relational database. These queries capture in a natural way both constraints on the cluster configuration as well as optimization objectives. When a cluster reconfiguration is required at runtime, our tool, called Weave, synthesizes an encoding of these queries into an optimization model, which it solves using an off-the-shelf solver. We demonstrate Weave's efficacy by powering three production-grade systems with it: a Kubernetes scheduler, a virtual machine management solution, and a distributed transactional datastore. Using Weave, we expressed complex cluster management policies in under 20 lines of SQL, easily added new features to these existing systems, and significantly improved placement quality and convergence times.

READ FULL TEXT
research
08/25/2018

Database-Agnostic Workload Management

We present a system to support generalized SQL workload analysis and man...
research
03/28/2022

LOCAT: Low-Overhead Online Configuration Auto-Tuning of Spark SQL Applications

Spark SQL has been widely deployed in industry but it is challenging to ...
research
01/15/2019

Integrazione di Apache Hive con Spark

English. This document describes the solutions adopted, which arose from...
research
02/06/2018

Axiomatic Foundations and Algorithms for Deciding Semantic Equivalences of SQL Queries

Deciding the equivalence of SQL queries is a fundamental problem in data...
research
07/12/2019

Detecting coherent explorations in SQL workloads

This paper presents a proposal aiming at better understanding a workload...
research
03/25/2021

Vertex-centric Parallel Computation of SQL Queries

We present a scheme for parallel execution of SQL queries on top of any ...
research
04/13/2021

Don't Give Up on Large Optimization Problems; POP Them!

Resource allocation problems in many computer systems can be formulated ...

Please sign up or login with your details

Forgot password? Click here to reset