18. Agenda
● What is Infrastructure as Code? (IaC)
● History of IaC
● Why IaC?
19. What is Infrastructure as Code
The process of managing and provisioning computer data centers through
machine-readable definition files.
Rather than physical hardware configuration or interactive configuration tools.
22. History of IaC - the idea
In 2006 specifically, new challenges were brought to the forefront that shook the
technology industry.
The launch of AWS EC2 and the 1.0 version of Ruby on Rails just months before.
With new tools emerging to handle this ever growing field, the idea of Infrastructure
as Code was born.
23. History of IaC - Continuous Configuration Automation (CCA)
● CFEngine (1993)
● Puppet (2005)
● Chef (2009)
● SaltStack (2011)
● Ansible (2012)
● Otter (2016?)
24. History of IaC - timeline
● 2011-02-25: Initial release of CloudFormation (AWS)
● 2014-07-28: Initial release of Terraform (HashiCorp)
25. Why IaC? - value
● Cost (reduction)
● Speed (faster execution)
● Risk (remove errors and security violations)
26. Why IaC? - cost & speed
● Reduce time costs
○ Change it rapidly
○ Rollback
○ Repeatable (modulize)
● Readability
○ Code as documentation
○ Graph
27. Why IaC? - risk
● Reduce human error
○ Code review
○ Version control
○ Plan (dry run)
28. Why IaC? - use cases
● Create different stages
○ test
○ stag
○ prod
● Create similar resources
○ API: EC2 instance group with ELB
○ Thirdparty S3 bucket
○ CloudFront
○ IAM Users