Skip to main content
Cloud & Infrastructure OpsLast reviewed 2026-09-20

SysOps

Hands-on administration of running systems: patching on a cadence, configuration that is known rather than remembered, capacity headroom, host-level backups, and restores that have been tested.

Overview

Read the full SysOps guidance
WHAT IT IS SysOps is the administration of running systems: keeping operating systems and packages patched, managing configuration so that a machine's state is known rather than remembered, watching capacity, taking host-level backups, and being able to restore. **Not this:** SysOps is not InfraOps: it administers the systems that are already running — patching, configuration, capacity and recovery — rather than defining and provisioning the estate they belong to. WHY IT EXISTS Systems drift. A server configured correctly two years ago has since been touched by several people under pressure, and the difference between its documented and actual state is where incidents come from. Patching is the other half: the overwhelming majority of exploited vulnerabilities have had a patch available, so the operational question is never "is there a fix" but "how long do we take to apply it". Neither of these is glamorous, and both are load-bearing. WHEN TO USE IT It applies wherever you run systems you are responsible for — including the single virtual machine somebody spun up for a side project and the appliance nobody logs into. Managed services reduce the surface but rarely eliminate it, which is the honest version of the /noops argument. WHO OWNS IT A systems or infrastructure team owns the fleet, the patch cadence and the configuration baseline. Application owners own the configuration specific to their service. Security owns the patch policy and the exceptions register, overlapping /secops. The unowned machine is the recurring theme of this discipline: every estate has one, and it is usually the one in the incident. WHAT GOOD LOOKS LIKE Every host is inventoried and has an owner, including the forgotten ones. Patching runs on a stated cadence with a measured lag from release to deployment, and exceptions are recorded with a reason and a date. Configuration is managed declaratively so that state is reproducible, and manual changes are detected as drift. Capacity has headroom that somebody chose. Backups exist at the right granularity and — the item that separates real practice from paperwork — restores are tested on a schedule, not assumed. HOW TO IMPLEMENT Inventory first, because you cannot patch what you have forgotten. Establish the patch cadence and measure the lag; the number is usually worse than the policy. Move configuration into a declarative tool so drift becomes visible, and resist the temptation to fix drift by hand without changing the definition. Set capacity thresholds with an owner. Then test a restore, end to end, and time it — an untested backup is a belief. The estate-level view belongs to /infraops and the host-level telemetry to /observability-engineering. HOW TO ASSESS YOURSELF Ask how many hosts you run and compare that number with the inventory. Ask how long ago the oldest unpatched critical vulnerability was published. Ask when a restore was last performed from backup rather than discussed. Take the scored self-assessment at /assess and plan the gaps with /roadmaps.

Capabilities

  • Backup and tested restore

    Backups at the right granularity and restores exercised on a schedule — an untested backup is a belief.

  • Configuration baseline

    Declarative configuration so a host's state is reproducible and manual change shows up as drift.

  • Host capacity management

    Headroom somebody chose, with thresholds and an owner, rather than capacity discovered at saturation.

  • Host inventory

    Knowing every host you run, including the forgotten one, because you cannot patch what you have forgotten.

  • Patch Management

    Dependencies and platforms stay current, with critical patches on a defined clock.

Practices

  • Dependency update cadence

    Updating dependencies on a rhythm so upgrades are routine rather than an emergency triggered by an advisory.

  • Patch window

    A predictable, communicated window in which patching happens, so it is planned rather than deferred.

  • Restore test

    Restoring from backup on a schedule and timing it, which is what separates a backup from a hope.

Metrics

  • Configuration drift rate

    Share of hosts differing from their declared baseline.

    Unit: percent. Good direction: down.

  • Patch lag

    Time from a critical patch being published to it being deployed across the fleet.

    Unit: days. Good direction: down.

  • Restore test success rate

    Share of scheduled restore tests that completed successfully within the expected time.

    Unit: percent. Good direction: up.

  • Unowned hosts

    Hosts with no recorded owner — the machines that turn up in incidents.

    Unit: hosts. Good direction: down.

Tools

  • Ansible

    Agentless configuration automation for fleets.

    Visit site ↗
  • Puppet

    Declarative configuration management that enforces a defined host state and reports drift from it.

    Visit site ↗
  • restic

    Backup tool with deduplication, encryption and a built-in integrity check, suited to scheduled restore testing.

    Visit site ↗

Architecture patterns

Reference architectures and their trade-offs live in the blueprints library.

Maturity

  1. L1 ReactiveHosts are configured by hand and rememberedrequired stage

    Actual state has drifted from documented state in ways nobody can enumerate, and some hosts have no owner.

  2. L2 RepeatableEvery host is inventoried with an ownerrequired stage

    You know what you run, which is the precondition for patching, monitoring or decommissioning any of it.

  3. L3 StandardizedPatching runs on a cadence with measured lag

    Time from patch release to deployment is a number, and exceptions carry a reason and a date.

  4. L4 MeasuredConfiguration is declarative and drift is visible

    Host state is reproducible from a definition and manual change surfaces as drift rather than as an incident.

  5. L5 OptimizedRestores are tested on a schedule

    Recovery is demonstrated and timed rather than assumed, and capacity headroom is a chosen number.

Maturity for sysops is measured, not guessed — every score traces to your answers. See how maturity is scored.

Put it to work

  • InfraOps

    InfraOps enables this area

  • ITOps

    ITOps complements this area

Sources