This is the official Helm charts repository for New Relic. It is indexed at Helm Hub, where you can find the list of available charts and their documentation.
- Helm CLI (install instructions)
- New Relic account
To install the New Relic Helm charts, add the official repository first:
helm repo add newrelic https://helm-charts.newrelic.com
You can list all the available charts from the newrelic
repository using helm search
:
helm search repo newrelic/
To install one of the charts, run helm install
passing the name of the chart to install and the values you want to set as arguments. You can find a list of all the values and their defaults in the documentation of each chart.
The following example installs the nri-bundle
chart, which groups multiple New Relic charts into one. nri-bundle
contains:
- New Relic's Kubernetes integration
- New Relic's Kubernetes plugin for logs
- New Relic's Prometheus OpenMetrics integration
- Metadata injection webhook
- Kube state metrics
helm install newrelic-bundle newrelic/nri-bundle \
--set global.licenseKey=YOUR_LICENSE_KEY \
--set global.cluster=YOUR_CLUSTER_NAME \
--set kubeEvents.enabled=true \
--set webhook.enabled=true \
--set prometheus.enabled=true \
--set logging.enabled=true \
--set ksm.enabled=true
helm install newrelic/nri-bundle \
--name newrelic-bundle \
--set global.licenseKey=YOUR_LICENSE_KEY \
--set global.cluster=YOUR_CLUSTER_NAME \
--set kubeEvents.enabled=true \
--set webhook.enabled=true \
--set prometheus.enabled=true \
--set logging.enabled=true \
--set ksm.enabled=true
You can use the Helm CLI to develop a chart and add it to this repository.
- Clone this repository on your local machine.
- Add or modify the files for the desired chart.
- To install the chart locally, run
helm install dev-chart charts/<YOUR_CHART>
- Verify that the chart works as expected.
- Remove the installed chart with
helm uninstall dev-chart
. - Create your pull request and follow the instructions below.
Feel free to add different values to the chart.
This repository is configured to accept webhook requests to bump chart versions. Upon receiving a version bump request, a GitHub Action generates a pull request with the requested changes. The pull request must still be merged manually.
A GitHub Personal Access Token for this repository is required. If you have the token, execute the following POST request (tailor client_payload
to your needs):
chart_name
: (required) Name of the helm chart to be bumped.
chart_version
: (optional) If specified the chart version will be set with this value. If left empty the patch version of the chart will be bumped by 1, e.g: 1.2.19 -> 1.2.20
app_version
: (required) Version of the application.
curl -H "Accept: application/vnd.github.everest-preview+json" \
-H "Authorization: token <PERSONAL_ACCESS_TOKEN>" \
--request POST \
--data '{"event_type": "bump-chart-version", "client_payload": { "chart_name": "simple-nginx", "chart_version": "1.2.3", "app_version": "1.45.7"}}' \
https://api.github.com/repos/newrelic/helm-charts/dispatches
Notice the sample client_payload
object in the request body: the request generates a pull request for the simple-nginx
chart to update app_version
to 1.45.7
and chart_version
to 1.2.3
.
See chart testing
See our Contributing docs and our review guidelines
Issues and enhancement requests can be submitted in the Issues tab of this repository. Please search for and review the existing open issues before submitting a new issue.
You need to initialize Helm with:
helm init
If your cluster uses role-based access, create a service account for tiller (Helm's service which runs inside the Kubernetes cluster) using:
kubectl --namespace kube-system create serviceaccount tiller
kubectl create clusterrolebinding tiller-cluster-rule \
--clusterrole=cluster-admin --serviceaccount=kube-system:tiller
kubectl --namespace kube-system patch deploy tiller-deploy \
-p '{"spec":{"template":{"spec":{"serviceAccount":"tiller"}}}}'
The project is released under version 2.0 of the Apache license.