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
API
Architecture PatternsApplication Programming Interface — a set of protocols and tools for building and integrating software applications.
Cloud Computing
Service ModelsThe delivery of computing services — servers, storage, databases, networking, software — over the internet on demand.
Kubernetes
InfrastructureAn open-source container orchestration platform for automating deployment, scaling, and management of containerised applications.
Content Delivery Network
Architecture PatternsA distributed network of servers that delivers web content to users based on their geographic location.
Cloud Orchestration
Service ModelsThe automated arrangement, coordination, and management of complex cloud computing systems and services.
Single Sign-On
Strategy & EconomicsAn authentication scheme allowing users to log in once and gain access to multiple related systems.
Cloud-Native Database
Strategy & EconomicsA database designed from the ground up to operate in cloud environments with automatic scaling and high availability.
Cloud Governance
Strategy & EconomicsThe policies, procedures, and tools for managing cloud resource usage, security, compliance, and costs.