Quobyte runs on any public clouds, and Kubernetes. You can install it on your Kubernetes cluster just like any other application, and can start provisioning persistent volumes with scalable, high performance storage in minutes. Its distributed file system provides shared read-write-many (RWX) persistent volumes with scalable high performance storage for any workload.
Quobyte runs on Amazon Elastic Kubernetes Services (EKS), as well as other clouds and also your own hardware. This allows you to have the same storage system anywhere, making it easy to migrate workloads, meaning you get a true multi-cloud and hybrid cloud system.
In addition, Quobyte offers you a scale-out shared file system with high performance for workloads like AI/ML, VFX, 3D rendering, image analysis or traditional HPC.
In this article, we will walk you through the installation of Quobyte and the Quobyte CSI plugin on a EKS cluster. And within just a few minutes, you will be able to provision persistent volumes to your k8s clusters with Quobyte.
Quobyte Installation on EKS Cluster
We will install Quobyte using a Helm chart, but first, you need to add the Quobyte repo to your environment.
Before moving on to the installation, we need to make a few changes to the
values.yaml file found in the
quobyte-cluster directory. You can view this file as follow:
The last few lines of the file would look like this:
Let’s generate a file called
myvalues.yaml from the
values.yaml which we will be able to edit using vi:
By default, the helm chart has the parameters set to install Quobyte on Google Kubernetes Engine (GKE), so we will need to change that. The parameters that you need to change are storageProvisioner and flashStorage. Make sure to uncomment the parameters for an EKS installation:
Also, make sure to comment out the parameters used for GKE:
Your file should look like this:
Save the changes and let’s proceed with the installation
Note that this starts the core Quobyte services in containers in your k8s cluster.
On bare metal servers, Quobyte uses the disks (HDD, NVMes) to store data, on VMs it’s block storage (like EBS). In a bare metal k8s cluster, Quobyte services can use the disks in the servers. On VM based clusters – like EKS – we need block storage and Quobyte requests it through persistent volume requests.
Later, Quobyte provides persistent volumes itself – but these are scale-out share file system volumes vs. the block storage persistent volumes provided by the cloud platform.
Let’s take a look at the persistent volume claims that were created by the services:
Copy the external IP address, paste it into a new browser window and add port 8080 to it. The Quobyte webconsole should load with a welcome message. After you click “START” you will need to agree to the Quobyte Terms and Conditions, and set up an admin account.
Please note that you will need to add your credentials base64 encoded to the
02_secret_quobyte.yaml file under
You can also configure which hosts should be trusted to run Quobyte services. Let’s retrieve the IP address:
Copy the IP address and change the last number to zero. For the subnet you can choose 16, which will take half of the network.
You can skip the SMTP configuration, and the license step. However, if you have a license, you can add it here. If you would like to get a free license visit the Quobyte website.
You now have a Quobyte cluster up and running.
The next step to access the Quobyte cluster from Kubernetes is to deploy the quobyte-client and quobyte-csi. The Quobyte client runs on all worker nodes on your k8s cluster; it automatically mounts new volumes and makes them available to the host via a bi-directional volume mapping. On the other hand, the Quobyte CSI is responsible for fulfilling all the PVCs that have a StorageClass configured to use Quobyte. For PVCs that have a size, the Quobyte CSI plugin also creates a Quobyte volume quota.
Add your credentials to the
01_secret_quobyte.yaml. Please remember that your credentials need to be base64 encoded.
Next, apply the examples declarations
Now, we can check if the PVC was successfully created
We can get more details of our PVC:
Next, we can check if the persistent volume was successfully mounted inside a container:
Lastly, we can check if the Quobyte mount is readable and writable from within the container:
Now, let’s write “Hello World!” to an html file:
And lastly, read the content of the index.html file:
As you can see, you can now provision scalable persistent storage with Quobyte to any application on your EKS cluster.