Flower

Workflow management and heat-aware scheduling for modern cloud infrastructures

More Info
expand_more

Abstract

Cloud computing has given users access to virtually infinite computing power. Cloud service providers operate data centers consisting of hundreds, sometimes thousands of interconnected machines. The machines dissipate heat that is undesirable because it may lead components to overheat. Air conditioners are used to cool the air and regulate the temperature in the data center. Nerdalize is a company that aims to create a cloud by replacing servers in a data center with CloudBoxes in people's homes. A CloudBox contains servers and a boiler. The heat dissipated by the servers is used to warm up the water in the boiler and complement the central heating system. The challenge set out by Nerdalize is to develop a workflow management system to run on their infrastructure while making optimal use of generated heat. Many workflow management systems exist but none supporting a containers based environment. Flower is a workflow management system in a containerized environment with heat-aware scheduling. Flower consists of several components. The first component is the workflow management system responsible for executing a workflow on a cluster of machines. The second part contains various temperature-based scheduling policies. To the best of our knowledge we are the first ones to introduce the notion of heat when making scheduling decisions. The final Flower component is a workflow visualizer to monitor workflow execution. To manage product development, we made use of the agile development methodology Scrum. Further assistance was provided by multiple tools, such as Travis CI for continuous integration and GitHub for team communication. During the project we have had extensive conversations with employees from Nerdalize and professionals from companies like Google, RedHat, CoreOS and Amadeus.