liveBook · Manning

Blast radius

As explained in Infrastructure as Code, Patterns and Practices: With examples in Python and Terraform

The blast radius is the extent of system impact caused by a failed change, measured by the number or criticality of affected components.

Blast radius measures the impact of a failed change: the number of affected components and the criticality of what they support. Unknown dependencies make even a single manual command risky. section 1.2.1

Infrastructure as code reduces blast radius by recording configuration, testing intended behavior, exposing dependencies, and making changes reproducible. Modular designs go further by isolating resources so teams can deploy, test, and debug smaller units. section 1.2.1 section 3.6

Reduce the blast radius of infrastructure changes by:

  • Writing modules with as few resources as practical, aligned with business domains, environments, teams, or functions. section 3.6
  • Testing changes in virtual or representative environments before promoting them to production. section 1.2.1
  • Applying incremental fixes, rolling upgrades, or blue-green deployment when changes or tool upgrades could fail. section 11.4 section 13.2.2
  • Checking drift, unexpected dependencies, and environment differences before reproducing a failed change. section 11.4

A miscopied network command

A network engineer pasted shutdown instead of no shutdown onto a switch interface. The interface appeared to be a local change, but it disconnected a critical application and affected customer requests. Source-controlled configuration, a virtual switch, and an interface-health test would have exposed the error before production. section 1.2.1

Figure 13.8 You can use a rolling update pattern to minimize the blast radius of a failed tool upgrade and roll forward if the change fails.

A rolling-update diagram makes progressive rollout and failure containment concrete for tool upgrades. section 13.2.2

How Infrastructure as Code, Patterns and Practices: With examples in Python and Terraform covers it

How deep it goes
Defines impact and develops practical containment patterns, but defers detailed testing and reverting procedures to other treatments.
Examples
Uses a miscopied switch command, small infrastructure modules, incremental fixes, rolling upgrades, and blue-green network deployment.
What it assumes
Assumes familiarity with infrastructure resources and IaC workflows while teaching impact assessment through operational incidents and configuration practices.
What you can do after
Diagnose and reduce change impact by isolating resources, testing dependencies, staging rollouts, and reconciling drift before retrying.
How it connects
Connects blast radius with infrastructure as code, modularity, change management, technical debt, drift, rolling upgrades, and blue-green deployment.

Also explained in

Compare how 4 books explain blast radius →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Infrastructure as Code, Patterns and Practices: With examples in Python and Terraform. The section links point to the parts of the book it draws on.