Skip to content

Getting started

Prerequisites

Short version below. Prerequisites has every scope and switch.

  • A Grafana Cloud stack with Agent Observability enabled and its LLM-judge provider pointed at Bedrock, the Knowledge Graph initialized, and the simplified-routing and Grafana-managed recording rule features available.
  • Three Grafana credentials: a Cloud access policy token (access policies, stacks), a Frontend Observability token, and an Admin service account token on the stack.
  • An AWS account with Bedrock model access for the Anthropic models (including Anthropic's one-time use-case form), cross-region inference profiles allowed by your SCPs, and permission to create IAM roles, Cognito, EC2, Secrets Manager, Firehose and CloudWatch resources.
  • An EKS cluster with the Pod Identity agent (built in on Auto Mode), or use examples/eks-auto-mode to create one, plus a subnet with NAT for the agent host.
  • Tools: OpenTofu 1.8+ or Terraform 1.8+, the AWS CLI with the Session Manager plugin, helm, kubectl and just.

Quickstart

About ten minutes of typing. EKS cluster creation alone usually takes 10 to 15 minutes of waiting. The commands use tofu; terraform works the same way.

git clone https://github.com/rknightion/grafana-aio11y-demo
cd grafana-aio11y-demo

# 1. A VPC and an EKS Auto Mode cluster (skip if you bring your own cluster)
tofu -chdir=examples/eks-auto-mode init
tofu -chdir=examples/eks-auto-mode apply

# 2. The demo, against that cluster
cp examples/complete/terraform.tfvars.example examples/complete/terraform.tfvars
tofu -chdir=examples/eks-auto-mode output -raw agent_host_subnet_id   # paste into terraform.tfvars
$EDITOR examples/complete/terraform.tfvars                             # stack slug and URL, region

export TF_VAR_grafana_cloud_access_policy_token=...        # or put them in terraform.tfvars
export TF_VAR_grafana_frontend_o11y_api_access_token=...
export TF_VAR_grafana_stack_service_account_token=...

tofu -chdir=examples/complete init
tofu -chdir=examples/complete apply

# 3. Open the dashboards
tofu -chdir=examples/complete output dashboards

With an existing cluster, skip step 1. Set cluster_name and a NAT-routed agent_host_subnet_id in terraform.tfvars, make sure your AWS credentials can reach the cluster API (the example authenticates with aws eks get-token), and run step 2.

After apply, the in-cluster agents start serving load generator traffic straight away. The agent host boots, installs the pinned Claude Code release, and its login bot signs each developer in to the gateway. Developers then start a session every 20 minutes on average, so give the Claude Code and gateway dashboards about half an hour before presenting. If a developer does not sign in, run just login-developers (see Coding agents and the gateway).

To look at the site: kubectl -n touchline port-forward svc/touchline-site-api 8080:8080, then open http://localhost:8080.

Where to go next