Energy proportionality represents the key aspect in order to reduce the TCO (Total Cost of Ownership) in modern datacenters and on premise systems. HyPPO achieves energy proportionality allowing energy awarness and autonomic management of containerized environment based on Kubernetes.
By Marco Arnaboldi
PhD student @Politecnico di Milano
In the last decade cloud computing became the go-to choice for companies and developers to deploy, manage and maintain web services at scale. In this context, Docker containers are now becoming the de-facto standard for cloud native application due to their flexibility and their ability to introduce faster development and deployment cycles. Among the various workloads running inside cloud platforms, an interesting category is represented by On-Line Data Intensive (OLDI) workloads. This kind of workloads are typically composed of large deployments with load and performance that directly depend on the amount of requests performed by the users of such platforms. Moreover, the microservices and containers that are part of an OLDI application typically have to execute queries in parallel on a large set of data with extremely fast response times.
In this context, power consumption is a fundamental aspect that can not be neglected: on the one hand, power consumption is accounted for the 20% of the TCO of a data-center, while, on the other hand, cloud servers are energy inefficient at low and medium loads. If we consider continuous batch workloads running on dedicated Warehouse Scale Computer (WSC) systems, it has been proven that the average utilization of the system is around 75%. However, this percentage drastically decreases in the more common scenario where a mix of several types of workloads (e.g. batch plus on-line application) run in such systems. In this case the utilization varies between 10% and 50%. In order to reduce the TCO in this last case it is important to improve the energy efficiency at low and moderate paces.
We propose HyPPO, a Hybrid Performance-aware Power-capping Orchestrator that tackles performance requirements and power optimization of workloads in Kubernetes and Docker based environments. Our research work aims to tackle the new challenges introduced by the variable nature of OLDI workloads, exploiting fine grain Dynamic Voltage and Frequency Scaling (DVFS) techniques and considering power consumption as a control variable in order to achieve energy proportionality. We developed an orchestrator based on a distributed ODA control loop able to enforce a power cap while being aware of how this impacts the performance of the running workloads. In particular we aim to exploit the opportunity gap that OLDI workloads intrinsically present.
The proposed methodology is designed to be as extensible as possible. Our goal consists in improving energy proportionality of different kind of containerized workloads running in a Kubernetes cluster. This is achieved by reducing power consumption while respecting the given SLA. The first experimental results conducted in our laboratory showed that we were able to obtain a reduction of the power consumed of 25% in average, while violating the defined SLA only the 2.5% of the time. These results open a wider and interesting range of opportunities for further improvements in HyPPO methodology, in order to improve even more these results. The next step will consist in testing the HyPPO orchestrator in a real world production infrastructure in order to tuning even better the proposed methodology.