Skip to content

esteban1983cl/newrelic-helm-charts

 
 

Repository files navigation

Community Plus header

New Relic's Helm charts repository

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.

Prerequisites

Install

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.

Examples

The following example installs the nri-bundle chart, which groups multiple New Relic charts into one. nri-bundle contains:

Install nri-bundle using Helm 3

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

Install nri-bundle using Helm 2

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

Development

You can use the Helm CLI to develop a chart and add it to this repository.

  1. Clone this repository on your local machine.
  2. Add or modify the files for the desired chart.
  3. To install the chart locally, run helm install dev-chart charts/<YOUR_CHART>
  4. Verify that the chart works as expected.
  5. Remove the installed chart with helm uninstall dev-chart.
  6. Create your pull request and follow the instructions below.

Feel free to add different values to the chart.

Automated version bumps

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.

Trigger an automated version bump

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.

Testing

See chart testing

Contributing

See our Contributing docs and our review guidelines

Support

Issues / Enhancement Requests

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.

Troubleshoot

Getting "Couldn't load repositories file" (Helm 2)

You need to initialize Helm with:

helm init

Getting "namespaces 'default' is forbidden" (Helm 2)

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"}}}}'

License

The project is released under version 2.0 of the Apache license.

About

Helm charts for New Relic applications

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Mustache 86.2%
  • JavaScript 13.8%