Tuesday, September 29, 2026

TURN CLOUD INFRASTRUCTURE INTO CODE | How Infrastructure as Code Makes Servers, Networks, and Cloud Environments Repeatable



Imagine building a web application.

You need a server.

Then a network.

Then security rules.

Then storage.

Then a database.

Then DNS.

Then perhaps a load balancer.

You configure everything manually.

The application works.

Six months later, you need to create another environment.

Maybe you need:

  • a development environment;
  • a testing environment;
  • a staging environment;
  • a production environment;
  • a second region;
  • a disaster-recovery environment;
  • or another customer's deployment.

Now you have a problem.

How do you recreate the same infrastructure accurately?

You could remember every setting.

You could document every click.

You could manually repeat the configuration.

Or you could describe the infrastructure as code.

That is the central idea behind Infrastructure as Code, commonly called IaC.

Infrastructure as Code turns infrastructure configuration into a repeatable, versionable, automatable engineering artifact.

Instead of treating infrastructure as something you manually build once, you begin treating it as something you can define, review, reproduce, change, and manage systematically.

AWS describes IaC as provisioning and supporting computing infrastructure through code instead of manual processes and settings. Google Cloud similarly describes it as managing infrastructure through machine-readable definition files rather than manual configuration.


KEY TAKEAWAYS

  • Infrastructure as Code lets you define infrastructure using configuration files.
  • IaC can describe resources such as compute, networking, storage, databases, and other services.
  • Infrastructure definitions can be stored in version-control systems alongside application code.
  • IaC makes environments easier to reproduce consistently.
  • Declarative IaC describes the desired state rather than requiring every step to be manually specified.
  • Tools such as Terraform can compare desired infrastructure with the current environment and propose changes.
  • Infrastructure can therefore become part of a software development workflow.
  • IaC does not eliminate the need for infrastructure knowledge.
  • IaC does not automatically make infrastructure secure or inexpensive.
  • Secrets and sensitive configuration require careful handling.
  • IaC becomes particularly valuable when infrastructure grows beyond a small manually managed environment.
  • Infrastructure automation connects directly with DevOps, CI/CD, cloud engineering, reliability, security, and software development.

THE PROBLEM WITH MANUAL INFRASTRUCTURE

Suppose you create a server manually.

You open a cloud provider's console.

You select:

  • region;
  • operating system;
  • CPU;
  • memory;
  • storage;
  • network;
  • firewall rules;
  • authentication;
  • monitoring;
  • backup configuration.

You click Create.

The server works.

But now ask:

Can you recreate exactly the same environment six months from now?

Maybe.

But you have to remember or document everything.

Now imagine ten servers.

Then fifty.

Then hundreds.

Manual configuration becomes increasingly difficult to control.

You can make mistakes.

You can forget a setting.

Two environments can gradually become different.

One server may have been updated.

Another may still have an older configuration.

One firewall rule may exist in production but not in staging.

One database may have a different setting.

This creates a problem commonly described as configuration drift.


WHAT IS CONFIGURATION DRIFT?

Configuration drift occurs when the actual infrastructure gradually differs from the intended configuration.

Imagine you originally want:

SERVER
├── 4 CPU
├── 16 GB RAM
├── Linux
├── Application X
├── Firewall Rules A
└── Monitoring Enabled

Later, someone changes something manually.

Now the real environment becomes:

SERVER
├── 4 CPU
├── 16 GB RAM
├── Linux
├── Application X
├── Firewall Rules A + Extra Rule
└── Monitoring Disabled

The documentation still says one thing.

The infrastructure does another.

That difference is dangerous because people may no longer know what the system is actually supposed to look like.

IaC helps address this by making the desired infrastructure explicit and repeatable.


THE CENTRAL IDEA

Without IaC:

HUMAN
  │
  ▼
CLOUD CONSOLE
  │
  ▼
CLICK SETTINGS
  │
  ▼
CREATE INFRASTRUCTURE

With IaC:

HUMAN
  │
  ▼
CONFIGURATION FILE
  │
  ▼
IaC TOOL
  │
  ▼
CLOUD API
  │
  ▼
INFRASTRUCTURE

The infrastructure becomes something you can describe.

And once something can be described precisely, it can be:

  • stored;
  • reviewed;
  • copied;
  • versioned;
  • tested;
  • automated;
  • reproduced;
  • changed systematically.

That is the major conceptual shift.


INFRASTRUCTURE BECOMES AN ENGINEERING ARTIFACT

