This put up was co-authored by Maneesh Sah, Company Vice President, Azure Storage Engineering.
Container is the brand new digital machine (VM). Whether or not you’re a CTO, enterprise architect, main DevOps groups, or constructing functions, you have got already launched into the journey to containerize your functions or are raring to go—to maximise the advantages of scale, flexibility, and value. With Kubernetes on the helm, containers have quickly grow to be a hotbed of innovation and a vital space of transformation for enterprises and startups alike. After the preliminary deal with stateless containers, operating excessive scale stateful workloads on containers has now grow to be the norm. To run business-critical, enterprise-grade functions on Kubernetes within the cloud, clients want extremely scalable, cost-efficient, and performant storage—built-for and with intrinsic help for containers. In the present day, we’re excited to announce the preview of Azure Container Storage, the trade’s first platform-managed container native storage service within the public cloud, offering finish to finish storage administration and orchestration for stateful functions to run effectively at scale on Azure.
Why Azure Container Storage?
With fast adoption of Kubernetes, we see a surge of manufacturing workloads, each cloud-first in addition to app modernization, that want container-native persistent storage for databases (comparable to MySQL), massive information (comparable to ElasticSearch), messaging functions (comparable to Kafka), and steady integration and steady supply (CI/CD) programs (comparable to Jenkins). To run these stateful functions, clients want operational simplicity to deploy and scale storage tightly coupled with the containerized functions. Prospects immediately, nonetheless, want to decide on between utilizing VM centric cloud storage choices, retrofitted to containers, or deploying and self-managing open-source container storage options within the cloud—main to large operational overhead, scaling bottlenecks, and excessive price.
To supply clients with a seamless end-to-end expertise, container native storage must allow:
- Seamless quantity mobility throughout the cluster to maximise pod availability with out bottlenecks on quantity attaches and deletes.
- Fast scaling of enormous variety of volumes as utility pods scale up or scale out as wanted.
- Optimum price-performance for any quantity sizes, particularly small volumes that require larger enter/output operations per second (IOPS).
- Easy and constant quantity administration expertise throughout backing storage sorts to match workload necessities, comparable to extraordinarily low latency ephemeral disks versus persistent or scalable distant storage.
Azure Container Storage addresses these necessities by enabling clients to focus their consideration on operating workloads and functions moderately than managing storage. Azure Container Storage is our first step in the direction of offering a transformative storage expertise. As a vital addition to Azure’s suite of container providers, it would assist organizations of all sizes to streamline their containerization efforts and enhance their total storage administration capabilities.
Leveraging Azure Container Storage
Azure Container Storage is a purpose-built, software-defined storage answer that delivers a constant management aircraft throughout a number of backing storage choices to fulfill the wants of stateful container functions. This totally managed service supplies a quantity administration layer for stateful container functions enabling storage orchestration, information administration, Kubernetes-aware information safety, and rule-based efficiency scaling.
Aligning with open-source container native storage approaches, Azure Container Storage runs microservices-based storage controllers in Kubernetes, to summary the storage administration layer from pods and backing storage, enabling portability throughout Kubernetes nodes and skill to mount totally different storage choices as proven within the determine.
Azure Container Storage elements embrace:
- A Storage Pool, which is a set of storage assets grouped and introduced as a unified storage entity to your AKS cluster.
- An information providers layer, liable for replication, encryption, and different add-on performance absent within the underlying storage supplier.
- A protocol layer, which exposes provisioned volumes by way of NVMe-oF protocol to utility pods.
With this method Azure Container Storage affords a number of differentiated experiences to clients on Azure, together with:
Decreasing the entire price of possession (TCO) by offering means to scale IOPS on smaller quantity sizes, to help containerized functions which have dynamic and fluctuating enter/output (IO) necessities. That is enabled utilizing shared provisioning of capability and efficiency on a storage pool, which may be leveraged by a number of volumes. With shared provisioning, clients can now maximize efficiency throughout utility containers whereas conserving TCO down. As an alternative of allocating capability and IOPS per persistent quantity (PV), which generally results in overprovisioning, clients can now create PVs and dynamically share assets from a Storage Pool.
Fast scale-out of stateful pods, achieved utilizing distant community protocols like NVME-oF and iSCSI to mount PV, enabling easy scaling on AKS throughout Compute and Storage. That is particularly useful for container deployments that begin small and iteratively add assets. Responsiveness is essential to make sure that functions will not be starved or disrupted, both throughout initialization or scaling in manufacturing. Moreover, utility resiliency is essential with pod respawns throughout the cluster requiring fast PV motion. Leveraging distant community protocols permits us to tightly couple with the pod lifecycle to help extremely resilient excessive scale stateful functions on AKS.
Simplified constant quantity administration interface backed by native and distant storage choices enabling clients to allocate and use storage by way of the Kubernetes management aircraft. Because of this clients can leverage ephemeral disks, Azure Disks in addition to Azure Elastic SAN by way of a unified administration interface to fulfill workload wants. As an illustration, ephemeral storage could also be preferable for Cassandra to attain the bottom latency, whereas Azure Disks is appropriate for PostgreSQL or different database options. This unified expertise supplied by Azure Container Storage simplifies the administration of persistent volumes, whereas delivering a complete answer to handle the broad vary of efficiency necessities of varied containerized workloads.
Totally built-in day-2 experiences, together with information safety, cross-cluster restoration, and observability offering operational simplicity for patrons who must create buyer scripts or sew collectively disparate instruments immediately. Prospects can orchestrate Kubernetes-aware backup of the persistent volumes built-in with AKS typically obtainable to streamline the end-to-end experiences for operating stateful container workloads on Azure.
Seek advice from the technical group weblog put up for extra particulars about Azure Container Storage.
Getting began
Enroll to take part within the preview and deploy your first stateful container utility immediately.
Seek advice from the Azure Container Storage documentation to be taught extra concerning the service.
We’re assured that this new supply will considerably speed up app modernization and cloud migration. We stay up for listening to your suggestions. Please electronic mail us at azcontainerstorage@microsoft.com with any questions.