Software defined storage (SDS) is a key component of the IT transformation process. Data centers can leverage SDS to decrease costs while improving agility. But IT planners need to decide if they will use an open or proprietary SDS solution. They also need to consider hardware and software flexibility along with the SDS feature set. In this article we will discuss what SDS is now, and how Open SDS is different. Then we will introduce you to Red Hat Ceph Storage and Red Hat Gluster Storage as possible choices in the Open SDS category and discuss their differences.
What is Software Defined Storage?
SDS is the abstraction of the storage software from the storage hardware. The storage software delivers features like data protection, volume management, thin provisioning, snapshots and replication. Its intent is to give a data center’s storage infrastructure more flexibility which enables the data center to be more responsive to the needs of the business. This promised flexibility is attracting the attention of IT planners. So in response, many storage vendors claim to have an SDS solution, resulting in three options for the IT planner; vendor-defined SDS, software-only SDS and Open SDS.
Vendor-defined SDS describes how a hardware manufacturer uses SDS principles to bring its solutions to market. The problem is, as the term describes, the SDS software only works with the vendor’s hardware. It does help the vendor to get new hardware to market faster, but does not increase data center flexibility.
Software-only SDS means the software stands by itself. Meaning, it can support a hardware from different vendors. The data center chooses what servers and storage media it will use as part of the solution. However, while software-only SDS increases flexibility, it still restricts the organization to a single vendor for storage software.
Open SDS has the same flexibility as software-only SDS, but it provides even greater flexibility at the software layer, which translates into much more choice for the customer. While each vendor adds unique value to the software, it is easier for an Open SDS customer to use software from a variety of companies. That means the Open SDS vendor has to continue to earn the data center’s business every day.
Introducing Ceph and Gluster
Two of the leading Open SDS choices available are Ceph and Gluster. These are independent community projects, and are available under the GNU Public License version 3 (GPLv3) for maximum openness. Red Hat is a heavy investor in both projects, allowing it to deliver enterprise grade versions of both software applications, known as Red Hat Ceph Storage and Red Hat Gluster Storage, respectively.
At first glance these two solutions appear to have same purpose and can solve similar problems. But each have capabilities they are more suited to handle. Ceph, is at its core, a highly scalable object storage solution with block and file capabilities. Gluster, meanwhile, is a scale-out file storage solution that adds extensions for object storage.
What do Ceph and Gluster Have in Common?
Ceph and Gluster are both open-source storage software, providing the data center maximum flexibility in the selection of hardware and software. Both solutions are scale-out in design and use commodity servers as nodes. The storage capacity aggregates in those nodes into a virtual pool of storage that applications and users access. The storage media placed in those nodes can vary by use case. The IT planner can use Flash SSDs for performance sensitive situations or install high capacity hard disks for long term data storage. Both solutions provide object, block and file-system (NAS) functionality.
The Use Cases for Ceph and Gluster
In short the solutions have a lot in common. Understanding which solution is best suited for the particular use case is critical for project success. Each data center will typically have a primary use case that is critical to the organization’s success. Then that data center will likely have other use cases that it needs to support but that are not as performance demanding or as mission critical.
A Typical Ceph Use Case
For example a web-scale company may have a component of its application that is a database, but the databases criticality in comparison to the object data is like night and day. This type of organization may decide that Ceph is ideal because it solves the immediate need of cost effectively storing billions, if not trillions of objects.
In the past the organization would have to purchase a separate storage system for its other use cases. Those use cases could be the database that drives the object search or it could be block storage that supports traditional applications that any business needs to have, like a financials application. The organization would buy an object storage system for its unstructured data and then a block based system for its more traditional applications. With Ceph the organization can standardize on a single storage system.
Another important use case for Ceph is providing a storage platform for private cloud infrastructure using OpenStack technology. There are a number of flavors of OpenStack in the market today but almost every vendor agrees that Ceph is the viable storage platform for VM images and application data in OpenStack.
A Typical Gluster Use Case
There are many data centers that have volumes of unstructured data to deal with but are not quite hyper scale. They require native access to more traditional file systems like CIFS and NFS, but they also need some of the attributes of modern scale-out object storage. Many of these data centers also need the performance of their unstructured data sets to be very high performance. In this situation, a solution like Gluster can be ideal.
Gluster shares many attributes with more modern object storage solutions. It scales-out by adding commodity nodes and it aggregates storage across those nodes, but it does so without the metadata overhead or a single point of failure.The result is a highly scalable file-system that can scale to billions of files but delivers top notch performance. In addition, Gluster is POSIX compatible which makes it extremely desirable for data centers that have POSIX compliance written into their SLAs or regulatory standards.
Another use case for Gluster is storing machine data from thousands or millions of logs written by software and hardware devices. Much of the “hot” data is moved to “warm” or “cold” buckets over time as its tactical value tapers. However, as this data ages it gains in strategic value but only when retained in large chunks. Rather than employ expensive NAS solutions for such data, enterprises turn to Gluster for a cost effective and seamlessly scalable solution since cold data can grow from terabytes to petabytes very quickly.
Conclusion – It’s all about the Sweet Spot
Every product, hardware or software, has its sweet spot: The use case that it is most appropriate to solve. But every data center has other use cases it must solve, and while the hardware and software “handle” those use cases, it may not be the absolute best solution. So, in theory, if the data center wants the absolute perfect solution for every use case, it is likely to end up with dozens of storage systems, leading to higher operational costs and complexity.
The reality is that most data centers have a use case where they need the “best” solution and others where they just need a “good” solution. If a single storage solution can solve its “best” need while being good enough to solve its “good” need then the data center can have the best of both worlds: solve all its needs, practically & cost effectively, with a single storage solution. Red Hat offers two enterprise grade choices to do just that.
Learn more at redhat.com/storage