Skip to content

Operations

Day-2 guidance for running oooi-managed hosted clusters.

  • Verification


    Ready-made checks for the VLAN path and the optional pod-network and public-DNS paths.

    Verify a deployment

  • 🔧 Troubleshooting


    Symptom → cause → fix for the most common failure modes.

    Debug problems

  • Uninstall and cleanup


    Supported teardown order, garbage collection, and orphan removal.

    Tear down safely

Quick health snapshot

# Overall readiness
kubectl -n clusters get infra

# Per-component readiness
kubectl -n clusters get infra <name> \
  -o jsonpath='{.status.componentStatus}{"\n"}'

# Apps ingress state and VIP for one attachment
kubectl -n clusters get infraattachment <name> \
  -o jsonpath='{.status.appsIngressStatus.phase}{" "}{.status.appsIngressStatus.reason}{" ip="}{.status.appsIngressStatus.externalIP}{"\n"}'

# Source ranges for one KubeVirt attachment's Kubernetes aliases
kubectl -n clusters get proxyserver <infra>-proxy \
  -o jsonpath='{range .spec.backends[?(@.name=="<attachment>-kubernetes-hostname")].sourcePrefixRanges}{.}{"\n"}{end}'
kubectl -n clusters get proxyserver <infra>-proxy \
  -o jsonpath='{range .spec.backends[?(@.name=="<attachment>-kubernetes-service")].sourcePrefixRanges}{.}{"\n"}{end}'

# Child workloads
kubectl -n clusters get dhcpserver,dnsserver,proxyserver
kubectl -n clusters get pods -l app=dhcp-server
kubectl -n clusters get pods -l app=dns-server
kubectl -n clusters get pods -l app=proxy-server

The hostname backend is the port 443 SNI path; the service backend is the port 6443 source-only path used by IP-based Kubernetes Service clients.

Useful log locations

Component Where
Infra / apps-ingress controller oooi-system manager Deployment
DHCP server clusters namespace, <infra>-dhcp-* pod
CoreDNS query log clusters namespace, <infra>-dns-* pod (logs -f)
Envoy + xDS manager clusters namespace, <infra>-proxy-* pod (2 containers)