Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

TELEICU/Power loss runbook

From OHC Network Wiki
Revision as of 08:40, 6 July 2026 by Admin (talk | contribs) (Automated edit (via update-page on MediaWiki MCP Server))
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
runbookteleicuCARE 3.0+

Procedure for handling a site power loss event.

Detection

Node heartbeat stops. On-device agent (if still running on UPS) reports power loss classification. If UPS is also depleted, the node goes completely silent.

Immediate actions (first 10 min)

  1. Confirm classification — check VictoriaMetrics for last recorded power metrics
  2. Notify hub admin assigned to the site per Incident management
  3. If UPS runtime data is available (from site inventory), estimate remaining uptime

During outage

  • Node is offline. K3s control plane marks it as unreachable. etcd tolerates the absence.
  • Workloads on that node will be rescheduled only if they have inter-pod anti-affinity and replicas elsewhere. By design, spoke workloads are typically singletons.

Recovery

When power is restored:

  1. Node boots automatically (BIOS set to "power on after AC loss")
  2. K3s agent re-registers with the control plane
  3. Tailscale tunnel re-establishes
  4. Cloudflare tunnel service starts
  5. Middleware containers come up in order
  6. Monitoring agent reconnects and catches up on buffered metrics
  7. On-device agent reports "recovered from power loss"

Post-recovery verification

- [ ] K3s node status: kubectl get nodes shows Ready - [ ] Middleware health endpoint returns 200 - [ ] Metrics flowing to VictoriaMetrics - [ ] Hub admin acknowledges site is operational

Prevention

  • Site inventory should capture UPS capacity for each node (see site template)
  • Consider solar + battery for high-priority sites with frequent power loss
  • Graceful shutdown scripts on UPS trigger can be added via ansible or NixOS module