Terraform: Why?
Devops Columbia
October 22nd , 2020
Gabriel Alix
VP, Intel
galix@applied-insight.com
2
Gabe is a Cloud Technologist and accomplished Cyber practitioner
who has led & built complex workloads across the IC for 20+ years.
He's a native New Yorker from Washington Heights, with a
boisterous laugh and calm demeanor. Gabe has built a strong
career starting in Federal service and has evolved into CTO and
now VP of Intel for Applied Insight. In addition to his technical
accolades, he's a social leader that believes in building and growing
strong teams
@gabrielalix
Gabriel Alix
At Applied Insight, we deliver pragmatic solutions for federal missions that cannot
wait. We work closely with agencies and industry to overcome technical and
cultural hurdles to innovation, empowering them with the latest cloud, data and
cyber capabilities. Our solutions help people work better, faster and more securely
– no matter where they are. To learn more about us, visit applied-insight.com.
Applied Insight
3
Agenda
• Intro/Purpose
• Takeaways
• What is Terraform
• Why should you care?
• Time to feature release
• Lots of neat built-in functions
• Organization/Modules
• Variables and State
4
• Data and Resources
• Circle of Life – Init/Plan/Apply/Destroy
• Module Registry
• HashiCorp Ecosystem
• 0.12 - 0.13 – 0.14
• Other Resources
Intro
5
WHAT IS ALL THE HUBBUB WITH
TERRAFORM?!
I’M GOOD WITH
CLOUDFORMATION, SHOULD I
EVEN PAY ATTENTION TO THIS?
Takeaways
6
TERRAFORM IS A VERSATILE
CLOUD ORCHESTRATER
REALLY EASY TO PICK UP AND
START WORKING WITH
NOT WITHOUT ITS ISSUES
(COUNT FUNCTION NOT
WORKING IN MODULES,
WEIRD IF/THEN/ELSE
CONDITIONS, ADVANCED HCL
GETS COMPLICATED) PRE –
0.12
AWS CFN IS FIGHTING BACK
What is
Terraform?
7
Terraform is a popular Cloud Orchestration tool.
It has become popular due to its ease of use,
some missteps by AWS, and how well organized
complex projects can be, and at the time, some
missing quality of life features in CFN.
Terraform also promises one language to
connect to any cloud provider – think of a multi-
cloud-scenario <Insert snarky Lord of Rings One
Ring Reference ;)>
Why Should
You Even
Care?
8
Is common tech used by both
Commercial and Government Customers
Can be used within your DevOps process
Provides features currently missing from
air-gapped region’s version of CFN
Can you be used to prove the state of
infrastructure for Security reviews
Feature Parity and Intrinsic functions
• Took 36 days for Aurora Serverless to receive CFN support
• There is the perception that CFN is not a Tier 1 services within AWS
• Reddit Rage
• Limited Intrinsic functions (no looping, counting, random
generation, etc..)
9
Installing Terraform
Terraform is a single binary written in Go
wget https://releases.hashicorp.com/terraform/0.13.4/terraform_0.13.4_linux_amd64.zip
sudo unzip terraform_0.13.4_linux_amd64.zip -d /usr/local/bin
10
File Structure
11
Root folder contains main files and subfolder (modules)
Every folder contains the following:
• main.tf
• outputs.tf
• variables.tf
#Create directory structure
mkdir -p terraform-aws/{networking,compute,storage}
cd terraform-aws
#Create root files
touch {main.tf,variables.tf,outputs.tf,terraform.tfvars}
#Create Sub-folder files
touch {networking,compute,storage}/{main.tf,variables.tf,outputs.tf}
12
Built-In
Functions
13
CloudFormation is Not Slacking = CDK
CloudFormation Macros introduced Count (seem
familiar? ;) )
14
Variables and Interpolation
15
Stateful
16
Drift Detection
17
Data and Resource Objects
• Providers (e.g. AWS, Azure, …)
• Each has their own collection of Data and Resource Objects
• Data objects – lookup information for use within Terraform
• Resource Objects – create actual items within a given Provider
18
Terraform Workspaces
19
Creates multiple environments to allow you to deploy various copies of your Terraform configurations
Circle of Life – Init/Plan/Apply/Destroy
• Init – will initialize a given Terraform project. Need to rerun when
adding a new provider or module
• Plan – will show you what changes will be made
• Apply – takes the plan and executes it
• Destroy – self-explanatory
20
Module Registry
21
22
HashiCorp Eco-System
23
Terraform Perfect? NOPE.
24
What about the Competition?
AKA if CDK + Terraform had a baby
25
Other Resources
26
Terraform Best
Practices
HashiConf 2020 Terraform
Module Registry
https://learn.hashicorp.com/
27
Thank you
Devops Columbia
October 22nd , 2020
Gabriel Alix
VP, IC Vertical
galix@applied-insight.com