Think about application software.

You don't normally build an application by manually recreating every line every time.

You keep source code.

You use version control.

You make changes.

You review those changes.

You test them.

You deploy them.

IaC brings similar practices to infrastructure.

APPLICATION CODE
       │
       ├── Version control
       ├── Review
       ├── Testing
       └── Deployment
       
INFRASTRUCTURE CODE
       │
       ├── Version control
       ├── Review
       ├── Validation
       └── Provisioning

This is why IaC is closely connected with modern DevOps practices.


DECLARATIVE VS IMPERATIVE THINKING

One of the most important ideas in IaC is the difference between imperative and declarative approaches.

IMPERATIVE

You describe the steps.

For example:

1. Create a network.
2. Create a subnet.
3. Create a server.
4. Attach the server to the subnet.
5. Create a firewall rule.
6. Create storage.
7. Configure the application.

You are telling the system how to do something.


DECLARATIVE

You describe the desired result.

For example:

I WANT:

1 network
2 subnets
2 application servers
1 database
1 load balancer
specific firewall rules
specific storage

The IaC tool determines what changes are required to make the actual environment match the declared configuration.

Terraform describes its configuration as declarative: you specify the desired infrastructure state and Terraform determines the operations needed to reach that state.

This distinction is extremely useful.

You are not necessarily telling the infrastructure system:

"Click this button, then click that button."

You are describing:

"This is what I want the infrastructure to look like."


WHAT CAN INFRASTRUCTURE AS CODE MANAGE?

The exact capabilities depend on the tool and provider, but IaC can manage resources such as:

COMPUTE

  • virtual machines;
  • instances;
  • compute clusters;
  • serverless resources;
  • application services.

NETWORKING

  • virtual networks;
  • subnets;
  • routes;
  • security groups;
  • firewalls;
  • load balancers;
  • gateways;
  • DNS.

STORAGE

  • object storage;
  • block storage;
  • file storage;
  • backup resources.

DATABASES

  • managed databases;
  • database instances;
  • database configuration;
  • connectivity.

CONTAINERS

  • container infrastructure;
  • Kubernetes resources;
  • registries;
  • supporting services.

SUPPORTING SERVICES

  • monitoring;
  • logging;
  • identity resources;
  • permissions;
  • queues;
  • certificates;
  • application services.

Terraform, for example, can manage low-level infrastructure such as compute, storage and networking as well as higher-level resources such as DNS and SaaS features through providers.


INFRASTRUCTURE AS CODE IS NOT THE SAME AS PROGRAMMING AN APPLICATION

This distinction matters.

Application code says:

What should the application do?

Infrastructure code says:

What infrastructure should exist so the application can run?

For example:

APPLICATION

User submits payment
        ↓
Validate payment
        ↓
Call payment API
        ↓
Store result
        ↓
Return response

Infrastructure:

INFRASTRUCTURE

Internet
   ↓
Load Balancer
   ↓
Application Service
   ↓
Database
   ↓
Object Storage
   ↓
Monitoring

The two are connected, but they solve different problems.


THE CLOUD + IaC CONNECTION

Remember the previous cloud infrastructure chapter.

Cloud computing gives you access to resources such as:

COMPUTE
STORAGE
NETWORKING
DATABASES
SECURITY
APPLICATION SERVICES

IaC provides a way to define and automate those resources.

So:

CLOUD
  │
  ├── Compute
  ├── Storage
  ├── Networking
  ├── Databases
  └── Services
        │
        ▼
       IaC
        │
        ├── Define
        ├── Version
        ├── Review
        ├── Plan
        └── Provision

Cloud provides the infrastructure.

IaC provides an engineering method for managing it.


A SIMPLE EXAMPLE

Suppose you want to build a small web application.

Your infrastructure might look like this:

                 INTERNET
                     │
                     ▼
                 LOAD BALANCER
                     │
              ┌──────┴──────┐
              ▼             ▼
          APP SERVER A   APP SERVER B
              │             │
              └──────┬──────┘
                     ▼
                  DATABASE
                     │
                     ▼
                  STORAGE

Manually, you could create every component through a cloud console.

With IaC, you describe the architecture.

Conceptually:

NETWORK
  └── Virtual Network

LOAD BALANCER
  └── Public entry point

APPLICATION
  ├── Server A
  └── Server B

DATABASE
  └── Managed database

STORAGE
  └── Object storage

SECURITY
  └── Required network rules

