Storage is evolving. This evolution is based on the convergence of several strategies driving technology decisions including:
- Adoption of public cloud
- Building of private and managed clouds
- Hybrid cloud environments for enterprises
- IaaS and PaaS replacing operator managed VMware
- Web scale applications driving the need for scalable and flexible platforms
- Containers and Docker for declarative and immutable application deployment
- Adoption of orchestrators such as Kubernetes, Swarm, Mesos and CloudFoundry for managing infrastructure and building complex microservices
- DevOps, agile and CI/CD development workflows
- Consumption of infrastructure on a PAYG OPEX cost model
8 Principles for Cloud Native Storage
These strategies demand a paradigm shift in storage design and delivery. At StorageOS, we believe storage should be:
1. Application Centric
Storage should be presented to and consumed by applications and not by operating systems or hypervisors.
It is no longer desirable to present storage to OS instances, and then, later, have to map applications to OS instances to link to storage (whether on-premises or in a cloud provider, or on VMs or bare metal). Storage needs to be able to follow an application as it scales, grows, and moves between platforms and clouds.
2. Application Platform Agnostic
The storage platform should be able to run anywhere and not have proprietary dependencies that lock an application to a particular platform or a cloud provider.
Storage should be shaped just like an application – capable of being scaled out in a distributed topology just as easily as it could be scaled up based on application requirements. Upgrades and scaling of the storage platform should be implemented as a non-disruptive operation to the running applications.
3. Declarative and Composable
Storage resources should be declared and composed just like all other resources required by applications and services, allowing storage resources and services to be deployed and provisioned as part of application instantiation through orchestrators.
4. API Driven and Self-Managed
Storage resources and services should be easy to provision, consume, move and manage via an API. Storage should provide integration with application runtime and orchestrator platforms.
The platform should be able to dynamically react to changes in the environment and be able to:
- Move application data between locations
- Dynamically resize volumes for growth
- Take point in time copies of data for data retention or facilitate rapid recovery of data
- Integrate naturally into dynamic, rapidly changing application environments.
6. Natively Secure
Storage services should integrate and provide inline security features such as encryption and RBAC and not depend on secondary products to secure application data.
The storage platform should offer deterministic performance in complex distributed environments and scale efficiently using a minimum of compute resources.
8. Consistently Available
The storage platform should manage data distribution with a predictable, proven data model to ensure high availability, durability and consistency of application data. Data recovery processes during failure conditions should be application independent and not affect normal application operations.
A Paradigm Shift of Storage Design and Delivery
StorageOS’s vision is a paradigm shift of how storage should be designed and delivered. StorageOS is designed and built from the ground up with a patent pending storage solution that allows customers to deploy a storage platform with the above attributes in their environments.
All enterprise organizations need to consider application level storage on an application or project basis, and then apply it more widely as an enterprise strategy over time.
Learn more about StorageOS.
Author: Alex Chircop
Experienced CTO with a focus on infrastructure engineering, architecture and strategy definition. Expert in designing innovative solutions based on a broad and deep understanding of a wide range of technology areas. Previously Global Head of Storage Platform Engineering at Goldman Sachs and Head of Infrastructure Platform Engineering at Nomura International.