Files
k8s-cluster/manifest/kube-prometheus-stack/charts/prometheus-node-exporter/README.md

3.7 KiB

Prometheus Node Exporter

Prometheus exporter for hardware and OS metrics exposed by *NIX kernels, written in Go with pluggable metric collectors.

This chart bootstraps a Prometheus Node Exporter daemonset on a Kubernetes cluster using the Helm package manager.

Usage

The chart is distributed as an OCI Artifact as well as via a traditional Helm Repository.

  • OCI Artifact: oci://ghcr.io/prometheus-community/charts/prometheus-node-exporter
  • Helm Repository: https://prometheus-community.github.io/helm-charts with chart prometheus-node-exporter

The installation instructions use the OCI registry. Refer to the [helm repo](helm repo) command documentation for information on installing charts via the traditional repository.

Install Chart

helm install [RELEASE_NAME] oci://ghcr.io/prometheus-community/charts/prometheus-node-exporter

See configuration below.

See helm install for command documentation.

Uninstall Chart

helm uninstall [RELEASE_NAME]

This removes all the Kubernetes components associated with the chart and deletes the release.

See helm uninstall for command documentation.

Upgrading Chart

helm upgrade [RELEASE_NAME] oci://ghcr.io/prometheus-community/charts/prometheus-node-exporter --install

See helm upgrade for command documentation.

3.x to 4.x

Starting from version 4.0.0, the node exporter chart is using the Kubernetes recommended labels. Therefore you have to delete the daemonset before you upgrade.

kubectl delete daemonset -l app=prometheus-node-exporter
helm upgrade -i prometheus-node-exporter prometheus-community/prometheus-node-exporter

If you use your own custom ServiceMonitor or PodMonitor, please ensure to upgrade their selector fields accordingly to the new labels.

From 2.x to 3.x

Change the following:

hostRootFsMount: true

to:

hostRootFsMount:
  enabled: true
  mountPropagation: HostToContainer

Configuring

See Customizing the Chart Before Installing. To see all configurable options with detailed comments, visit the chart's values.yaml, or run these configuration commands:

helm show values oci://ghcr.io/prometheus-community/charts/prometheus-node-exporter

kube-rbac-proxy

You can enable prometheus-node-exporter endpoint protection using kube-rbac-proxy. By setting kubeRBACProxy.enabled: true, this chart will deploy a RBAC proxy container protecting the node-exporter endpoint. To authorize access, authenticate your requests (via a ServiceAccount for example) with a ClusterRole attached such as:

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: prometheus-node-exporter-read
rules:
  - apiGroups: [ "" ]
    resources: ["services/node-exporter-prometheus-node-exporter"]
    verbs:
      - get

See kube-rbac-proxy examples for more details.