Connect Kubernetes with Resolve AI
Resolve AI continuously monitors your Kubernetes clusters through the API server, building a comprehensive, up-to-date model of your infrastructure by tracking pods, services, deployments, jobs, and more across targeted namespaces with zero impact on your API servers.

What Resolve AI does with your Kubernetes data
Resolve AI reasons over your Kubernetes data alongside code changes, deployment history, and telemetry from your observability tools. When something breaks, it traces the origin across bad rollouts, resource-starved nodes, misconfigured services, and upstream or downstream failures.
Pod failure investigation
Every CrashLoopBackOff, OOMKill, or failed readiness probe carries a signal. Resolve AI traces it back to the container, config, or change at the origin.
Deployment change correlation
When a rollout precedes a spike in errors or latency, Resolve AI correlates deployment events against telemetry to confirm or rule out the cause.
Node and resource pressure awareness
Resolve AI monitors node conditions and traces which workloads are affected downstream, not just which nodes are degraded.
Automatic service dependency mapping
Resolve AI uses DNS-level visibility to map how your services interact in real time, without requiring instrumentation or manual configuration.
Workload health as investigation context
Replica counts, HPA events, pod restarts, and job failures are treated as context, so Resolve AI already knows what the cluster looked like before.
Cross-stack correlation
Resolve AI connects cluster state to logs, traces, metrics, and code changes across your stack, so investigations span the full picture.
Only the data that matters
Resolve AI reads the minimum data needed to investigate, reason, and act across your cluster.
Pod status
Deployment events
Node conditions
ConfigMaps
Jobs
Custom resources
Namespace config
Service topology
Raw cluster data is never stored or retained by Resolve AI. Sensitive values are redacted at the Satellite before transmission, and credentials never leave your infrastructure.
Kubernetes integration capabilities
Everything Resolve AI ingests from your cluster, with step-by-step docs available in the setup guide.
- Read the setup guide
Scoped read-only access
Connects to the Kubernetes API server in fully read-only mode, with get, list, and watch scoped to the resource types and namespaces you allow.
- Read the setup guide
Deployment event tracking
Reads rollout history, replica set changes, and config updates to correlate deploys with incidents.
- Read the setup guide
Pod lifecycle monitoring
Tracks container status, restart counts, OOMKill events, and readiness and liveness probe failures.
- Read the setup guide
Node condition ingestion
Ingests node-level conditions including memory pressure, disk pressure, CPU throttling, and network availability.
- Read the setup guide
Namespace-scoped deployment
Configure which namespaces Resolve AI monitors using an include list in your Satellite values file.
- Read the setup guide
Sensitive data redaction
Specify JSON paths to redact before data is transmitted. PII and sensitive values are masked at the Satellite before leaving your infrastructure.
Connect Kubernetes in minutes
The Resolve Satellite installs via Helm and connects to your cluster through a secure, encrypted channel. Your credentials stay inside your infrastructure at all times.
- 01
Generate an ingest token
In the Resolve AI UI, open Ingest Tokens, create a new token, and copy it. You'll use it in the next step.
- 02
Configure your values file
Create a resolve-values.yaml with your ingest token, cluster name, and environment. For production, store the token in a Kubernetes secret or an external secrets manager such as AWS Secrets Manager, Azure Key Vault, or HashiCorp Vault.
- 03
Install the Helm chart
Run helm install resolve-satellite oci://registry-1.docker.io/resolveaihq/satellite-chart --values resolve-values.yaml. CDK8s is also supported for teams that generate manifests programmatically.
- 04
Verify and start investigating
Check the Kubernetes Integrations page in the Resolve AI UI to confirm the Satellite is connected. From there, investigations start automatically.
Frequently asked questions
Kubernetes, commonly referred to as K8s, is the open-source standard for container orchestration. It automates the deployment, scaling, and management of containerized applications across on-premises, cloud, and hybrid environments.
The Resolve Satellite connects to the Kubernetes API server in fully read-only mode, granted a ClusterRole with get, list, and watch on the following resource types:
Core resources: ConfigMaps, Events, Namespaces, Nodes, Pods, Services Workload controllers: DaemonSets, Deployments, ReplicaSets, StatefulSets Storage: PersistentVolumes, PersistentVolumeClaims, StorageClasses Batch: Jobs, CronJobs Custom resources: ArgoRollout, Istio VirtualService, Istio Gateway
No exec, create, delete, or patch permissions are required. A sample RBAC manifest is included in the setup guide.
No. The Satellite streams data to Resolve AI through encrypted channels for active investigations. Raw cluster data is not retained, and credentials never leave your infrastructure.
Yes. A single Satellite instance can connect to multiple clusters as long as the kubeconfig is supplied within the secret value. To set this up, create a Kubernetes secret containing your kubeconfig.yaml file; the stringData field accepts plain text strings, which are automatically base64-encoded and stored in the data field. Full steps are in the setup guide.
Yes. Set a namespaceIncludeList in your Satellite values file to scope monitoring to specific namespaces, such as production, staging, or monitoring.
No. The Satellite operates in read-only mode and is designed for zero impact on your API servers. It supports both vertical and horizontal scaling for large clusters or high query volumes, with load balancing managed automatically by Resolve AI's backend.
The Satellite supports rolling upgrades with zero downtime using helm upgrade. If issues arise, rolling back to the previous version takes a single command.






