0% found this document useful (0 votes)
28 views13 pages

Infrastructure As Code

Uploaded by

Samer Ben mim
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views13 pages

Infrastructure As Code

Uploaded by

Samer Ben mim
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 13

01/13

Infrastructure
As Code
(Iac)

SWIPE
Kaouech Haythem
Helal Motaz
02/13

Agenda
Traditional Infrastructure
deployment
Iac
How Iac works
Benefits of Iac
Drawbacks of Iac
Declarative Vs Imperative
Common Iac Tools

KEEP SWIPING
03/13

Traditional Infrastructure
Deployment
Traditional infrastructure deployment involves
manually configuring and provisioning physical servers,
networking, and hardware components, often leading
to longer setup times and increased room for human
error. Main disadvantages include :
Limited Automation
Scalability Challenges
Maintenance Complexity
Inconsistencies

KEEP SWIPING
04/13

Iac
Infrastructure as Code (IaC) is an approach that uses
code to automate the provisioning and management
of IT infrastructure. It allows for the declarative
definition of infrastructure components, enabling
rapid, consistent, and scalable deployments while
promoting version control and reproducibility. IaC is a
key practice in DevOps and cloud computing.

KEEP SWIPING
05/13

How IaC Works


06/13

IaC Scripts
IaC code can be written in various programming
languages, although some languages are more
commonly used than others.

YAML
JSON
DSL ( Terraform)
Python, Java , Typescript, JavaScript...

KEEP SWIPING
07/13

Benefits Of Iac
Declarative Configuration
Automation
Consistency
Scalability
Version Control
Disaster Recovery

KEEP SWIPING
08/13

Drawbacks Of Iac
The upsides of using IaC definitly outweigh the
downsides but here are some of the cons :

Configuration Drift: We call configuration


drift the inconsistencies of configuration
between different devices , so , periodically,
you need to find any gaps in the system and
fix them.

Learning Curve: especially when you’re


reading someone else’s code, which
consumes time understanding it before
starting work.

KEEP SWIPING
09/13

Declarative Vs Imperative
Infrastructure as Code (IaC) commonly uses a
declarative approach. In a declarative approach
to IaC, you define the desired end-state of your
infrastructure, specifying what resources and
configurations you want, without necessarily
detailing the step-by-step process to achieve it.
Let me explain with an example :
You want to go from point A to B

Let’s achieve this goal using an imperative then


a declarative Approach

KEEP SWIPING
10/13

Imperative Approach
Continue straight for 100 m
Turn left
continue for 200 m
turn right
continue for 100 m
Drawbacks :
Complexity
Limited Reusability
Order Dependencies

KEEP SWIPING
11/13

Declarative Approach
Just Go From Point A to B figure out how

Benefits :
Simplicity
Reproducibility
Resource Dependencies
Reusability

KEEP SWIPING
12/13

Common Iac Tools


Provisioning Tools :
Terraform
AWS CloudFormation & AWS CDK
Azure Resource Manager (ARM) Templates
Google Cloud Deployment Manager

Management Tools :
Ansible
Puppet

ONE MORE
13/13

Thanks For
Your Attention
Any Questions ?

You might also like