Architecture
+---------------------+
| Kubernetes Cluster |
+----------+----------+
|
v
+---------------------+
| kube-state-metrics |
+---------------------+
|
v
+---------------------+
| Node Exporter |
+---------------------+
|
v
+---------------------+
| Prometheus |
+---------------------+
|
v
+---------------------+
| Grafana Dashboard |
+---------------------+
|
v
+---------------------+
| Email Alerts |
+---------------------+
Prerequisites:
- Ubuntu Server
- Kubernetes Cluster
- kubectl configured
- Helm installed
Verify:
kubectl get nodes
helm version

Step 1: Create Monitoring Namespace
kubectl create namespace monitoring
Verify:
kubectl get ns

Step 2: Add Helm Repository
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update
Check charts:
helm search repo prometheus-community

Step 3: Install Prometheus and Grafana
Install the kube-prometheus-stack package:
helm install monitoring prometheus-community/kube-prometheus-stack \
-n monitoring
Check pods:
kubectl get pods -n monitoring

Step 4: Verify kube-state-metrics
kubectl get pods -n monitoring | grep state
Check service:
kubectl get svc -n monitoring

Step 5: Verify Node Exporter
kubectl get daemonset -n monitoring
Check pods:
kubectl get pods -n monitoring -o wide

Step 6: Access Grafana
Check service:
kubectl get svc -n monitoring
Port forward:
kubectl port-forward svc/monitoring-grafana 3000:80 -n monitoring
create Grafana password:
kubectl get secret monitoring-grafana -n monitoring -o jsonpath="{.data.admin-password}" | base64 -d
echo

Then, open Browser,
http://localhost:3000

Login:
Username: admin
Password: (above created password)

Latest posts by Mahesh Wabale (see all)
- Install and Configure Apache Tomcat Using Ansible - June 16, 2026
- Docker Container Monitoring Dashboard using Prometheus and Grafana - June 15, 2026
- Kubernetes Cluster Monitoring using Grafana & Prometheus - June 13, 2026