The IaC tool then works with the cloud provider's APIs to create or modify the infrastructure.


THE IaC WORKFLOW

A typical workflow looks like:

WRITE
  ↓
VALIDATE
  ↓
PLAN
  ↓
REVIEW
  ↓
APPLY
  ↓
VERIFY
  ↓
MONITOR

Let's examine it.


1. WRITE

You define your infrastructure.

For example:

network.tf
database.tf
compute.tf
storage.tf

The exact file structure depends on the tool and project.

The important idea is that the infrastructure definition becomes a set of files rather than a collection of undocumented clicks.


2. VALIDATE

Before changing real infrastructure, you can check whether your configuration is structurally valid.

This can catch problems before deployment.

That is particularly useful because infrastructure changes can affect real systems.


3. PLAN

A planning stage can compare your desired configuration with the current infrastructure.

Terraform's plan operation, for example, generates a description of proposed changes without applying them.

Conceptually:

DESIRED STATE
      │
      ▼
    IaC TOOL
      ▲
      │
CURRENT STATE
      │
      ▼
PROPOSED CHANGES

You can then inspect what is about to happen.


4. REVIEW

This is where infrastructure becomes part of collaborative engineering.

Someone can inspect:

"What exactly is changing?"

For example:

+ Create server
+ Create database
~ Change firewall rule
- Remove old storage

A dangerous change can therefore be identified before it reaches production.

This is one reason version control and code review are important for IaC.


5. APPLY

After review, the changes can be applied.

The IaC tool communicates with the relevant infrastructure provider APIs.

Terraform describes its core workflow as write → plan → apply.


6. VERIFY

After infrastructure changes, you still need to verify that the system works.

For example:

SERVER RUNNING?
      ↓
NETWORK WORKING?
      ↓
APPLICATION RESPONDING?
      ↓
DATABASE CONNECTED?
      ↓
SECURITY RULES CORRECT?
      ↓
MONITORING WORKING?

IaC creates infrastructure.

It does not magically prove that your application is healthy.


7. MONITOR

Infrastructure remains a live system.

You still need:

  • monitoring;
  • logging;
  • alerts;
  • security;
  • backups;
  • cost management;
  • capacity management;
  • incident response.

Automation does not remove operations.

It changes how operations are performed.


VERSION CONTROL CHANGES EVERYTHING

Suppose your infrastructure configuration is stored in Git.

You have:

VERSION 1
     ↓
Basic application

Then:

VERSION 2
     ↓
Add database

Then:

VERSION 3
     ↓
Add second application server

Then:

VERSION 4
     ↓
Add monitoring

You now have a history of infrastructure changes.

Instead of asking:

"Who changed the server?"

you can investigate the configuration history.

That makes infrastructure easier to understand and manage.


DEVELOPMENT, STAGING AND PRODUCTION

Modern software projects often need more than one environment.

For example:

DEVELOPMENT
     ↓
STAGING
     ↓
PRODUCTION

The environments may be intentionally similar while differing in scale, credentials, data and other settings.

IaC makes it possible to define infrastructure consistently across environments while changing appropriate variables.

For example:

DEVELOPMENT
2 CPU
4 GB RAM

STAGING
4 CPU
8 GB RAM

PRODUCTION
8 CPU
32 GB RAM

The underlying architecture can remain conceptually similar while resource sizing differs.

GitHub's deployment environment model, for example, supports environments such as development, staging and production and can apply deployment protections and environment-specific secrets.


REPRODUCIBILITY

One of IaC's most important benefits is reproducibility.

Imagine you create an environment:

ENVIRONMENT A

You later need:

ENVIRONMENT B

Instead of manually rebuilding everything:

ENVIRONMENT A
      │
      │
      ▼
INFRASTRUCTURE CODE
      │
      ├───────────────┐
      ▼               ▼
ENVIRONMENT B     ENVIRONMENT C

The same infrastructure definition can be used as the foundation for multiple environments, subject to the differences you intentionally configure.

AWS specifically highlights the ability to duplicate environments using IaC definitions.


INFRASTRUCTURE MODULES

Large infrastructure configurations can become difficult to manage.

You may therefore create reusable components.

For example:

WEB APPLICATION MODULE
├── Network
├── Load Balancer
├── Application
├── Security
└── Monitoring

Then reuse that module for multiple applications.

Terraform supports reusable configuration components called modules.

This creates an important principle:

Don't repeatedly rebuild the same infrastructure pattern manually when it can be safely standardized.