More Related Content

PPTX
Cloud Meetup - Automation in the Cloud
PDF
Understanding AWS with Terraform
PDF
Outside The Wire
PPTX
Kubernetes data science and machine learning
PDF
The elements of kubernetes
PPTX
AnsibleFest 2020 - Automate cybersecurity solutions in a cloud native scenario
PDF
DCEU 18: From Monolith to Microservices
PPTX
Machine learning at scale - Webinar By zekeLabs
Cloud Meetup - Automation in the Cloud
Understanding AWS with Terraform
Outside The Wire
Kubernetes data science and machine learning
The elements of kubernetes
AnsibleFest 2020 - Automate cybersecurity solutions in a cloud native scenario
DCEU 18: From Monolith to Microservices
Machine learning at scale - Webinar By zekeLabs

What's hot (20)

PDF
Web後端技術的演變
PPTX
實際架構實踐演化與解決方案
PDF
StarlingX - A Platform for the Distributed Edge | Ildiko Vancsa
PPTX
Top Considerations For Operating a Kubernetes Environment at Scale
PDF
Remote secured storage
PDF
OpenStack on Kubernetes (BOS Summit / May 2017 update)
PPTX
Serverless and cloud computing
PDF
Setup Hybrid Clusters Using Kubernetes Federation
PPTX
Tectonic Summit 2016: Multi-Cluster Kubernetes: Planning for Unknowns
PDF
Kubernetes on DC/OS
PDF
Secure Infrastructure Provisioning with Terraform Cloud, Vault + GitLab CI
PPTX
The Evolution of your Kubernetes Cluster
PDF
The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ...
PDF
基於 K8S 開發的 FaaS 專案 - riff
PPTX
使用 Prometheus 監控 Kubernetes Cluster
PPTX
Application Portability with Kubernetes (k8)
PDF
Deploying Anything as a Service (XaaS) Using Operators on Kubernetes
PPTX
Externalized Spring Boot App Configuration
PDF
Storage os kubernetes clusters need persistent data
PPTX
A Million ways of Deploying a Kubernetes Cluster
Web後端技術的演變
實際架構實踐演化與解決方案
StarlingX - A Platform for the Distributed Edge | Ildiko Vancsa
Top Considerations For Operating a Kubernetes Environment at Scale
Remote secured storage
OpenStack on Kubernetes (BOS Summit / May 2017 update)
Serverless and cloud computing
Setup Hybrid Clusters Using Kubernetes Federation
Tectonic Summit 2016: Multi-Cluster Kubernetes: Planning for Unknowns
Kubernetes on DC/OS
Secure Infrastructure Provisioning with Terraform Cloud, Vault + GitLab CI
The Evolution of your Kubernetes Cluster
The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ...
基於 K8S 開發的 FaaS 專案 - riff
使用 Prometheus 監控 Kubernetes Cluster
Application Portability with Kubernetes (k8)
Deploying Anything as a Service (XaaS) Using Operators on Kubernetes
Externalized Spring Boot App Configuration
Storage os kubernetes clusters need persistent data
A Million ways of Deploying a Kubernetes Cluster
Ad

Similar to Devops Columbia October 2020 - Gabriel Alix: A Discussion on Terraform (20)

