Building your infrastructure as one-off thing by clicking in the UI of your chosen cloud provider may be easy, but that isn't scalable nor fun in long-term nor in team.
Terraform is a tool for building, changing, and versioning infrastructure safely and efficiently. Terraform can manage existing and popular service providers as well as custom in-house solutions.
4. Provisioning of the past
● manual
● Shell, Perl
● extra knowledge required
○ bottleneck for team growth
● pure-ops task
○ devs & ops talking over a wall
5.
6. Provisioning today
● Chef, Puppet, Salt, Ansible
● knowledge codified
● de facto serves as documentation
● faster
● less error prone
● brings devs and ops closer
29. Why Terraform?
● core features
○ aware of dependency graph between resources
○ transparent state (pros/cons)
■ resources import (in the future)
■ detailed plan
■ maintenance & atomicity & sharing in the team