INFRASTRUCTURE AS CODE + CI/CD

IaC becomes even more powerful when combined with software delivery automation.

Imagine this workflow:

DEVELOPER
   │
   ▼
GIT REPOSITORY
   │
   ▼
PULL REQUEST
   │
   ▼
CHECKS
   │
   ├── Code tests
   ├── IaC validation
   ├── Security checks
   └── Review
   │
   ▼
APPROVAL
   │
   ▼
DEPLOYMENT
   │
   ▼
CLOUD INFRASTRUCTURE

Now infrastructure changes can travel through an engineering pipeline instead of depending entirely on manual operations.

GitHub Actions supports deployment environments, protection rules, branch restrictions and environment-specific secrets as part of deployment workflows.


IaC + APPLICATION CODE

Eventually you can manage both application and infrastructure as connected systems.

GIT REPOSITORY
│
├── APPLICATION
│   ├── Frontend
│   ├── Backend
│   └── Tests
│
├── INFRASTRUCTURE
│   ├── Network
│   ├── Compute
│   ├── Database
│   └── Storage
│
└── AUTOMATION
    ├── Build
    ├── Test
    └── Deploy

This is one of the foundations of modern software engineering.


BUT IaC DOES NOT MEAN "AUTOMATICALLY SAFE"

This is a very important warning.

You can automate a bad configuration.

You can reproduce an insecure configuration.

You can deploy an expensive configuration.

You can accidentally expose a database using code.

Automation makes actions repeatable.

It does not make the actions correct.

Therefore, IaC should be combined with:

  • security review;
  • least-privilege access;
  • validation;
  • testing;
  • policy controls;
  • secret management;
  • monitoring;
  • cost controls;
  • backups;
  • disaster recovery.

NEVER PUT SECRETS CARELESSLY INTO INFRASTRUCTURE CODE

Infrastructure frequently interacts with sensitive information:

  • passwords;
  • API keys;
  • access tokens;
  • certificates;
  • credentials;
  • database secrets.

These should not simply be written into configuration files and committed to a public repository.

A configuration such as:

password = "MY_REAL_PASSWORD"

can become a serious security problem if that file reaches the wrong place.

Modern infrastructure workflows therefore separate infrastructure definitions from sensitive values and use appropriate secret-management mechanisms.


IaC AND CLOUD COSTS

Automation can also create financial problems.

Imagine this configuration:

CREATE
100 SERVERS

The infrastructure tool may faithfully do exactly what you requested.

The result may also be a very large bill.

Therefore:

Infrastructure automation must be accompanied by cost awareness.

Use:

  • budgets;
  • alerts;
  • resource limits;
  • tagging;
  • lifecycle policies;
  • scheduled shutdowns where appropriate;
  • usage monitoring;
  • regular reviews.

The ability to create infrastructure quickly is powerful.

The ability to accidentally create too much infrastructure quickly is also real.


IaC DOES NOT REPLACE SYSTEM ADMINISTRATION

This is another common misconception.

You might think:

"If I know Terraform, I don't need to understand servers."

You still need to understand:

  • operating systems;
  • networking;
  • storage;
  • databases;
  • security;
  • DNS;
  • authentication;
  • performance;
  • monitoring;
  • application architecture.

IaC is an automation layer over infrastructure knowledge.

It is not a substitute for that knowledge.


TERRAFORM AND THE IaC LANDSCAPE

Terraform is one prominent IaC tool.

It allows infrastructure to be defined in human-readable configuration files and managed through provider APIs. Its documented workflow includes defining resources, generating a plan, and applying changes.

It can work with many infrastructure and service providers through its provider ecosystem.

Other ecosystems also provide their own infrastructure-definition approaches.

Examples include:

  • AWS CloudFormation;
  • Azure infrastructure tooling;
  • Google Cloud infrastructure tooling;
  • Kubernetes manifests;
  • Pulumi;
  • Ansible for configuration/automation use cases;
  • provider-specific deployment frameworks.

The important lesson is not:

"Learn one IaC brand."

The important lesson is:

Understand infrastructure as something that can be defined and automated.

Tools can change.

The underlying engineering principle remains useful.


INFRASTRUCTURE AS CODE VS MANUAL CONFIGURATION

Manual infrastructure Infrastructure as Code
Click through settings Define configuration
Difficult to reproduce perfectly Designed for repeatability
Easy to forget changes Changes can be recorded
Documentation may become outdated Configuration can represent intended state
Harder to review systematically Changes can be reviewed
Scaling can require repeated work Automation can reproduce patterns
Environment differences can accumulate Environments can share definitions
Often dependent on individual knowledge Knowledge can be encoded in files

