Pre-requisites

Access to Kubernetes cluster

First of all, you will need access to a Kubernetes cluster. The easiest way to start is minikube.

  • Virtualbox - hypervisor to run a Kubernetes cluster

  • Minikube - for Kubernetes cluster creation on local machine

  • Kubectl - to interact with Kubernetes cluster

Tools to build an Operator

Apart from kubernetes cluster, there are some tools which are needed to build and test the redis operator.

  • Git <https://git-scm.com/downloads>

  • Go <https://golang.org/dl/>

  • Docker <https://docs.docker.com/install/>

  • Operator SDK <https://github.com/operator-framework/operator-sdk/blob/v0.8.1/doc/user/install-operator-sdk.md>

  • Make <https://www.gnu.org/software/make/manual/make.html>

Build Locally

To achieve this, execute this command:-

$ make build

Build Image

Redis operator gets packaged as a container image for running on the Kubernetes cluster. These instructions will guide you to build an image.

$ make build-image

Testing

If you want to play it on Kubernetes. You can use a minikube.

# Start minikube
$ minikube start --vm-driver virtualbox

# Deploy the image on minikube
$ helm upgrade redis-cluster ot-helm/redis-setup \
    --set redisSetup.setupMode="cluster" \
    --set redisSetup.clusterSize=3 \
    --install --namespace redis-operator

Run Tests

$ make test