Try It Out
In this example we will deploy Prometheus Pushgateway on a Kubernetes cluster using the Minimus Prometheus Pushgateway Helm chart. Pushgateway provides an HTTP endpoint where batch and service-level metrics can be pushed and then scraped by Prometheus.
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-pushgateway
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-pushgateway
Step 3: Deploy the Helm Chart
Deploy the Minimus Helm chart:
helm install my-prometheus-pushgateway oci://helm.mini.dev/prometheus-pushgateway \
-n prometheus-pushgateway \
--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-pushgateway oci://helm.mini.dev/prometheus-pushgateway \
-f values.yaml \
-n prometheus-pushgateway \
--wait
Step 4: Verify Prometheus Pushgateway is Running
Confirm the chart deployed successfully and Pushgateway started:
kubectl get pods -n prometheus-pushgateway
You should see output similar to:
NAME READY STATUS RESTARTS AGE
my-prometheus-pushgateway-xxxxxxxxx-xxxxx 1/1 Running 0 2m
Step 5: Test HTTP Endpoint
Forward the Pushgateway service port to your local machine:
kubectl port-forward svc/my-prometheus-pushgateway 9091:9091 -n prometheus-pushgateway
In another terminal, verify the health endpoint responds:
curl -sf http://localhost:9091/-/healthy
You should see:
You can also check the metrics endpoint:
curl -sf http://localhost:9091/metrics
This should return Prometheus-formatted metrics output.
Step 6: Clean Up
Uninstall the chart and delete the namespace to remove all resources:
helm uninstall my-prometheus-pushgateway -n prometheus-pushgateway
kubectl delete namespace prometheus-pushgateway