PDF
A case study why Zoominfo uses Terraform Cloud in high-scale environment.
PPTX
Terraform: Taming the Machines Through Continuous Integration
PDF
Terraform In Action Meap V10 Meap Scott Winkler
PDF
Terraform in Depth (MEAP V01) Robert Hafner
PDF
Terraform in Depth (MEAP V01) Robert Hafner
PDF
Instant download Terraform in Depth (MEAP V01) Robert Hafner pdf all chapter
PPTX
Linode_eBook_Declarative_Cloud_Infrastructure_Management_with_Terraform.pptx
PDF
Terraform Definition, Working and Challenges it Overcomes
PPTX
Terraform and Cyber-Range strucutre.pptx
PDF
Terraform Up Running Writing Infrastructure as Code 2nd Edition Yevgeniy Brikman
PPTX
Terraform Automation in Azure Online Training Institute in Hyderabad.pptx
PPTX
Using Terraform for AWS as the IaC tool
PPTX
Terraform - The Road to Self-Service
PDF
Hashicorp-Terraform-Deep-Dive-with-no-Fear-Victor-Turbinsky-Texuna.pdf
PDF
Terraform-2.pdf
PDF
GDG Cloud Southlake #8 Steve Cravens: Infrastructure as-Code (IaC) in 2022: ...
PDF
Infrastructure as Code with Terraform
PPTX
Terraform day 1
PDF
Microservices with Terraform, Docker and the Cloud. DevOps Wet 2018
PDF
Terraforming your Infrastructure on GCP
A case study why Zoominfo uses Terraform Cloud in high-scale environment.
Terraform: Taming the Machines Through Continuous Integration
Terraform In Action Meap V10 Meap Scott Winkler
Terraform in Depth (MEAP V01) Robert Hafner
Terraform in Depth (MEAP V01) Robert Hafner
Instant download Terraform in Depth (MEAP V01) Robert Hafner pdf all chapter
Linode_eBook_Declarative_Cloud_Infrastructure_Management_with_Terraform.pptx
Terraform Definition, Working and Challenges it Overcomes
Terraform and Cyber-Range strucutre.pptx
Terraform Up Running Writing Infrastructure as Code 2nd Edition Yevgeniy Brikman
Terraform Automation in Azure Online Training Institute in Hyderabad.pptx
Using Terraform for AWS as the IaC tool
Terraform - The Road to Self-Service
Hashicorp-Terraform-Deep-Dive-with-no-Fear-Victor-Turbinsky-Texuna.pdf
Terraform-2.pdf
GDG Cloud Southlake #8 Steve Cravens: Infrastructure as-Code (IaC) in 2022: ...
Infrastructure as Code with Terraform
Terraform day 1
Microservices with Terraform, Docker and the Cloud. DevOps Wet 2018
Terraforming your Infrastructure on GCP
Ad

Recently uploaded (20)

PDF
DP Operators-handbook-extract for the Mautical Institute
PDF
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
PDF
Zenith AI: Advanced Artificial Intelligence
PPT
Module 1.ppt Iot fundamentals and Architecture
PDF
A contest of sentiment analysis: k-nearest neighbor versus neural network
PDF
sustainability-14-14877-v2.pddhzftheheeeee
PPTX
observCloud-Native Containerability and monitoring.pptx
PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
PDF
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PPTX
The various Industrial Revolutions .pptx
PDF
Developing a website for English-speaking practice to English as a foreign la...
PPT
Geologic Time for studying geology for geologist
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
PPTX
Chapter 5: Probability Theory and Statistics
PPT
What is a Computer? Input Devices /output devices
PDF
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
PDF
NewMind AI Weekly Chronicles – August ’25 Week III
DP Operators-handbook-extract for the Mautical Institute
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
Zenith AI: Advanced Artificial Intelligence
Module 1.ppt Iot fundamentals and Architecture
A contest of sentiment analysis: k-nearest neighbor versus neural network
sustainability-14-14877-v2.pddhzftheheeeee
observCloud-Native Containerability and monitoring.pptx
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
Assigned Numbers - 2025 - Bluetooth® Document
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
The various Industrial Revolutions .pptx
Developing a website for English-speaking practice to English as a foreign la...
Geologic Time for studying geology for geologist
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
Chapter 5: Probability Theory and Statistics
What is a Computer? Input Devices /output devices
Transform Your ITIL® 4 & ITSM Strategy with AI in 2025.pdf
NewMind AI Weekly Chronicles – August ’25 Week III

