Software-defined storage (SDS) is an intelligent storage architecture that separates storage hardware from the software that manages it. SDS manages and unifies every storage area network (SAN) or network-attached storage (NAS) device inside a data center and provides enterprise-level functionality. Unlike NAS or SAN systems, SDS is created for an industry-standard or x86 system, meaning the software is not dependent on proprietary software or hardware. SDS can run on either the server operating system or virtual machines.
SDS is part of a larger network known as hyperconverged infrastructure, where everything is software-defined and all software is separated from all hardware. This allows users the ability to choose which hardware to purchase and how much storage is needed. The disks, enclosures, and networking components are interchangeable in the SDS model, but the software that manages the hardware does not need to be replaced. SDS should come with:
- Transparency: Knowing what resources are available at what costs while monitoring and managing storage use.
- Scalability: Scaling storage infrastructure without compromising performance.
- Standard interfaces: API management and maintenance of storage devices and services.
- Automation: Simplifying management to keep costs low
Benefits of software-defined storage
Companies use an SDS model to consolidate and manage existing storage under a single management console while enabling many features and functionalities. Other benefits include:
- Cost efficiency and infinite scalability
- Building of storage infrastructure by joining data sources
- Freedom of choosing the hardware that runs the storage services
- Automatic adjustment based on capacity needs
How software-defined storage works
SDS does not abstract what is actually stored, only the things that control storage requests. Users can manipulate how and where data is stored because SDS is a software layer between the physical storage and the data request. All disk arrays are consolidated into a single virtual pool and thin-provisioned for maximum capacity. Once the pool is created, a virtual disk is also created and presented to host servers as raw LUNs to store data. It provides access services, networking, and connectivity.