Operations · 5 min

Keeping small services boring

Reliability is often the result of removing choices, not adding machinery.

Start with one obvious path

A service should have a single documented way to start, stop, inspect, and update it. A new operator should not need to infer which of three scripts is current.

Make state visible

Health checks should answer a concrete question. Can the process serve a request? Is the certificate valid? Can the host reach its dependency? A green process list alone is weak evidence.

Keep recovery close

Back up only the state that cannot be recreated. Test the restore command while the system is healthy. The smallest useful runbook contains the expected result beside each command.

Boring systems are not simple by accident. Their complexity has been named, bounded, and rehearsed.

← All notes