Cluster Prerequisites
Some KeelPilot observability features rely on open-source components running in your EKS cluster. KeelPilot detects what's missing and installs most of it for you with one click.
Automatic detection & one-click install
When you open a page that needs a component that isn't installed (for example, the Metric Explorer needs Prometheus), KeelPilot shows a blocking banner with:
- The name and description of each missing component.
- An Install button that runs the Helm install with preconfigured values.
- Automatic re-detection every 30 seconds — the banner disappears once the install completes.
Auto-install support by component
| Component | Auto-installable | Notes |
|---|---|---|
| Prometheus (kube-prometheus-stack) | Yes | Values optimized for EKS |
| Loki (loki-stack) | Yes | Includes Promtail |
| Grafana Tempo | Yes | metrics-generator enabled |
| Jaeger | Yes | All-in-one, in-memory |
| Kubecost | Yes | No StorageClass required |
| Metrics Server | Yes | EKS compatible |
| OpenTelemetry Collector | Yes | OTLP gRPC + HTTP |
| AWS X-Ray / ADOT | Manual | Requires IAM roles (IRSA), trust policies, and the ADOT addon |
Auto-install uses the same Helm presets as the Helm & Add-ons section. For custom setups (persistence, StorageClass, custom resources), use Helm & Add-ons directly or apply your own
values.yaml.What each component powers
| Component | Required for |
|---|---|
| Prometheus | Metric Explorer, Live Tail, SLOs, AIOps, Metrics Dashboard |
| Loki | Logs, Live Tail |
| Tempo / Jaeger / X-Ray | Distributed traces and service maps |
| Kubecost | Kubernetes cost by namespace, deployment, and pod |
| Metrics Server | Pod/node resource metrics |
Manual install (example: Prometheus)
If you prefer to install manually, every component is a standard Helm chart. For example, kube-prometheus-stack:
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update
helm install prometheus prometheus-community/kube-prometheus-stack \
--namespace monitoring \
--create-namespace \
--set grafana.sidecar.datasources.defaultDatasourceEnabled=false \
--set grafana.persistence.enabled=falseThe full guide — with RBAC, values, X-Ray IRSA setup, and per-backend tracing variables — is included in the in-app documentation.