MTECH PROJECTS
Leveraging Linux Containers to Achieve High Availability for Cloud Services In this work, we present a novel approach that leverages Linux containers to achieve High Availability (HA) for cloud applications. A middleware that is comprised of a set of HA agents is defined to compensate the limitations of Linux containers in achieving HA. In our approach we start modeling at the application level, considering the dependencies among application components. We generate the proper scheduling scheme and then deploy the application across containers in the cloud. For each container that hosts critical component(s), we continuously monitor its status and checkpoint its full state, and then react to its failure by restarting locally or failing over to another host where we resume the computing from the most recent state. By using this strategy, all components hosted in a container are preserved without intrusively imposing modification on the application side. Finally, the feasibility of our approach is verified by building a proof-of-concept prototype and a case study of a video streaming application.