RudderStack is a customer data pipeline tool for collecting, routing and processing data from your websites, apps, cloud tools, and data warehouse.
More information on RudderStack can be found here.
$ git clone git@github.com:rudderlabs/rudderstack-helm.git
$ cd rudderstack-helm/
$ helm install my-release ./ --set rudderWorkspaceToken="<workspace token from the dashboard>"
The RudderStack Helm chart creates a Rudderstack deployment on a Kubernetes cluster using the Helm package manager.
To install the chart with the release name my-release
, from the root directory of this repo:
$ helm install my-release ./ --set rudderWorkspaceToken="<workspace token from the dashboard>"
The command deploys Rudderstack on the default Kubernetes cluster configured with kubectl
. The configuration section lists the most significant parameters that can be configured during deployment.
To update configuration or version of the images used, change the configuration and run:
$ helm upgrade my-release ./ --set rudderWorkspaceToken="<workspace token from the dashboard>"
To uninstall/delete the my-release
deployment:
$ helm uninstall my-release
This removes all the components created by this chart.
If you are using open-source config-generator UI, you need to set the parameter controlPlaneJSON
to true
in the values.yaml
file. Export workspace-config from the config-generator and copy/paste the contents into the workspaceConfig.json
file.
$ helm install my-release ./ --set backend.controlPlaneJSON=true
If you are using Google Cloud Storage or Google BigQuery for the following cases, you have to replace the contents of the file rudder-google-application-credentials.json with your service account:
The following table lists the configurable parameters of the Rudderstack chart and their default values.
Parameter | Description | Default | |
---|---|---|---|
commonLabels |
Labels to apply to all resources | {} |
|
rudderWorkspaceToken |
Workspace token from the dashboard | - |
|
rudderWorkspaceTokenExistingSecret |
Secret with workspace token (overrides rudderWorkspaceToken ) |
- |
|
backend.image.repository |
Container image repository for the backend | rudderlabs/rudder-server |
|
backend.image.version |
Container image tag for the backend. Available versions | v0.1.6 |
|
backend.image.pullPolicy |
Container image pull policy for the backend image | Always |
|
backend.ingress.annotations |
Annotations to be added to backend ingress | {} |
|
backend.ingress.labels |
Labels to be added to backend ingress | {} |
|
backend.service.annotations |
Annotations to be added to backend service | {"service.beta.kubernetes.io/aws-load-balancer-backend-protocol":"http"} |
|
backend.service.labels |
Labels to be added to backend service | {} |
|
backend.podLabels |
Labels to add to the backend pod container metadata | {} |
|
backend.podAnnotations |
Annotations to be added to backend pods | {} |
|
backend.labels |
Labels to be added to the controller StatefulSet and other resources that do not have option to specify labels | {} |
|
backend.config.overrides |
object | {} |
rudder-server config overrides See config parameters for more details |
transformer.image.repository |
Container image repository for the transformer | rudderstack/transformer |
|
transformer.image.version |
Container image tag for the transformer. Available versions | latest |
|
transformer.image.pullPolicy |
Container image pull policy for the transformer image | Always |
|
backend.extraEnvVars |
Extra environments variables to be used by the backend in the deployments | Refer values.yaml file |
|
backend.controlPlaneJSON |
If true , backend will read config from the workspaceConfig.json file |
false |
|
serviceAccount.create |
Enable service account creation. | true |
|
serviceAccount.annotations |
Annotations to be added to the service account. | {} |
|
serviceAccount.name |
The name of the service account to use. If not set and create is true, a name is generated using the fullname template. | "" |
|
transformer.commonLabels |
Labels to apply to all transformer resources | {} |
Each of these parameters can be changed in values.yaml
. Or specify each parameter using the --set key=value[,key=value]
argument to helm install
. For example:
$ helm install --name my-release \
--set backend.image.version=v0.1.6 \
./
Note: Configuration specific to:
backend.config.overrides
.pg_hba.conf
, postgresql.conf
Installing this Helm chart will deploy the following pods and containers in the configured cluster:
For any queries related to using the RudderStack Helm Chart, feel free to start a conversation on our Slack channel.