What is infrastructure provisioning?

· Category: DevOps & CI/CD

Short answer

Infrastructure provisioning is the process of automatically creating and configuring servers, networks, and storage. It replaces manual setup with automated, repeatable processes.

How it works

Provisioning tools like Terraform, AWS CloudFormation, or Ansible interact with cloud APIs to create resources. Configuration management tools then install software and apply settings.

Example

resource "aws_instance" "web" {
  ami           = "ami-12345678"
  instance_type = "t3.micro"
  tags = {
    Name = "web-server"
  }
}

Why it matters

Automated provisioning eliminates human error, speeds up environment creation, and ensures consistency across development, staging, and production.

Key differences

  • Provisioning: Creates resources.
  • Configuration management: Configures software on existing resources.

Common issues

  • Drift occurs when manual changes are made outside of code.
  • Dependencies between resources must be managed carefully.
  • State files require secure storage and locking.