Self-Monitoring GreptimeDB Clusters
Before reading this document, ensure you understand how to deploy a GreptimeDB enterprise cluster on Kubernetes. This guide will walk you through configuring monitoring when deploying a GreptimeDB cluster.
Quick Start
You can enable monitoring and the GreptimeDB Enterprise Management Console by adding configurations to the values.yaml
file when deploying the GreptimeDB cluster using Helm Chart.
Here's a complete example of a values.yaml
file for deploying a minimal GreptimeDB cluster with monitoring and the GreptimeDB Enterprise Management Console:
customImageRegistry:
enabled: true
# -- pull secret name, customizable, must match `image.pullSecrets`
secretName: greptimedb-custom-image-pull-secret
registry: <registry>
username: <username>
password: <password>
image:
registry: <registry>
repository: <repository>
tag: <tag>
pullSecrets:
- greptimedb-custom-image-pull-secret
initializer:
# Consult GreptimeDB Enterprise staff
registry: <registry>
repository: greptime/greptimedb-initializer
# Consult GreptimeDB Enterprise staff
tag: <tag>
monitoring:
# Enable monitoring
enabled: true
greptimedb-enterprise-dashboard:
# Enable greptimedb-enterprise-dashboard deployment.
# Requires monitoring to be enabled first (monitoring.enabled: true)
enabled: true
image:
# Consult staff for repository and tag
repository: <repository>
tag: <tag>
frontend:
replicas: 1
meta:
replicas: 1
backendStorage:
etcd:
endpoints: "etcd.etcd-cluster.svc.cluster.local:2379"
datanode:
replicas: 1
When monitoring
is enabled, GreptimeDB Operator launches an additional GreptimeDB Standalone instance to collect metrics and logs from the GreptimeDB cluster.
To collect log data, GreptimeDB Operator starts a Vector sidecar container in each Pod.
When greptimedb-enterprise-dashboard
is enabled, an enterprise dashboard is deployed that uses the GreptimeDB Standalone instance configured for cluster monitoring as its data source and provides management features for the GreptimeDB cluster.
Then install the GreptimeDB cluster with the above values.yaml
file:
helm upgrade --install mycluster \
greptime/greptimedb-cluster \
--values /path/to/values.yaml \
-n default
Then refer to the Access GreptimeDB Management Console section below for details on accessing it.
Monitoring Configuration
For detailed monitoring configuration options, please refer to the monitoring configuration documentation of the open source GreptimeDB.
GreptimeDB Management Console Configuration
Enable GreptimeDB Management Console
To enable GreptimeDB Management Console deployment, add the following configuration to values.yaml
.
Note that monitoring must be enabled first (monitoring.enabled: true
):
monitoring:
enabled: true
greptimedb-enterprise-dashboard:
enabled: true
Access GreptimeDB Management Console
You can access the GreptimeDB Management Console by port-forwarding the service to your local machine:
kubectl -n ${namespace} port-forward svc/${cluster-name}-greptimedb-enterprise-console 18080:19095
Then open http://localhost:18080
to access the GreptimeDB Enterprise Management Console.
For detailed information on using the Management Console features and interface, please refer to the Management Console documentation.
Cleanup the PVCs
Please refer to the Cleanup the PVCs section of the open source GreptimeDB documentation.