Kubernetes storage: It’s object or nothing for MinIO


In an age of cloud-native applications, object storage is the future, and storage area network (SAN) and network attached storage (NAS) won’t play a part. That’s the view of “Kubernetes-native” object storage maker MinIO.

Marketing director Jonathan Symonds has no doubt. “Object storage will be the standard on the internet,” he said. “SAN and NAS are not made for the cloud. Even parallel NFS (pNFS) and NFS v4 are not scalable enough.” Of course, that works for MinIO because it supplies native storage for Kubernetes deployments.

MinIO puts storage functionality into a Kubernetes container and expects customers that move to the cloud will adopt that for their applications, rather than VMs. That’s according to Symonds, who spoke to Computer Weekly’s sister publication, LeMagIT, at an IT Press Tour event during the summer.

Minio is an on-premise and private cloud object storage system that is S3-compatible and tuned for Kubernetes. It’s storage that’s built in Kubernetes and is orchestratable by it, conforming to the ethos of portability, scaling, creation and teardown that containerisation brings.

It’s made claims that it’s set to be the “undisputed leader” in an emerging and critical area of datacentre operations.

It has read/write speeds of hundreds of GBps and publishes a range of reference hardware stacks based on kit from suppliers that include Dell and Supermicro.

Three principles have guided Kubernetes storage development at MinIO. These are performance, ease of use – with a 100MB container deployable to production in minutes, and Kubernetes storage designed for such scenarios, with all the functionality that requires. MinIO is also managed by Kubernetes via RESTful application programming interface (API), without need of any other connector, unlike block and file storage that requires container storage interface (CSI) drivers.

MinIO is scalable from GB in capacity terms to PB at will and with ease, and without loss of performance. That’s an important point for machine learning and artificial intelligence scenarios in general.

MinIO has also long used erasure coding as a means of data protection – an evolution from RAID on the scale of clustered storage – and is a supporter of S3 select, which allows customers to filter the contents of S3 data stores.

Extra functionality via kubectl

To manage the object storage architecture, MinIO has added sub-commands to kubectl, the command line tool that deploys and controls Kubernetes clusters. These sub-commands correspond to tools that can be installed from the MinIO store.

Among those available, there is an SDK, which Symonds said is better than AWS’s. There is also an identity access management tool that uses an LDAP or OpenID directory, and which supports encryption keys from Vault and Gemalto. MinIO also has its own key system.

There are also de-bugging tools, graphic storage use monitoring tools, anomaly detection and others to manage configuration settings.

MinIO wants to be compatible with all Kubernetes distributions, and officially supports AWS EKS, Azure AKS, OpenShift and VMware Tanzu.

MinIO comes on an open source licence, but in 2021 that changed from an Apache 2.0 licence to AGPL v3. That meant customers which modify code or make additions to suit their needs must present changes to the wider community. That contractual consideration has a context, namely that Nutanix, which was suspected to be developing its virtualisation system using MinIO, has since changed course.



Source link