Infrastructure as Code — the principle
Infrastructure as code means that networks, servers, storage and services are no longer set up by hand but described in configuration files. Those files live in a repository, are versioned and are treated like application code — with history, review and approval.
Consistency follows from that: development, test and production are created from the same description and differ only in the parameters that are meant to differ. The state of an environment is no longer the tacit knowledge of individuals but a readable file. Every change is traceable and can be reversed deliberately. If an environment fails, it is not reconstructed but recreated — in minutes rather than days.