Enabling Software Defined Storage with OpenStack
OpenStack has started showing promises of a disruptive open source software which is accelerating cloud adoption and creating an 'open' platform for both private and public clouds. It has enabled businesses to manage and massively scale compute , storage and network resources via API's and self driven centralized portals. OpenStack plays a very important role in defining as well as realizing the benefits of Software-Defined Environments (SDE). We in IBM believe that Software-Defined Environment are one which help optimize the computing infrastructure (compute, storage and network) using virtulization and automated provisioning of resources based on workloads, SLA, resource policies, etc. wherein the infrastructure components integrate and interact by virtue of application programming interface (API's).
In this OpenStack enabled SDE environment the storage components of OpenStack namely,
- Swift (object store service ),
- Cinder (provides block level storage resource)
- Manila (provides file level storage resource, which is still upcoming OpenStack component and expected to be included in coming OpenStack releases)
play a very vital role. These components are designed to provide abstraction of underlying storage services/capabilities (storage virtulization), ability to scale and support heterogeneous storage, inherent API support, automated management, etc. which helps embrace them with core concepts of Software Defined Storage (SDS).
Now, while OpenStack Swift provides with much required object storage service, the Cinder component which provides block level storage resources is one that enables/provides the compute instances (managed by OpenStack Nova component) with persistent block level storage volumes. OpenStack Cinder component provides well defined driver interfaces for storage vendors to enable their array's to host the backend storage for OpenStack enabled cloud. These drivers integrate with the Cinder component and interact with the underlying storage to provide volumes and applicable functionalities for use by OpenStack Nova compute instances, thus providing Storage for VM. The typical set of functionalities which the cinder storage drivers should provide are:
IBM Storage products (Storwize and SVC family, XIV Storage System, GPFS and (SONAS/V7000 Unified ...coming soon) ) have been well integrated with Nova-volume and Cinder drivers with such functionalities enabling customers to take advantage of OpenStack's simplified cloud deployments and automated storage provisioning.
With this support, users and their applications can now leverage best of the class feature functionalities provided by the IBM storage portfolio in an OpenStack enabled software defined environment. For example, applications like databases and big data workloads running over compute instances on OpenStack backed with IBM storage can leverage the much required persistent and predictable performance storage along with ability to scale and additionally benefit from features like IBM Easy Tier , Real Time Compression, etc.
So as OpenStack grows as an enabler of Software Defined Environment , Software Define Storage with OpenStack is expected to define the future of cloud storage and IBM will there enabling it along with the other OpenStack players.