Helm Chart
Helm chart installation instructions
The Helm chart option separates the infrastructure and permission provisioning process from the DBNL platform deployment process, allowing you to manage the infrastructure, permissions and Helm chart using their existing processes.
For access to the Helm chart and to get registry credentials, please reach out to our team.
Prerequisites
The following prerequisite steps are required before starting the Helm chart installation.
Infrastructure
To successfully deploy the DBNL Helm chart, you will need the following infrastructure:
A Kubernetes cluster (e.g. EKS, GKE).
An Ingress or Gateway controller (e.g. aws-load-balancer-controller, ingress-gce)
A Redis database (e.g. ElasticCache, Memorystore) to act as a messaging queue.
Configuration
To configure the DBNL Helm chart, you will need:
A hostname to host the DBNL platform (e.g. dbnl.example.com).
A set of DBNL registry credentials to pull the DBNL artifacts (e.g. Docker images, Helm chart).
An RSA key pair to sign the personal access tokens.
An RSA key pair can be generated with:
openssl genrsa -out dbnl_dev_token_key.pem 2048
Requirements
To install the DBNL Helm chart, you will need:
Permissions
For the services deployed by the Helm chart to work as expected, they will need the following permissions and network accesses:
api-srv
Network access to the database.
Network access to the Redis database.
Permission to read, write and generate pre-signed URLs on the object store bucket.
worker-srv
Network access to the database.
Network access to the Redis database.
Permission to read and write to the object store bucket.
Installation
The Helm chart can be installed directly using helm install or using your chart release management tool of choice such as ArgoCD or FluxCD.
Steps
The steps to install the Helm chart using the Helm CLI are as follows:
Create an image pull secret with the your DBNL registry credentials.
kubectl create secret docker-registry dbnl-docker-cfg \
--docker-server="us-docker.pkg.dev/dbnlai/images" \
--docker-username="${DBNL_REGISTRY_USERNAME}" \
--docker-password="${DBNL_REGISTRY_PASSWORD}"
Create a minimal
values.yaml
file.
imagePullSecrets:
- name: dbnl-docker-cfg
auth:
# For more details on OIDC options, see OIDC Authentication section.
oidc:
enabled: true
issuer: oidc.example.com
audience: xxxxxxxx
clientId: xxxxxxxx
scopes: "openid email profile"
db:
host: db.example.com
port: 5432
username: user
password: password
database: database
redis:
host: redis.example.com
port: 6379
username: user
password: password
ingress:
enabled: true
api:
host: dbnl.example.com
ui:
host: dbnl.example.com
storage:
s3:
enabled: true
region: us-east-1
bucket: example-bucket
Log into the DBNL Helm registry.
helm login \
--username ${DBNL_REGISTRY_USERNAME} \
--password ${DBNL_REGISTRY_PASSWORD} \
us-docker.pkg.dev/dbnlai/charts
Install the Helm chart.
helm upgrade \
--install \
-f values.yaml \
dbnl oci://us-docker.pkg.dev/dbnlai/charts/dbnl
Options
For more details on all the installation options, see the Helm chart README and values.yaml files. The chart can be inspected with:
helm show all oci://us-docker.pkg.dev/dbnlai/charts
Was this helpful?