Try It Out
In this example we will deploy prometheus node-exporter on a Kubernetes cluster using the Minimus Prometheus Node Exporter Helm chart. It will collect hardware and OS-level metrics from every node in your cluster.
Step 1: Start Cluster
If you have a cluster to work with, skip this step. Otherwise, start a Minikube cluster. Deployment instructions
Step 2: Create Secret
First, create a namespace:
kubectl create ns prometheus-node-exporter
Next, create a Kubernetes secret for the Minimus token so Helm will be able to pull images from the Minimus registry:
kubectl create secret docker-registry minimus-registry \
--docker-server=reg.mini.dev \
--docker-username=minimus \
--docker-password={token} \
--namespace=prometheus-node-exporter
Step 3: Deploy the Helm Chart
Deploy the Minimus Helm chart:
helm install my-prometheus-node-exporter oci://helm.mini.dev/prometheus-node-exporter \
-n prometheus-node-exporter \
--wait
If you want to override the chart's defaults, go to the Values tab, save a copy locally with your changes. Deploy the chart with your overrides using -f values.yaml:
helm install my-prometheus-node-exporter oci://helm.mini.dev/prometheus-node-exporter \
-f values.yaml \
-n prometheus-node-exporter \
--wait
Step 4: Verify Prometheus Node Exporter is Running
Confirm the chart deployed successfully and prometheus node-exporter started:
kubectl get pods -n prometheus-node-exporter
You should see output similar to:
NAME READY STATUS RESTARTS AGE
my-prometheus-node-exporter-xxxxx 1/1 Running 0 2m
Step 5: Test HTTP Endpoint
Port-forward the prometheus-node-exporter service to access the metrics endpoint locally:
kubectl port-forward svc/my-prometheus-node-exporter -n prometheus-node-exporter 9100:9100
In a separate terminal, query the metrics endpoint:
curl -sf http://localhost:9100/metrics | head -20
You should see Prometheus-format metrics starting with node_:
# HELP node_cpu_seconds_total Seconds the CPUs spent in each mode.
# TYPE node_cpu_seconds_total counter
node_cpu_seconds_total{cpu="0",mode="idle"} 12345.67
Step 6: Clean Up
Uninstall the chart and delete the namespace to remove all resources:
helm uninstall my-prometheus-node-exporter -n prometheus-node-exporter
kubectl delete namespace prometheus-node-exporter