Overview
This guide provides a walkthrough on how to deploy a GreptimeDB cluster on Kubernetes.
Prerequisites
Before initiating the deployment of GreptimeDB on Kubernetes, ensure you have the necessary tools downloaded, the Kubernetes cluster prepared, and the namespaces created.
Tools
During the deployment process, you will need to use the following tools in addition to Kubernetes:
- kind: A tool for creating Kubernetes clusters.
- Helm: A package manager for Kubernetes.
- kubectl: A command-line tool for interacting with Kubernetes clusters.
Create a Kubernetes Cluster
You can use kind to create a Kubernetes cluster for GreptimeDB:
kind create cluster --name greptime
Create Namespaces
For better isolation and scalability. It is recommended to use separate namespaces for the GreptimeDB Operator, etcd cluster, and GreptimeDB cluster.
kubectl create namespace greptimedb-admin
kubectl create namespace etcd
kubectl create namespace greptimedb-cluster
Add Helm repository
Use the command below to add the GreptimeDB Helm chart repository.
helm repo add greptime https://greptimeteam.github.io/helm-charts/
helm repo update
You can find the maintained Helm charts in the Github repository.
Components
The deployment on Kubernetes involves the following components:
- GreptimeDB Operator: Assists engineers in managing GreptimeDB clusters effectively on Kubernetes.
- etcd Cluster: etcd is a consistent and highly available key value store used for GreptimeDB cluster metadata storage.
- GreptimeDB Cluster: The main database cluster.
Next Steps
To deploy GreptimeDB on Kubernetes, follow these steps:
- GreptimeDB Opertator: This section guides you on installing the GreptimeDB Operator.
- Deploy GreptimeDB Cluster: This section provides instructions on how to deploy etcd cluster and GreptimeDB cluster on Kubernetes.
- Destroy Cluster: This section describes how to uninstall the GreptimeDB Operator and the GreptimeDB cluster.