The two failure modes that actually cause damage
It's rarely the power loss itself that causes the expensive problem — it's an ungraceful shutdown mid-write (corrupting a filesystem or database) and the surge or dirty power on restoration (degrading hardware over repeated cycles). A hardening plan needs to address both, not just "keep the lights on."
The checklist
Power protection
- UPS sized for your actual load plus headroom — not the bare minimum, since battery capacity degrades with age and heat
- UPS battery health checked on a schedule, not assumed — a UPS that silently can't hold charge is worse than no UPS, because it gives false confidence
- Network-managed UPS (with SNMP or USB monitoring) so servers know power state, not just "is the wall socket live"
- Surge protection on the incoming line, separate from the UPS itself
Graceful shutdown automation
- Automated shutdown scripts triggered by UPS battery threshold (e.g. at 20% remaining), not manual intervention
- Shutdown order that respects service dependencies — database before application server, not simultaneously
- Tested shutdown-and-restart cycle, not just configured and assumed to work
Filesystem and database resilience
- Journaling filesystems (ext4, XFS) configured correctly — these recover far better from unclean shutdowns than older filesystem types
- Database engines configured with appropriate write-ahead logging and fsync settings — the defaults aren't always the safest choice for power-unstable environments
- RAID with battery-backed or capacitor-backed write cache, if you're running write-heavy workloads on physical storage
Network and connectivity continuity
- Router, switch, and ONT/modem on the same UPS coverage as the servers — a server that survives the outage is useless if your network gear doesn't
- Documented failover for internet connectivity if you depend on remote access or cloud services during an outage
What this looks like at different scales
For a single-server small business, this might mean one well-sized UPS, automated shutdown scripts, and a properly configured filesystem — a few hours of setup work with a meaningful resilience payoff. For a multi-server environment, it extends to coordinated shutdown ordering across dependent services, redundant power paths where budget allows, and monitoring that alerts you to UPS battery degradation before it becomes a failure during an actual outage.
The part people skip: testing it
A shutdown script that's never been tested under real conditions is a hope, not a control. We recommend a scheduled, deliberate test — pull the power (safely, on a test/non-critical window) and confirm the automation behaves as designed, including that services come back up cleanly afterward. This is the same principle as testing backup restores: untested resilience measures are unverified assumptions.
Want your infrastructure properly hardened against power instability?
We configure shutdown automation, monitoring, and filesystem resilience as part of standard server hardening engagements.
