Publication
Future Generation Computer Systems
Paper

Extensible persistence as a service for containers

View publication

Abstract

Micro-services and containers are becoming the de-facto way of building software and deploying workloads in an agile manner. Following these paradigms leads eventually to replacing the old fashioned monolithic applications by compositions of single-purpose, independent services communicating with each other through light-weight mechanisms. These services are often deployed in containers which have proven to be a suitable runtime platform for micro-services. In the container landscape, there are different container frameworks enabling elastic horizontal scaling for the workloads that are designed as so-called 12-factor applications. 1 These frameworks were built to accommodate stateless services and require that any state need to be maintained out-of-band of the platform. Support for stateful services in a scalable way is not well covered, particularly in scenarios where state is accessed from workloads in different deployment platforms. It is noteworthy that these workloads cover a wide spectrum of legacy software applications. In order to efficiently support these kinds of workloads, persistent storage such as filesystem or block storage is necessary to maintain the data and make it available for the containers. Managing different types of persistent storage across heterogeneous container orchestrators is a challenging task that people tried to resolve in a specific way for each storage backend or container orchestrator. In this paper, we present the Ubiquity framework, which provides seamless access to persistent storage across different container orchestrators (Cloud Foundry, OpenShift, Kubernetes, Docker and Mesos). Ubiquity is extensible to other container frameworks and different types of file and block storage systems, which can be managed independently of the container orchestrator. Ubiquity makes it easy to onboard stateful services in heterogeneous container environments and based on heterogeneous storage backends, extending the efficiency gains of containerization.

Date

Publication

Future Generation Computer Systems

Authors

Share