Image for post
Image for post

This is a step-by-step tutorial to install ArangoDB on-premises using ArangoDB Operator and Ceph with Rook. This is for non-production environments only.

Pre-requisites:

  • Kubernetes > v1.11

Step 1

Install a Ceph cluster using Rook.

Rook deploys and manages Ceph clusters running in Kubernetes, while also enabling management of storage resources and provisioning via Kubernetes APIs. We recommend Rook as the way to run Ceph in Kubernetes or to connect an existing Ceph storage cluster to Kubernetes. — in Ceph

Apply the proposed common configurations and install the Rook Operator:

Check the pod status:

Wait until rook-ceph-operator changes to ‘Running’ state and proceed with the installation of a non-production cluster:

You should get this:

Test the cluster by running the Rook Toolbox.

Launch the rook-ceph-tools pod:

Wait for the toolbox pod to download its container and get to the running state:

Once the rook-ceph-tools pod is running, you can connect to it with:

All available tools in the toolbox are ready for your troubleshooting needs.

Example:

  • ceph status
  • ceph osd status
  • ceph df
  • rados df

When you are done with the toolbox, you can remove the deployment:

Step 2

Create a CephBlockPool and a StorageClass.

Create a storage.yaml with following the content.

And run:

Step 3

Install ArangoDB Operator v1.0.1

Using Kubectl:

Step 4

Deploy a new ArangoDeployment. For this example we will force IPv4 and non-secure connectivity within the cluster. This configuration will create 3 agents, 3 coordinators and 3 db servers:

Save it as deployment.yaml and run:

Check the status:

Do not use this in a production environment.

Written by

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store