Obol Stack
Monitor the Kubernetes environment running the Obol Stack. Check pod status, read logs, list services, view events, and diagnose issues.
When to Use
- •Checking what pods are running and their status
- •Reading pod logs
- •Listing services and their ports
- •Viewing warning events
- •Diagnosing crashes, restarts, or scheduling issues
When NOT to Use
- •Cross-namespace operations (scoped to own namespace only)
- •Creating or modifying resources (read-only)
- •Ethereum RPC queries — use
ethereum-networks - •Validator monitoring — use
distributed-validators
Quick Start
bash
# List pods with status python3 scripts/kube.py pods # Get pod logs python3 scripts/kube.py logs <pod-name> # Recent warning events python3 scripts/kube.py events --type Warning # List services python3 scripts/kube.py services # Deployment status python3 scripts/kube.py deployments # Full details of a resource python3 scripts/kube.py describe pod <pod-name>
Available Commands
| Command | What it shows |
|---|---|
pods | All pods with status, restarts, and age |
logs <pod> [--tail N] | Pod logs (default 100 lines) |
events [--type Warning] | Namespace events, optionally filtered |
services | Services with type, IP, and ports |
deployments | Deployments with ready/desired replica counts |
configmaps | ConfigMaps with key counts |
describe <type> <name> | Full JSON detail for any resource |
Supported types for describe: pod, service, deployment, configmap, event, pvc, statefulset, job, cronjob, replicaset.
Troubleshooting
Pod won't start
- •
python3 scripts/kube.py pods— check status - •
python3 scripts/kube.py events --type Warning— look for errors - •
python3 scripts/kube.py describe pod <name>— check conditions
Pod keeps restarting
- •Check restart count with
pods - •Read logs with
logs <pod>— look at output before the crash - •If status shows
OOMKilled, the pod needs more memory
Service not reachable
- •
services— verify it exists and check ports - •
pods— verify backing pods are Running - •
describe service <name>— check endpoints
Pod Status Reference
| Status | Meaning |
|---|---|
Running | Normal operation |
Pending | Waiting to be scheduled |
CrashLoopBackOff | Crashing repeatedly — check logs |
ImagePullBackOff | Can't pull container image |
OOMKilled | Out of memory |
Constraints
- •Read-only — cannot create, modify, or delete resources
- •Own namespace only — cannot see other namespaces
- •No kubectl — uses the Kubernetes API directly via Python urllib
- •Shell is
sh, notbash— do not use bashisms - •Python stdlib only —
kube.pyuses Python 3.11 stdlib (no third-party packages)
See Also
- •
ethereum-networks— blockchain RPC queries via eRPC - •
distributed-validators— DVT cluster monitoring via Obol API