Just as the popularity of virtualization changed the way data is stored, managed and protected from bare metal deployments, the rise of containers and modern applications changed these processes again.
That is because of fundamental differences between containers and virtual machines. Containers use microservices that create reusable elements that can be invoked updated and scaled independently. With containers, multiple compute instances can run on a single host operating system. This makes for a more effective way to rapidly deploy and update applications.
But the move to containers requires changes in how storage is provisioned and managed and brings about different challenges for IT teams.
Unlike virtual machines, containers are ephemeral. Some only live for seconds and do not need to store data. All data is lost when a container shuts down. To host stateful applications such as databases deployed on containers, persistent storage must be provided. And if they are enterprise applications, they require the same enterprise storage features as applications running on VMs and bare metal.
The need to provide consistent storage for containers has created a new category of software-defined storage (SDS) called Container-Native Storage (also known as cloud-native storage and container-attached storage). While the concept behind Container Native Storage (CNS) is similar to other types of SDS and hyper-converged infrastructure (HCI), it has key technology differences.
The Evaluator Group defines CNS as software that was designed from the start to run in containers for natively persistent data. CNS vendors include Portworx (part of Pure Storage), Red Hat OpenShift with OCS, StorageOS, Robin.IO, Diamanti, MayaData and Ionir.
This categorization does not include storage software originally developed to run outside of containers, but ported to run inside them. These types of software usually include file system or object storage. We cover these applications in other Evaluator Group research. They include IBM Spectrum Scale (covered in high-end NAS), NetApp ONTAP (NAS and SAN), and MinIO and Cloudian object storage.
We also do not classify as CNS any block SDS that runs on servers in non-containers or runs in containers but operates as external storage. These SDS products include NetApp ONTAP Select, NetApp eSDS (Solid Fire), StoreOne S1 and DataCore SANsymphony. We cover these products in our software-defined storage research.
Traditional storage systems that support Container Storage Interface (CSI) and run outside of containers we classify as Container Ready Storage. These systems also provide persistent storage to containerized applications.
Download now to read the free report!