kubectl apply installs the Observer into a dedicated namespace. Everything else runs in RubixKube Cloud.
This page covers the install, what it deploys, common troubleshooting, and how to uninstall cleanly.
Prerequisites
kubectl configured
kubectl get nodes should succeed against the target cluster.Cluster admin permissions
Required to create the
rubixkube-system namespace, service account, and ClusterRole.Outbound HTTPS
api.rubixkube.ai:443 and nats.rubixkube.ai:443 reachable from the cluster.A RubixKube workspace
Sign in at console.rubixkube.ai. Create a new environment for this cluster.
Install
Copy the personal install command from the console. Your API key (prefixrk_) is already embedded.
Verify
Tail the logs
Connected to api.rubixkube.ai and topology sweep messages within the first minute.What is being monitored
The Observer collects signals for every native Kubernetes object plus the common extensions.| Signal | Detail |
|---|---|
| Pods | State, restart count, resource usage, owner references |
| Deployments, StatefulSets, DaemonSets | Replica health, rollout state, condition history |
| Services and Ingress | Endpoint health, routing, LoadBalancer status |
| Nodes | CPU, memory, disk, allocatable and capacity, pressure conditions |
| Events | Cluster event bus, filtered and streamed structurally |
| PVs and PVCs | Binding state, storage class, capacity |
| ConfigMaps and Secrets (metadata only) | Names, keys, revision. No values unless explicitly enabled |
Footprint
The Observer is deliberately light.- About 255Mi RAM combined for Observer and the Kubernetes MCP server.
- Under 10 millicores of CPU during normal operation.
- Scales modestly with cluster size. Expect another 50Mi of RAM per 100 nodes.
KIND and local development
Same install command works on KIND. Useful when you want to evaluate without touching a real cluster.Troubleshooting
Pod stuck in ImagePullBackOff
Pod stuck in ImagePullBackOff
The cluster cannot reach the Observer image registry. Check outbound egress to If this fails, your cluster is behind a proxy or egress policy. Allowlist the two endpoints or reach out for an air-gapped deployment path.
api.rubixkube.ai:443:Pod in CrashLoopBackOff
Pod in CrashLoopBackOff
Almost always an invalid API key. Check the logs:If you see
401 Unauthorized or invalid api key, reinstall with the command copied fresh from the console.Environment stuck on Connecting
Environment stuck on Connecting
Three common causes:
- Pod is not Running yet. Recheck
kubectl get pods -n rubixkube-system. - Outbound HTTPS to
nats.rubixkube.ai:443is blocked. The control channel runs over HTTPS but the streaming channel uses NATS. - Clock skew on the node. Ensure NTP is running.
Observer high memory or CPU
Observer high memory or CPU
Rare, but possible on very large clusters. Edit the deployment to raise limits, or reach out and we will help you size the Observer for your cluster shape.
AKS and Azure
AKS clusters are supported today on the Kubernetes path. Install exactly as you would on EKS or GKE. Subscription-level Azure observation (App Service, Azure VMs) is on the roadmap, see Azure.Uninstall
Related guides
Connect your environment
The full install flow covering every supported environment.
Observer Agent concept
What the Observer does, where it runs, what it sees.
First tutorial
Monitor infrastructure health once the Observer is live.