IaC is not automatically better for every tiny project.

If you are running one very simple website, manually configuring a small service may be perfectly reasonable.

The value of IaC increases as:

  • infrastructure grows;
  • environments multiply;
  • teams collaborate;
  • deployments become frequent;
  • reliability requirements increase;
  • infrastructure becomes complex;
  • repeatability becomes important.

WHEN SHOULD YOU LEARN IaC?

IaC becomes especially valuable if you want to work in:

  • cloud engineering;
  • DevOps;
  • infrastructure engineering;
  • site reliability engineering;
  • backend development;
  • platform engineering;
  • cybersecurity;
  • systems administration;
  • large-scale web development;
  • AI infrastructure;
  • enterprise technology.

It is also increasingly useful for developers building serious applications.


A PRACTICAL LEARNING PATH

Don't start by trying to automate an enormous production system.

Build your knowledge progressively.

LEVEL 1 — UNDERSTAND INFRASTRUCTURE

Learn:

  • servers;
  • networks;
  • storage;
  • databases;
  • DNS;
  • virtual machines;
  • containers.

You already started this in the previous cloud infrastructure chapter.


LEVEL 2 — UNDERSTAND CONFIGURATION

Learn:

  • desired state;
  • configuration files;
  • variables;
  • resources;
  • dependencies;
  • environments.

LEVEL 3 — LEARN VERSION CONTROL

Learn:

  • Git;
  • repositories;
  • commits;
  • branches;
  • pull requests;
  • reviews.

LEVEL 4 — LEARN AN IaC TOOL

For example:

  • Terraform;
  • CloudFormation;
  • Pulumi;
  • another appropriate platform-specific tool.

Focus first on the concepts.


LEVEL 5 — BUILD A SMALL ENVIRONMENT

Create something simple:

NETWORK
   ↓
SERVER
   ↓
APPLICATION

Then destroy it.

Then recreate it.

The ability to repeatedly create and remove your environment is an excellent way to understand what IaC actually does.


LEVEL 6 — ADD DATA

Add:

DATABASE
   +
STORAGE

Learn how infrastructure components depend on one another.


LEVEL 7 — ADD SECURITY

Introduce:

  • identity;
  • permissions;
  • firewall rules;
  • secret management;
  • secure networking.

LEVEL 8 — ADD AUTOMATION

Connect your infrastructure repository to a deployment pipeline.

GIT
 ↓
VALIDATE
 ↓
PLAN
 ↓
REVIEW
 ↓
APPLY

LEVEL 9 — BUILD FOR RESILIENCE

Learn:

  • multiple instances;
  • load balancing;
  • backups;
  • recovery;
  • regions;
  • zones;
  • failure domains.

LEVEL 10 — THINK LIKE A CLOUD ENGINEER

Now ask:

What happens if this server fails?

What happens if the database becomes unavailable?

What happens if demand increases tenfold?

What happens if credentials are compromised?

What happens if a deployment is wrong?

What happens if the infrastructure must be recreated?

That is where infrastructure engineering becomes more than simply knowing a tool.


A 30-DAY IaC PROJECT

You can turn the concepts in this chapter into a practical project.

WEEK 1 — INFRASTRUCTURE

Understand:

  • compute;
  • networking;
  • storage;
  • databases;
  • cloud resources.

Draw the architecture of a small web application.


WEEK 2 — IaC

Choose one IaC tool.

Create a basic configuration.

Learn:

  • resources;
  • variables;
  • outputs;
  • providers;
  • state;
  • plan;
  • apply.

WEEK 3 — REPRODUCIBILITY

Create:

DEVELOPMENT
STAGING
PRODUCTION

Do not make production identical in size to development.

Instead, learn how one architecture can be configured differently for different environments.


WEEK 4 — AUTOMATION

Connect the infrastructure repository to a deployment workflow.

Practice:

CHANGE
 ↓
COMMIT
 ↓
REVIEW
 ↓
PLAN
 ↓
APPROVE
 ↓
APPLY
 ↓
VERIFY

Then deliberately change something and observe what the plan reports.


YOUR FIRST REAL IaC MENTAL MODEL

