Prerequisites
Kubernetes concepts
This tutorial assumes you have a basic knowledge of containers and Kubernetes concepts such as Objects, Pods, PersistentVolumes, and so on. In addition, some of the use cases for operators are mentioned in this tutorial, but you should read the CoreOS documentation for a more in-depth explanation of what they are and why they are useful.
kubectl
Follow these instructions to install kubectl
on the host used to control and manage your cluster.
Host requirements
Cluster deployments must be on hosts that satisfy SingleStoreDB’s hardware and software requirements. Specifically, the following requirements must be met on all hosts:
Red Hat OpenShift Container Platform 4.x+
Kubernetes versions 1.19 through 1.26
Note
For supported deployment on AWS, Azure, or Google, please deploy using SingleStoreDB Cloud.
Physical or virtual machines with the following:
At least four CPU cores and eight GB of RAM per machine (8 vCPU and 32 GB of RAM is recommended for leaf nodes to align with license unit calculations)
Running Linux kernel 3.10 or later and either an
xfs
orext4
filesystemEach SingleStoreDB Pod needs to be able to communicate with other SingleStoreDB Pods in the same cluster over port 3306
The Kubernetes worker nodes/host systems must meet the specified system requirements as outlined in our System Requirements and Recommendations documentation.
Refer to Set System Requirements for more information on how to configure hosts with a Kubernetes DaemonSet.
Host recommendations
Consideration should be given to future expansion needs. We recommend ensuring that allowVolumeExpansion
is set to true
to enable future storage size increases. Refer to the Kubernetes documentation for more information.
Docker Container Repository (Optional)
If your container registry is internal and you cannot access Docker Hub, you can pre-load the following images into your local container repository.