Kubernetes and SUSE Enterprise Storage 7
As a followup to my technical article on SUSE Enterprise Storage 7, I like to talk more about the integration with Kubernetes.
SUSE Enterprise Storage 7 (SES 7) has two deployment options for different use cases. Both options can provide applications running in Kubernetes storage but in different ways:
- The traditional setup, deployed with cephadm as explained in my previous article, will setup a central storage cluster where various clients can connect to – Linux, Unix, Window and also Kubernetes. So, you set a single storage cluster with SES and a Kubernetes cluster for your workload and configure SES as persistent storage for Kubernetes applications.
- The hyper-converged setup allows to co-locate applications and storage in the same Kubernetes cluster. This allows to reduce the overall footprint.
Depending on your use cases, the requirements on performance and data, you choose either of these setups.
In this article, I’ll give an overview of the hyper-converged architecture.
Using Ceph as an application deployed on top of Kubernetes together with your applications gives you not only a reduced footprint but also allows Ceph to realize the benefits from Kubernetes facilities. Kubernetes is a container orchestrator that can manage applications, scale them, and heal them in case of failures. The Rook project makes Ceph a Kubernetes application that can benefit from these Kubernetes capabilities.
Rook is a CNCF – the Cloud Native Compute Foundation (CNCF) hosts Kubernetes and related open source projects – graduated project which automates the installation, deployment and upgrade of Ceph. It takes care to launch and configure all Ceph components correctly, setup Ceph on storage devices and allows Kubernetes applications to use Ceph as storage – for block, file, and object storage.
Deployment with Rook is like many other Kubernetes installation, you install Rook using a helm chart that you can configure, and then Kubernetes will do all the necessary steps to setup Ceph. You can also connect to the Ceph dashboard and see how your applications use storage.
Once Rook is up, your containerized applications can use Ceph as persistent storage using the usual Kubernetes APIs like PersistentVolumeClaims (PVCs).
Running Ceph with Rook on Kubernetes means that you have a smaller footprint overall instead of setting up a separate Ceph cluster and a Kubernetes cluster. Kubernetes will run applications and storage together in the same infrastructure. This is not advised for very large storage installations but a great option for a Kubernetes cluster that needs a smaller storage configuration. Depending on your use-cases and requirements, you can use dedicated storage nodes in your single cluster – and have dedicated application nodes – or use all your nodes for storage and applications.
SUSE Enterprise Storage deployed by Rook is in version 7 initially available under limited availability, if you are interested in it, reach out to your SUSE sellers, they can advise you on which architecture best fits your needs and bring you into the program.