Remember this:

                         YOU
                          │
                          ▼
                  INFRASTRUCTURE CODE
                          │
                          ▼
                    VERSION CONTROL
                          │
                          ▼
                    IaC TOOL
                          │
                    ┌─────┴─────┐
                    ▼           ▼
                  PLAN        APPLY
                    │           │
                    └─────┬─────┘
                          ▼
                     CLOUD APIs
                          │
             ┌────────────┼────────────┐
             ▼            ▼            ▼
          COMPUTE      NETWORK       STORAGE
             │            │            │
             └────────────┼────────────┘
                          ▼
                      APPLICATION

This is the fundamental relationship.


FROM CLOUD TO CODE

The previous chapter introduced the physical and logical layers beneath cloud computing.

Now we can add another layer:

PHYSICAL INFRASTRUCTURE
        ↓
CLOUD INFRASTRUCTURE
        ↓
VIRTUAL RESOURCES
        ↓
INFRASTRUCTURE AS CODE
        ↓
AUTOMATED DEPLOYMENT
        ↓
APPLICATION
        ↓
DIGITAL SERVICE

This is an important transition in your understanding of modern computing.

You are no longer simply using infrastructure.

You are learning how infrastructure can become programmable.


THE BIGGER W3 NOTES KNOWLEDGE MAP

Category 7 now begins to open into a much larger infrastructure curriculum:

CLOUD & DIGITAL INFRASTRUCTURE
│
├── CLOUD FOUNDATIONS
│   └── Cloud computing
│
├── DATA CENTERS
│   ├── Servers
│   ├── Storage
│   ├── Power
│   └── Cooling
│
├── COMPUTE
│   ├── Virtual Machines
│   ├── Bare Metal
│   ├── Containers
│   └── Serverless
│
├── NETWORKING
│   ├── Virtual Networks
│   ├── Subnets
│   ├── Routing
│   ├── Load Balancing
│   └── CDN / Edge
│
├── DATA
│   ├── Object Storage
│   ├── Block Storage
│   ├── File Storage
│   └── Databases
│
├── INFRASTRUCTURE AS CODE
│   ├── Declarative Configuration
│   ├── Terraform
│   ├── CloudFormation
│   ├── Pulumi
│   └── Infrastructure Automation
│
├── OPERATIONS
│   ├── Monitoring
│   ├── Logging
│   ├── Scaling
│   ├── Backup
│   └── Disaster Recovery
│
├── DEVOPS
│   ├── CI/CD
│   ├── Deployment
│   ├── Environments
│   └── Automation
│
└── ADVANCED INFRASTRUCTURE
    ├── Kubernetes
    ├── Distributed Systems
    ├── Hybrid Cloud
    ├── Multi-Cloud
    ├── Edge Computing
    └── AI Infrastructure

The cloud chapter established what the infrastructure is.

This chapter establishes a new question:

How do we manage that infrastructure as an engineered, repeatable system?

That question leads naturally toward the next layers of cloud engineering.


REMEMBER THIS

Infrastructure as Code does for infrastructure what source code does for software: it gives you a structured, repeatable way to define, change, review, and reproduce a system.

But there is an important qualification:

Automation is only as good as the infrastructure design, security controls, testing, and operational discipline surrounding it.

You should therefore learn IaC together with:

COMPUTING

→ NETWORKING

→ OPERATING SYSTEMS

→ CLOUD

→ SECURITY

→ SOFTWARE DEVELOPMENT

→ VERSION CONTROL

→ AUTOMATION

→ DEVOPS

That is how infrastructure knowledge becomes professional capability.


CONCLUSION

Cloud computing changed the relationship between people and infrastructure.

You no longer necessarily need to purchase and operate every physical server yourself.

Infrastructure can be provisioned through software.

Infrastructure as Code takes that idea one step further.

Instead of treating infrastructure as a collection of settings hidden inside a cloud console, you can describe the desired environment in files that can be:

READ

REVIEWED

VERSIONED

REUSED

TESTED

AUTOMATED

REPRODUCED

CHANGED

That changes infrastructure from something that is merely configured into something that can be engineered.

A server is no longer just a server.

A network is no longer just a collection of settings.

A cloud environment becomes a system whose architecture can be expressed, reviewed and managed as code.

And once infrastructure becomes programmable, another major transformation becomes possible:

You can begin building systems that build, configure, deploy, scale, monitor and recover themselves through automation.

That is the bridge from cloud computing to DevOps, platform engineering, distributed systems, and modern digital infrastructure.

READ. USE. SOLVE. 


Image: AltexSoft

No comments:

Post a Comment