---
title: "Configure Amazon EKS for Kubernetes Monitoring | Grafana Cloud documentation"
description: "How to configure Kubernetes Monitoring with an Amazon EKS Cluster"
---

> For a curated documentation index, see [llms.txt](/llms.txt). For the complete documentation index, see [llms-full.txt](/llms-full.txt).

# Configure Amazon EKS for Kubernetes Monitoring

This guide explains how to configure Amazon Elastic Kubernetes Service (Amazon EKS) for use with Grafana Cloud 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 [Getting started with Amazon EKS](https://docs.aws.amazon.com/eks/latest/userguide/getting-started.html) 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)](https://docs.aws.amazon.com/eks/latest/userguide/iam-roles-for-service-accounts.html).

1. Create an IAM OIDC provider for your Cluster:
   
   sh ![Copy code to clipboard](/media/images/icons/icon-copy-small-2.svg) Copy
   
   ```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 ![Copy code to clipboard](/media/images/icons/icon-copy-small-2.svg) Copy
   
   ```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

Use Helm to install the Kubernetes Monitoring Helm chart:

sh ![Copy code to clipboard](/media/images/icons/icon-copy-small-2.svg) Copy

```sh
helm repo add grafana https://grafana.github.io/helm-charts
helm repo update
helm upgrade --install grafana-k8s-monitoring grafana/k8s-monitoring \
  --namespace <namespace> --create-namespace \
  --values values.yaml
```

Your `values.yaml` file holds your Cluster name, your Grafana Cloud credentials, any AWS-specific settings, and the telemetry you want to collect. Cluster metrics, Pod logs, and Cluster events are separate features that you enable individually, so the chart collects only the features you turn on.

For the available features and their YAML keys, refer to [Customize the Kubernetes Monitoring Helm chart](/docs/grafana-cloud/monitor-infrastructure/kubernetes-monitoring/configuration/helm-chart-config/helm-chart/customize-helm-chart/). For a full walkthrough of the values file, refer to [Configuration steps for Kubernetes Monitoring with Helm chart](/docs/grafana-cloud/monitor-infrastructure/kubernetes-monitoring/configuration/helm-chart-config/hc-config-steps/).

## Validate data flow

- Check that the telemetry you enabled, such as Cluster metrics, Pod logs, and Cluster events, is arriving in Grafana Cloud.
- Use the Grafana Cloud UI to verify your EKS Cluster appears and is reporting data.

## Troubleshoot

- Ensure IAM roles and policies are correctly configured.
- Check Pod logs for errors related to permissions or connectivity.
- Refer to [Grafana Cloud Kubernetes Monitoring documentation](/docs/grafana-cloud/monitor-infrastructure/kubernetes-monitoring/) for more details.

## More information

For more information, see:

- [Amazon EKS documentation](https://docs.aws.amazon.com/eks/)
- [Grafana Cloud Kubernetes Monitoring](/docs/grafana-cloud/monitor-infrastructure/kubernetes-monitoring/)
