Configure the Kubernetes Monitoring EKS Add-on on an AWS EKS Cluster
Grafana Cloud

Configure AWS EKS for Kubernetes Monitoring

This guide explains how to configure AWS Elastic Kubernetes Service (EKS) for use with Grafana Cloud’s Kubernetes Monitoring. It covers prerequisites, IAM setup, cluster configuration, and integration steps.

Prerequisites

  • An AWS account with permissions to create and manage EKS clusters
  • AWS CLI installed and configured
  • kubectl and eksctl installed
  • A Grafana Cloud account

Create an EKS Cluster

Follow the AWS EKS Getting Started Guide to create your EKS cluster. Ensure your worker nodes have the necessary IAM permissions for monitoring.

Configure IAM Roles for Service Accounts (IRSA)

To securely grant Kubernetes workloads access to AWS services, use IAM Roles for Service Accounts (IRSA).

  1. Create an IAM OIDC provider for your cluster:
    sh
    eksctl utils associate-iam-oidc-provider --region <region> --cluster <cluster-name> --approve
  2. Create an IAM policy for monitoring (for example CloudWatch).
  3. Create a Kubernetes service account and associate it with the IAM role:
    sh
    eksctl create iamserviceaccount \
      --name <service-account-name> \
      --namespace <namespace> \
      --cluster <cluster-name> \
      --attach-policy-arn arn:aws:iam::<account-id>:policy/<policy-name> \
      --approve

Install Monitoring components

You can use Helm to install Grafana Alloy or the Kubernetes Monitoring Helm chart:

sh
helm repo add grafana https://grafana.github.io/helm-charts
helm repo update
helm install grafana-k8s-monitoring grafana/k8s-monitoring -n <namespace> --create-namespace

Configure the Helm chart with your Grafana Cloud credentials and any AWS-specific settings.

Validate data flow

  • Check that metrics and logs are being sent to Grafana Cloud.
  • Use the Grafana Cloud UI to verify your EKS cluster appears and is reporting data.

Troubleshoot

More information

For more information, see: