The Elastifile team has just returned from DockerCon 2017 and (in addition to some great stories about Austin nightlife) they brought back their report on the state of stateful containers. Yes, between presentations, architectural discussions, demos, and the obligatory raffle or two, our team took some time to conduct detailed interviews covering user experiences with stateful containers. While the results of these in-depth interviews are certainly biased towards actual users of container technology, we definitely thought they presented an interesting snapshot of how containers are used in practice today.
From existing customers and markets, we already had an established view of the fit between distributed file services and the requirements of stateful containers. However, the purpose of these interviews was not to preach, but rather to listen and learn how persistent containers are used in practice today.
We present below some key observations from the aggregated data.
Observation I – Containers are deployed in the cloud, on premises, and across both environments
Answers to our deployment environment questions showed that container usage clearly reflected the growing trend towards hybrid cloud IT, with responses nearly equally distributed between enterprises using containers on-premises, in the cloud, or on both.
In the cloud, all three major public clouds (AWS, Google, Azure) were noted as an environment of choice. On-premises deployments, both virtualized and non-virtualized, were also noted as preferred by some, with deployments of containers inside virtual machines indicated by the majority of on-premises users as their deployment of choice.
Observation II – Stateful applications form a considerable portion of deployed containers
On average, the interviewed professionals stated that 34% of their deployed containers serviced applications requiring persistent storage. The figure below summarizes the key applications respondents noted as deployed on stateful containers. As shown, demanding applications such as databases, both RDBMS and NoSQL, are the most prevalent applications deployed as stateful containers.
Observation III – Persistent containers have both general and unique storage requirements
Many responded indicated the unique importance of shared file storage to their persistent container environments. The graph below summarizes the percentage of respondents requiring different types of file sharing functionality for their stateful containers.
At the same time, storage for stateful containers was considered no less important than storage for VMs. As shown below, the vast majority of users require that their container environments deliver the same class of storage services required by traditional production applications.
Observation IV – Most enterprises deploying stateful containers are not satisfied with their current storage services
The combination of uniquely flexible file sharing requirements, along with the enterprise class storage services required of production environments, presents a particular challenge to enterprises searching for a data management solution for stateful containers. As shown in the figure below, high availability, performance, scale, and cost are key areas that IT managers want to improve to best serve their container deployments.
Taken together, these observations show a dynamic market that is ripe for change. Indeed, roaming the halls of DockerCon 2017, evoked a déjà vu of the excitement of the early days of virtualization. Everyone understood that a new class of storage solutions is required, and all were waiting to see the possibilities that will open with the introduction of new innovative approaches.