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: Difference between revisions

From OHC Network Wiki
Content deleted Content added
Create TELEICU power loss runbook (via create-page on MediaWiki MCP Server)
 
Automated edit (via update-page on MediaWiki MCP Server)
 
Line 47: Line 47:
* Consider solar + battery for high-priority sites with frequent power loss
* 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
* Graceful shutdown scripts on UPS trigger can be added via ansible or NixOS module

{{Navbox TELEICU}}


{{Related}}
{{Related}}

Latest revision as of 08:40, 6 July 2026

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