Devops Columbia October 2020 - Gabriel Alix: A Discussion on Terraform

  • 1. Terraform: Why? Devops Columbia October 22nd , 2020 Gabriel Alix VP, Intel galix@applied-insight.com
  • 2. 2 Gabe is a Cloud Technologist and accomplished Cyber practitioner who has led & built complex workloads across the IC for 20+ years. He's a native New Yorker from Washington Heights, with a boisterous laugh and calm demeanor. Gabe has built a strong career starting in Federal service and has evolved into CTO and now VP of Intel for Applied Insight. In addition to his technical accolades, he's a social leader that believes in building and growing strong teams @gabrielalix Gabriel Alix
  • 3. At Applied Insight, we deliver pragmatic solutions for federal missions that cannot wait. We work closely with agencies and industry to overcome technical and cultural hurdles to innovation, empowering them with the latest cloud, data and cyber capabilities. Our solutions help people work better, faster and more securely – no matter where they are. To learn more about us, visit applied-insight.com. Applied Insight 3
  • 4. Agenda • Intro/Purpose • Takeaways • What is Terraform • Why should you care? • Time to feature release • Lots of neat built-in functions • Organization/Modules • Variables and State 4 • Data and Resources • Circle of Life – Init/Plan/Apply/Destroy • Module Registry • HashiCorp Ecosystem • 0.12 - 0.13 – 0.14 • Other Resources
  • 5. Intro 5 WHAT IS ALL THE HUBBUB WITH TERRAFORM?! I’M GOOD WITH CLOUDFORMATION, SHOULD I EVEN PAY ATTENTION TO THIS?
  • 6. Takeaways 6 TERRAFORM IS A VERSATILE CLOUD ORCHESTRATER REALLY EASY TO PICK UP AND START WORKING WITH NOT WITHOUT ITS ISSUES (COUNT FUNCTION NOT WORKING IN MODULES, WEIRD IF/THEN/ELSE CONDITIONS, ADVANCED HCL GETS COMPLICATED) PRE – 0.12 AWS CFN IS FIGHTING BACK
  • 7. What is Terraform? 7 Terraform is a popular Cloud Orchestration tool. It has become popular due to its ease of use, some missteps by AWS, and how well organized complex projects can be, and at the time, some missing quality of life features in CFN. Terraform also promises one language to connect to any cloud provider – think of a multi- cloud-scenario <Insert snarky Lord of Rings One Ring Reference ;)>
  • 8. Why Should You Even Care? 8 Is common tech used by both Commercial and Government Customers Can be used within your DevOps process Provides features currently missing from air-gapped region’s version of CFN Can you be used to prove the state of infrastructure for Security reviews
  • 9. Feature Parity and Intrinsic functions • Took 36 days for Aurora Serverless to receive CFN support • There is the perception that CFN is not a Tier 1 services within AWS • Reddit Rage • Limited Intrinsic functions (no looping, counting, random generation, etc..) 9
  • 10. Installing Terraform Terraform is a single binary written in Go wget https://releases.hashicorp.com/terraform/0.13.4/terraform_0.13.4_linux_amd64.zip sudo unzip terraform_0.13.4_linux_amd64.zip -d /usr/local/bin 10
  • 11. File Structure 11 Root folder contains main files and subfolder (modules) Every folder contains the following: • main.tf • outputs.tf • variables.tf #Create directory structure mkdir -p terraform-aws/{networking,compute,storage} cd terraform-aws #Create root files touch {main.tf,variables.tf,outputs.tf,terraform.tfvars} #Create Sub-folder files touch {networking,compute,storage}/{main.tf,variables.tf,outputs.tf}
  • 12. 12
  • 14. CloudFormation is Not Slacking = CDK CloudFormation Macros introduced Count (seem familiar? ;) ) 14
  • 18. Data and Resource Objects • Providers (e.g. AWS, Azure, …) • Each has their own collection of Data and Resource Objects • Data objects – lookup information for use within Terraform • Resource Objects – create actual items within a given Provider 18
  • 19. Terraform Workspaces 19 Creates multiple environments to allow you to deploy various copies of your Terraform configurations
  • 20. Circle of Life – Init/Plan/Apply/Destroy • Init – will initialize a given Terraform project. Need to rerun when adding a new provider or module • Plan – will show you what changes will be made • Apply – takes the plan and executes it • Destroy – self-explanatory 20
  • 22. 22
  • 25. What about the Competition? AKA if CDK + Terraform had a baby 25
  • 28. Thank you Devops Columbia October 22nd , 2020 Gabriel Alix VP, IC Vertical galix@applied-insight.com