How to Monitor Amazon EKS Using Prometheus and Grafana (Without Helm)

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • MyrinNew
    Senior Member
    • Feb 2024
    • 5168

    #1

    How to Monitor Amazon EKS Using Prometheus and Grafana (Without Helm)

    Monitoring Amazon EKS with Prometheus and Grafana (Without Helm)

    Monitoring is an important part of DevOps and DevSecOps. In this post, I’ll share a simple way to monitor an Amazon EKS cluster using Prometheus and Grafana without using Helm.


    This guide is based on my hands-on learning while working with Kubernetes.


    Why Monitoring Is Important
    • Monitoring helps us:
    • Check cluster health
    • Monitor node and pod resource usage
    • Find issues early
    • Improve system stability and security


    Tools Used
    • Amazon EKS
    • Prometheus
    • Grafana
    • kube-state-metrics
    • node-exporter
      Helm is not used in this setup.


    Simple Architecture
    • Prometheus collects metrics from the EKS cluster
    • Node Exporter collects node metrics
    • kube-state-metrics provides Kubernetes object data
    • Grafana displays metrics in dashboards





    Step 1: Create Monitoring Namespace

    kubectl create namespace monitoring


    Step 2: Deploy kube-state-metrics

    This component gives details about:
    • Pods
    • Namespaces
    • Nodes
    • Deployments
      After deployment, verify:
      kubectl get pods -n monitoring


    Step 3: Deploy Node Exporter

    Node Exporter runs on each worker node and collects:
    • CPU
    • Memory
    • Disk metrics


    Check status:

    kubectl get pods -n monitoring -o wide


    Step 4: Configure Prometheus
    • Update Prometheus to scrape:
    • Kubernetes nodes
    • Pods
    • kube-state-metrics
    • kubelet metrics

      Add labels:
    • cluster
    • node
    • namespace
    • pod


    These labels help filtering in Grafana.


    Step 5: Connect Grafana to Prometheus
    • Open Grafana
    • Add Prometheus as a data source
    • Save and test


    Step 6: Import Dashboards
    • Import Kubernetes dashboards to view:
    • Cluster metrics
    • Node usage
    • Pod usage


    You can filter by:
    • Cluster
    • Node
    • Namespace
    • Pod


    What You Can Monitor:
    • Cluster health
    • Node CPU and memory
    • Pod resource usage
    • Pod restarts


    What I Learned:
    • Monitoring is essential for Kubernetes
    • Prometheus and Grafana work well without Helm
    • Labels are very useful for filtering metrics
    • Good monitoring supports DevSecOps practices


    Conclusion:

    This is a simple and effective way to monitor Amazon EKS without Helm.

    It’s a great starting point for anyone learning Kubernetes monitoring.

    Thanks for reading!




    More...
Working...