Case Study · Network Engineering

13-switch IOS-XE upgrade with auto-abort rollback

How we moved a Catalyst 9K OT fleet from 17.12.x to 17.15.x with an Ansible install-mode playbook -- zero outages, zero late-night cutovers.

Sector: Critical Infrastructure · Platform: Cisco Catalyst 9300X / 9500 · Timeline: 6 weeks

The situation

The client had 13 Catalyst 9K switches running an older IOS-XE 17.12 train that the engineering team had been wary of touching for over a year. Past upgrades had been bundle-mode TFTP affairs done at 2 a.m. with verbal rollback plans. They needed a repeatable process before scaling further.

What we built

Why install-mode at all? Bundle mode keeps the whole IOS-XE image as a single .bin file, slower to boot and harder to roll back. Install mode unpacks once, commits atomically, and supports auto-abort -- which is the safety net that turned this from a "midnight maintenance" job into a "lunchtime" one.

The gotchas we documented

Outcome

13 switches upgraded across two maintenance windows, no outages, no rollbacks invoked. The playbook now lives in the client's automation repo and has been re-used for two subsequent point-release upgrades by their own staff.


← Back to case studies

Talk to an engineer →