Overview
Direct Answer
Infrastructure as Code (IaC) is the practice of defining and managing computing infrastructure—servers, networks, storage, and databases—through version-controlled, declarative or imperative code rather than manual configuration. This approach enables infrastructure to be provisioned, modified, and destroyed programmatically, treating infrastructure management with the same rigour as software development.
How It Works
Teams write configuration files (typically in YAML, JSON, or domain-specific languages) that describe desired infrastructure state, including compute resources, networking topology, and access controls. These files are stored in version control systems and processed by orchestration tools that interpret the declarations and execute the necessary API calls to cloud platforms or on-premises infrastructure providers. Changes propagate through the same code review and testing workflows used for application code.
Why It Matters
Organisations achieve faster deployment cycles, improved consistency across environments, and reduced manual configuration errors. The approach enables disaster recovery through rapid infrastructure reproduction, facilitates compliance auditing via code inspection, and reduces operational overhead by automating provisioning tasks that previously required specialist intervention.
Common Applications
Teams use IaC to provision multi-tier application stacks in public cloud environments, establish consistent development, staging, and production environments, and manage microservices infrastructure across multiple regions. Containerised workload deployments, database infrastructure provisioning, and network security policy deployment all leverage IaC patterns.
Key Considerations
Practitioners must manage state complexity, particularly in mutable infrastructure scenarios, and ensure configuration drift does not occur between declared and actual infrastructure. Secrets management, testing strategies for infrastructure changes, and the learning curve for teams accustomed to manual processes represent significant implementation challenges.
Referenced By1 term mentions Infrastructure as Code
Other entries in the wiki whose definition references Infrastructure as Code — useful for understanding how this concept connects across Cloud Computing and adjacent domains.
More in Cloud Computing
Green Cloud Computing
Service ModelsCloud computing practices that minimise environmental impact through renewable energy usage, efficient cooling, workload consolidation, and carbon-aware scheduling of compute tasks.
FinOps
Strategy & EconomicsA cultural practice combining technology, finance, and business to manage cloud costs through data-driven decision making.
Platform as a Service
Service ModelsCloud computing model that provides a platform for developers to build, deploy, and manage applications without managing infrastructure.
Service Mesh
Architecture PatternsAn infrastructure layer handling service-to-service communication in microservices, managing traffic, security, and observability.
Message Queue
Architecture PatternsA communication method where messages are stored in a queue until the receiving application can process them.
API
Architecture PatternsApplication Programming Interface — a set of protocols and tools for building and integrating software applications.
Multi-Cloud
Strategy & EconomicsA strategy using services from multiple cloud providers to avoid vendor lock-in and optimise capabilities.
Cloud Bursting
Strategy & EconomicsA configuration where an application runs in a private cloud and bursts into a public cloud when demand spikes.