CHAPTER 3


Why Object Storage Is the Best Choice for Cloud-Native Development

As already stated, object storage provides a set of tools to accommodate huge volumes of data in many forms and formats, and covers the gamut from unstructured to semi-structured to structured data. Because it can handle all the data types that comes its way, object storage is an excellent fit for cloud-native, Kubernetes-based containerized applications and services (and the storage that supports them).

Kubernetes is a powerful container orchestration tool and provides a robust set of features, including storage solutions. Object storage, in particular, is an efficient and cost-effective way to provide storage for cloud-native applications.

Kubernetes is a powerful container orchestration tool and provides a robust set of features.
Object storage from the cluster can reduce the need to configure and manage NAS, SAN, direct-attached storage (DAS), and other forms of persistent storage.

Object Storage Benefits

Object storage that can be deployed and managed by Kubernetes fits well with the needs of cloud-native applications. Object storage from the cluster can also reduce the need to configure and manage NAS, SAN, direct-attached storage (DAS), and other forms of persistent storage. These resource-intensive chores aren’t needed when object storage is available, and explains why it’s getting so much traction and buy-in in today’s increasingly cloud-native world.

Microservices

There are many other reasons why object storage makes the most sense for cloud-native applications and services, including microservices. Microservices are predicated on APIs, so the RESTful API object storage is based on is a great fit for incorporating and using storage within these basic building blocks for containerized applications and services.

Kubernetes

Kubernetes is all about orchestration and automation, independent of any geographic location. The means there is no anchor point keeping it weighed down and destroying application and data portability. This, too, makes the familiar HTTP/HTML-based RESTful API object storage is known for a great fit as it allows anywhere access. Portability is preserved, which is crucial for cloud-based development and operations management.

Web Scale

Cloud-native architecture can handle data at web scale, which is a key differentiator from block and file storage. The inability of those storage types to scale anywhere near as well as object storage disqualifies them for the most part. This is increasingly important as data creation across the globe explodes with the cloud, edge computing, the Internet of Things (IoT), and so on. The simple fact is that block and file storage can’t keep up, leaving object storage as the default answer.

Kubernetes is all about orchestration and automation, independent of any geographic location.

The Data Tsunami

The best current estimates show that about 2.5 quintillion bytes of data are created every day, and that about 90% of the world’s data has been created in the last two years alone.

In addition, information from Domo breaks down some of the chief types of data being created. Every day, for example, Zoom hosts 208,333 participants in video meetings; Instagram users post 347,222 stories; YouTube users upload 500 hours of video; Amazon ships 6,659 packages; and Netflix users stream 404,444 hours of video.

Most of that data will be kept in object storage, highlighting its importance now and into the future.

Where file and block storage provide cloud-ready storage, object storage functions as true cloud-native storage.

Persistence

As discussed in the previous chapter, persistent storage for stateful apps can pose development and implementation challenges. While CSI drivers offered a workaround that can accommodate block and file storage, object storage needs minimal to no adaptation layer to deliver robust, reliable, web-scale storage. In fact, object storage can achieve the same results as block and file storage. But it does so with fewer required resources (compute, networking, and storage), reduced hurdles (fewer roadblocks or constraints for sharing, synchronization, replication, snapshotting, and I/O activity), and at lower risk. Where file and block storage provide cloud-ready storage, object storage functions as true cloud-native storage.

Native Architecture

Furthermore, object storage that’s architected from the ground up to run as containerized services would be directly managed by Kubernetes. It can either be co-hosted with the app or hosted somewhere else, as needs, costs, and performance considerations dictate.

By contrast, cloud-ready block and file storage is commonly deployed independently and not managed by Kubernetes. This helps explain why object storage, managed, and run inside Kubernetes, offers so much more in terms of flexibility, automation, and integration.

DevOps Flexibility

Yet another consideration is that some DevOps teams don’t need or want compute and storage co-located together. In such a case, the perfect object storage solution is Kubernetes-based, but pre-packaged within its own Kubernetes distribution.

In fact, this method of delivery supports one-click install on bare-metal servers. The point here is that object storage provides options, and that’s always a good thing for IT staff, as they can tune the solution for their specific operating environment.

The SDS Advantage

When delivered as SDS, object storage runs on commodity, industry-standard servers, and is both hardware-independent and hardware-agnostic. This is the same blueprint that drove the design of containers and Kubernetes clusters, and still serves today as necessary pre-requisite for running Kubernetes clusters and containerized apps and services.

This independence has other benefits as well, including the avoidance of vendor lock-in and all the attendant problems of high costs, limited flexibility, and less ability to customize for infrastructure optimization.

When delivered as SDS, object storage runs on commodity, industry-standard servers, and is both hardware-independent and hardware-agnostic.
Scality specializes in object storage for cloud-native scenarios, and have solutions that will help you get the most out of your cloud investments.

The Scality Solution

By now, you’ve seen that object storage is the best solution for a great many cloud-native development environments. It’s the only technology that’s truly scalable, usable, and affordable enough to accommodate web-scale data sets.

Throughout this Gorilla Guide, you’ve learned how modern object storage supports and enables cloud-based apps. You’ve also seen how cloud-native applications are designed around microservices that can leverage the advantages of object storage.

An ideal object storage system is lightweight and easy to operate, even in the case of edge deployments. Modern applications are not limited to running in a single cloud, so their object storage systems should be multi-cloud-capable.

As you explore options for object storage, put Scality at the top of your search list. They specialize in object storage for cloud-native scenarios, and have solutions that will help you get the most out of your cloud investments.

To learn more about modern object storage for cloud-native applications, check out the portfolio of Scality ARTESCA solutions with HPE.