BanyanDB, as an observability database, aims to ingest, analyze, and store Metrics, Tracing, and Logging data. It's designed to handle observability data generated by observability platforms and APM systems, like Apache SkyWalking etc.
BanyanDB Helm Chart repository provides ways to install and configure BanyanDB running in a cluster natively on Kubernetes. The scripts are written in Helm 3.
This chart bootstraps an Apache Skywalking BanyanDB deployment on a Kubernetes cluster using the Helm package manager. The released versions of the helm chart can be found on Docker Hub.
image.tag
is the required value for the chart.
You can set these required values via command line (e.g. --set image.tag=0.8.0
), or edit them in a separate file(e.g. values.yaml
) and use -f <filename>
or --values=<filename>
to set it.
To install the chart with the release name my-release
:
git clone https://github.com/apache/skywalking-banyandb-helm cd ./skywalking-banyandb-helm helm install my-release \ chart \ -n <namespace> \ --set image.tag=<image-tag>
The command deploys BanyanDB on the Kubernetes cluster with the default configuration. The configuration section lists the parameters that can be configured during installation.
Tip: List all releases using
helm list
To uninstall/delete the my-release
deployment:
$ helm uninstall my-release -n <namespace>
The command removes all the banyandb components associated with the chart and deletes the release.
Chart Version | Supported BanyanDB Version |
---|---|
0.5.0 | 0.9.x |
0.4.0 | 0.8.x |
0.3.0 | 0.7.x |
0.4.0 or later | 0.8.0 or later |
The parameters
are described in parameters.md.
Specify each parameter using the --set key=value[,key=value]
argument to helm install
. For example,
Note You could refer to the helm install for more command information.
$ helm install my-release \ chart \ -n <namespace> \ --set image.tag=<image-tag> \ --set fullnameOverride=newBanyanDB
Alternatively, a YAML file that specifies the values for the above parameters can be provided while installing the chart. For example,
$ helm install my-release \ chart \ -n <namespace> \ --set image.tag=<image-tag> \ -f values.yaml
Tip: You can use the default values.yaml
If you'd like to use external certificate authorities, such as Vault, corresponding annotations can be injected into banyandb.
To establish secure communication for etcd, you can leverage cert-manager to generate the necessary TLS certificates. This tool simplifies the process of creating and managing certificates. You can install cert-manager with the following command.
kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.14.4/cert-manager.yaml
A Certificate can be created with the following configurations. In this setup, each dnsName includes a wildcard that enables resolution of all etcd pods' DNS names within the specified namespace, along with the service name of etcd and its corresponding namespace. Here, ‘svc’ represents a service, while ‘cluster.local’ serves as the domain suffix for the Kubernetes cluster.
apiVersion: cert-manager.io/v1 kind: Certificate metadata: name: etcd-client namespace: banyandb spec: secretName: etcd-client-tls duration: 17520h renewBefore: 4320h issuerRef: name: banyandb-issuer kind: Issuer usages: - server auth - client auth dnsNames: - "*.banyandb-etcd.banyandb.svc.cluster.local" - "*.banyandb-etcd-headless.banyandb.svc.cluster.local"
The backup and restore functionalities are supported in the BanyanDB Helm Chart. The detailed configuration can be found in backup.md.
The lifecycle management functionalities are supported in the BanyanDB Helm Chart. The detailed configuration can be found in lifecycle.md.
This is needed only when you want to install BanyanDB from the master branch.
You can install BanyanDB with the default configuration as follows.
export REPO=chart git clone https://github.com/apache/skywalking-banyandb-helm cd skywalking-banyandb-helm helm dependency build ${REPO} helm install banyandb ${REPO}
dev-subscribe@skywalking.apache.org
, follow the reply to subscribe the mail list.Request to join SkyWalking slack
mail to the mail list(dev@skywalking.apache.org
), we will invite you in.[CN] Request to join SkyWalking slack
mail to the mail list(dev@skywalking.apache.org
), we will invite you in.Apache 2.0