Skip to content

BanyanDB Helm Chart repository provides ways to install and configure BanyanDB running in a cluster natively on Kubernetes.

License

Notifications You must be signed in to change notification settings

apache/skywalking-banyandb-helm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

e0efae0 · Feb 14, 2025

History

30 Commits
Feb 14, 2025
Feb 14, 2025
Feb 14, 2025
Feb 14, 2025
Sep 26, 2023
Sep 22, 2023
Feb 14, 2025
Aug 11, 2023
May 13, 2024
Sep 22, 2023
Feb 14, 2025
Sep 22, 2023

Apache SkyWalking BanyanDB Helm Chart

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.

Chart Detailed Configuration

Introduction

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.

Prerequisites

  • Kubernetes 1.24.0+
  • Helm 3

Installing the Chart

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

Uninstalling the Chart

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.

Compatibility

Chart Version Supported BanyanDB Version
0.3.0 0.7.x
0.4.0 or later 0.8.0 or later

Configuration

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

Use external certificate authorities for TLS

If you'd like to use external certificate authorities, such as Vault, corresponding annotations can be injected into banyandb.

Setup certificate for etcd TLS

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"

Backup and Restore

The backup and restore functionalities are supported in the BanyanDB Helm Chart. The detailed configuration can be found in backup.md.

Install the development version of BanyanDB using the master branch

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}

Contact Us

LICENSE

Apache 2.0