SlideShare a Scribd company logo
© 2014 VMware Inc. All rights
reserved.
Infrastructure as Code 101
A Primer for Infrastructure Teams
May 5, 2016
Steve Tegeler
stegeler@vmware.com
@vstegeler
Nathan Ness
nness@vmware.com
@nvpnathan
2
Practice
Infrastructure
as Code
Want to
Understand
Infrastructure as
Code Better
Help articulate and
educate others
Get some solid use
cases
3
Who am I, and How did I learn about IaC?
• Director of Pre-Sales engineering for OpenStack + VMware
• Infrastructure Background
– Compute Storage Networking Server Virt Network Virt (Nicira)
• At Nicira our success was bound to the success of CMP/IaaS
– CMP Drives Consumption of Virtual Networks
• Watched a YouTube video and felt my career pivot
4
“Infrastructure in the Cloud Era"
• 2009 Velocity Conference
5
Who am I, and How did I learn about IaC?
• Director of Pre-Sales engineering for OpenStack + VMware
• Infrastructure Background
– Compute Storage Networking Server Virt Virt Networking
• At Nicira realized our success was bound to the success of IaaS
– CMP Drives the Consumption of Network
• Watched a YouTube video and felt my career pivot
• Must learn coding principles to stay relevant
• OpenStack success is bound by the ability to consume it
– IaC education/adoption will help
6
"Enable the reconstruction of the business from nothing but
a source code repository, an application data backup, and
bare metal resources.“
- Adam Jacob, CTO Chef
Infrastructure as Code – Common Definition
App Code
Infrastructure
Code
Configuration
Code
Your
Data
App
State
Compute
Network
Security
Storage
Infrastructure
Provisioning
8
Infrastructure & ConfigurationInfrastructure & Configuration
Typical CI Development Process
Build/CI
Source Code
Management
Repository
Testing
Frameworks
Provisioning /
Deployment
1. Commit/Check-in
2. Build & Test
4. Deploy
vRA
3. Artifacts
W W
AA
R
Manual?
9
App Devs
Ops
Teams
Network StorageCompute
WW
A A
R
Web
2 VMs, 2CPU, 2GB mem, 10GB disk, RHEL
LoadBalancer
Open 80,443
App
2 VMs 4CPU, 4GB mem, 30GB disk
Open 22 internal only, 8443 from Web
Request Infrastructure
web_instance: webxyz
flavor: m1.small
image: RHEL-x86_64-chef
network: web-net
security: web-sec
quantity: 2
-------<snip>----------
Web-net: web-net
Subnet: 10.10.0.0
Mask: 255.255.255.0
Web-sec: name: web-sec
in: allow: tcp: 22
out: allow: tcp: 80, 443
Describe Infrastructure
Days &
Variability Fast &
Predictable
flavor: m1.small
Cpu: 2
Mem: 2
Disk: 10
Cloud APIs
“Consumer”
12
Why Code is so Great for Infrastructure
When things break, I can troubleshoot easily – Version Control
Easily test infrastructure permutations - CPU/Mem/Storage/Net/Sec
Re-useable
I can build topology templates for apps – Fast & Consistent Configuration
Application Anatomy
The Various Code Used in Deployment
14
Application v12.34
Types of Code Which Make up an Application
Application
Code
Infrastructure
Code
Configuration
Code
Use Cases
16
Deployment
Pipeline
Infrastructure Site 1
Existing Business Apps
Ultimate IaC Test – Day 0
CONFIDENTIAL
App Code
Infrastructure
Code
Configuration
Code
Your
Data
Source
Code
App_1 App_2 App_n
Infrastructure Site 2
Your
Data
Business Apps Up!
App_1 App_2 App_n
R R
UPS
17
Seems Like Utopia, Does it Actually Work?
• If it doesn’t work, you are DOING IT WRONG
– The more often you practice it, the more resilient it makes it (lifting weights)
• Test it in a different OpenStack cloud
– Considerations: Defcore compliant, feature set same?
Ongoing Ops Benefits
19
Version Control
• Definition: A system that records changes to a file or set of files over
time so that you can recall specific versions later
• Main Benefit: Complete visibility to any changes
Application v12.34
Application
Code
Infrastructure
Code
Configuration
Code
20
IaC_v123
• TCP 8081
IaC_v456
• TCP 8081
IaC_v457
• TCP 22, 8081
February
March
April
May
Day 2 Value: Incident, Cause
Security Policy
Incident/Audit
Code Development
Source Code
diff
21
Use Cases for Infrastructure as Code
• Test Firewall Changes
• Test your application to see if it is IP address dependent
– Change a subnet address range used (192.x.y.z 172.x.y.z)
• Test different performance permutations
– CPU – multi-threaded/scale out
– Disk – SATA, SSD, etc
• Rollback
Getting Started
23
IT, we have a Problem!
• Infrastructure Teams SW development practices
– Learn Version Control and ways to “Describe” Infrastructure
• Devs Understand Infrastructure
– Developers learn proper ways to deploy infrastructure “primitives”
Developers Infra
24
25
Version
Control
App Code
Infrastructure
Code
Configuration
Code
Application:
GoReminder
GoRem.v34
Ext Security
Test (nmap) GoRem.v35
Open: 8080,22
Open: 8081
FAIL
PASS!
Go.v34
Heat_v34
Cook_v34
GoRem.v34
Go.v35
Heat_v35
Cook_v35
GoRem.v35
Security Testing a GoReminders Application

More Related Content

PDF
Simplifying OpenStack Networks with Routing on the Host: Gerard Chami + Scott...
OpenStack
 
PDF
The Consequences of Infinite Storage Bandwidth: Allen Samuels, SanDisk
OpenStack
 
PDF
How to deliver High Performance OpenStack Cloud: Christoph Dwertmann, Vault S...
OpenStack
 
PDF
Addressing Issues of Risk & Governance in OpenStack without sacrificing Agili...
OpenStack
 
PDF
Push-button Composition of Oracle Application and Database Environments: Avi ...
OpenStack
 
PDF
/bin/tails from OpenStack Operations: Rarm Nagalingam, Red Hat
OpenStack
 
PDF
OpenStack and Rackspace – an Australian perspective: Tony Breeds, Rackspace
OpenStack
 
PDF
Using OpenStack to Accelerate New Product Development: Rik Harris, Telstra
OpenStack
 
Simplifying OpenStack Networks with Routing on the Host: Gerard Chami + Scott...
OpenStack
 
The Consequences of Infinite Storage Bandwidth: Allen Samuels, SanDisk
OpenStack
 
How to deliver High Performance OpenStack Cloud: Christoph Dwertmann, Vault S...
OpenStack
 
Addressing Issues of Risk & Governance in OpenStack without sacrificing Agili...
OpenStack
 
Push-button Composition of Oracle Application and Database Environments: Avi ...
OpenStack
 
/bin/tails from OpenStack Operations: Rarm Nagalingam, Red Hat
OpenStack
 
OpenStack and Rackspace – an Australian perspective: Tony Breeds, Rackspace
OpenStack
 
Using OpenStack to Accelerate New Product Development: Rik Harris, Telstra
OpenStack
 

What's hot (20)

PDF
Making Openstack Really Easy - Why Build Open Source When You Can Buy? Danny ...
OpenStack
 
PDF
Things You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst IT
OpenStack
 
PDF
[OpenStack Day in Korea 2015] Track 2-2 - OpenStack for PaaS: Why it's Hot
OpenStack Korea Community
 
PDF
The OpenStack Tacker Project and SDN/NFV MANO: Craig Stevens, Brocade
OpenStack
 
PPTX
Deploying OpenStack with Ansible
Kevin Carter
 
PPTX
An Evaluation of OpenStack Deployment Frameworks
shane_gibson
 
PPTX
Telco open stack use cases james thorne
Sriram Subramanian
 
PDF
Simple flexible deployments with openstack ansible
Jean-Philippe Evrard
 
PDF
[OpenStack Day in Korea 2015] Track 1 - Triple O를 이용한 빠르고 쉬운 OpenStack 설치
OpenStack Korea Community
 
PDF
OpenStack Deployment in the Enterprise
Cisco Canada
 
PDF
OPNFV & OpenStack
openstackindia
 
PPTX
Introduction to Orchestration and DevOps with OpenStack
Abderrahmane TEKFI
 
PPTX
Skipping OpenStack Releases: (You Don't) Gotta Catch 'Em All
Mark Voelker
 
PDF
OpenStack vs VMware vCloud
Roozbeh Shafiee
 
PPTX
Openstack 101
Mark Voelker
 
PPTX
Role of sdn controllers in open stack
openstackindia
 
PDF
Openstack devops challenges
openstackindia
 
PDF
Openstack lab environment Virtualbox (English)
Abderrahmane TEKFI
 
PDF
Are We Done Yet ? Testing Your OpenStack Deployment
Ken Pepple
 
PDF
VOID19 The Power Of Community
Vietnam Open Infrastructure User Group
 
Making Openstack Really Easy - Why Build Open Source When You Can Buy? Danny ...
OpenStack
 
Things You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst IT
OpenStack
 
[OpenStack Day in Korea 2015] Track 2-2 - OpenStack for PaaS: Why it's Hot
OpenStack Korea Community
 
The OpenStack Tacker Project and SDN/NFV MANO: Craig Stevens, Brocade
OpenStack
 
Deploying OpenStack with Ansible
Kevin Carter
 
An Evaluation of OpenStack Deployment Frameworks
shane_gibson
 
Telco open stack use cases james thorne
Sriram Subramanian
 
Simple flexible deployments with openstack ansible
Jean-Philippe Evrard
 
[OpenStack Day in Korea 2015] Track 1 - Triple O를 이용한 빠르고 쉬운 OpenStack 설치
OpenStack Korea Community
 
OpenStack Deployment in the Enterprise
Cisco Canada
 
OPNFV & OpenStack
openstackindia
 
Introduction to Orchestration and DevOps with OpenStack
Abderrahmane TEKFI
 
Skipping OpenStack Releases: (You Don't) Gotta Catch 'Em All
Mark Voelker
 
OpenStack vs VMware vCloud
Roozbeh Shafiee
 
Openstack 101
Mark Voelker
 
Role of sdn controllers in open stack
openstackindia
 
Openstack devops challenges
openstackindia
 
Openstack lab environment Virtualbox (English)
Abderrahmane TEKFI
 
Are We Done Yet ? Testing Your OpenStack Deployment
Ken Pepple
 
VOID19 The Power Of Community
Vietnam Open Infrastructure User Group
 
Ad

Viewers also liked (11)

PDF
From Community to Enterprise and Back Again! Chris Wright, Red Hat
OpenStack
 
PDF
We Are OpenStack: Jonathan Bryce, OpenStack Foundation
OpenStack
 
PDF
OpenStack Australia Day 2016 - Peter Lees, SUSE: Planning an Enterprise OpenS...
OpenStack
 
PDF
The Future of Cloud Software Defined Storage with Ceph: Andrew Hatfield, Red Hat
OpenStack
 
PDF
The Environment for Innovation: Tristan Goode, Aptira
OpenStack
 
PDF
Implementing OpenStack in a Government Environment: Vanessa Binding, Departme...
OpenStack
 
PDF
Moving to Cloud for Good: Alexander Tsirel, HiveTec
OpenStack
 
PDF
An Open Approach to Government Cloud: Dez Blanchfield, Vault Systems
OpenStack
 
PDF
We Are OpenStack: David F. Flanders & Tom Fifield, OpenStack Foundation
OpenStack
 
PDF
Big Data and OpenStack, a Love Story: Michael Still, Rackspace
OpenStack
 
PDF
Crowbar and OpenStack: Steve Kowalik, SUSE
OpenStack
 
From Community to Enterprise and Back Again! Chris Wright, Red Hat
OpenStack
 
We Are OpenStack: Jonathan Bryce, OpenStack Foundation
OpenStack
 
OpenStack Australia Day 2016 - Peter Lees, SUSE: Planning an Enterprise OpenS...
OpenStack
 
The Future of Cloud Software Defined Storage with Ceph: Andrew Hatfield, Red Hat
OpenStack
 
The Environment for Innovation: Tristan Goode, Aptira
OpenStack
 
Implementing OpenStack in a Government Environment: Vanessa Binding, Departme...
OpenStack
 
Moving to Cloud for Good: Alexander Tsirel, HiveTec
OpenStack
 
An Open Approach to Government Cloud: Dez Blanchfield, Vault Systems
OpenStack
 
We Are OpenStack: David F. Flanders & Tom Fifield, OpenStack Foundation
OpenStack
 
Big Data and OpenStack, a Love Story: Michael Still, Rackspace
OpenStack
 
Crowbar and OpenStack: Steve Kowalik, SUSE
OpenStack
 
Ad

Similar to Infrastructure as Code 101: Steve Tegeler + Nathan Ness, VMware (20)

PPTX
Infrastructure as Code
Surjeet Singh
 
PPTX
Infrastrucutre as Code
Harmeet Singh
 
PDF
Infrastructure as Code
Prasant Kumar
 
PPTX
Infrastructure as code
Naseath Saly
 
PPTX
Infrastructure as Code (IaC): Introduction to scripted infrastructure
Michael Pearce
 
PDF
Infrastructure as code managing servers in the cloud Morris 2024 scribd download
borrosmartdf
 
PPT
Infrastrucutre As Code
Venu Murthy
 
PDF
Infrastructure as code managing servers in the cloud Morris
habanbrino4l
 
PDF
Infrastructure as code managing servers in the cloud Morris
sahfthr3687
 
PPTX
Infrastructure as Code - Getting Started, Concepts & Tools
Lior Kamrat
 
PDF
Infrastructure as Code 2nd Edition Early Access Kief Morris
muliggrown7y
 
PDF
Infrastructure as Code 2nd Edition Early Access Kief Morris all chapter inst...
foqhabonior
 
PDF
Infrastructure as Code
Matt Cowger
 
PPTX
Infrastructure as Code with Terraform on AWS
Ali Can Kuştemur 🐧
 
PPTX
Infrastructure as Code principles and practices
OpenSense Labs
 
PDF
Cloud infrastructure as code
Tomasz Cholewa
 
PDF
DevOps Fest 2020. immutable infrastructure as code. True story.
Vlad Fedosov
 
PDF
Implementing Infrastructure as Code ConfigMgtCamp 2017
Kief Morris
 
PPTX
VMworld 2015 San Francisco - INF5432 - Infrastructure as Code - Ban Snowflake...
Jonas Rosland
 
PDF
Patterns And Practices For Infrastructure As Code With Examples In Python And...
gbartrilar
 
Infrastructure as Code
Surjeet Singh
 
Infrastrucutre as Code
Harmeet Singh
 
Infrastructure as Code
Prasant Kumar
 
Infrastructure as code
Naseath Saly
 
Infrastructure as Code (IaC): Introduction to scripted infrastructure
Michael Pearce
 
Infrastructure as code managing servers in the cloud Morris 2024 scribd download
borrosmartdf
 
Infrastrucutre As Code
Venu Murthy
 
Infrastructure as code managing servers in the cloud Morris
habanbrino4l
 
Infrastructure as code managing servers in the cloud Morris
sahfthr3687
 
Infrastructure as Code - Getting Started, Concepts & Tools
Lior Kamrat
 
Infrastructure as Code 2nd Edition Early Access Kief Morris
muliggrown7y
 
Infrastructure as Code 2nd Edition Early Access Kief Morris all chapter inst...
foqhabonior
 
Infrastructure as Code
Matt Cowger
 
Infrastructure as Code with Terraform on AWS
Ali Can Kuştemur 🐧
 
Infrastructure as Code principles and practices
OpenSense Labs
 
Cloud infrastructure as code
Tomasz Cholewa
 
DevOps Fest 2020. immutable infrastructure as code. True story.
Vlad Fedosov
 
Implementing Infrastructure as Code ConfigMgtCamp 2017
Kief Morris
 
VMworld 2015 San Francisco - INF5432 - Infrastructure as Code - Ban Snowflake...
Jonas Rosland
 
Patterns And Practices For Infrastructure As Code With Examples In Python And...
gbartrilar
 

More from OpenStack (20)

PDF
Swinburne University of Technology - Shunde Zhang & Kieran Spear, Aptira
OpenStack
 
PDF
Related OSS Projects - Peter Rowe, Flexera Software
OpenStack
 
PDF
Supercomputing by API: Connecting Modern Web Apps to HPC
OpenStack
 
PDF
Federation and Interoperability in the Nectar Research Cloud
OpenStack
 
PDF
Simplifying the Move to OpenStack
OpenStack
 
PDF
Hyperconverged Cloud, Not just a toy anymore - Andrew Hatfield, Red Hat
OpenStack
 
PDF
Migrating your infrastructure to OpenStack - Avi Miller, Oracle
OpenStack
 
PDF
A glimpse into an industry Cloud using Open Source Technologies - Adrian Koh,...
OpenStack
 
PDF
Enabling OpenStack for Enterprise - Tarso Dos Santos, Veritas
OpenStack
 
PDF
Understanding blue store, Ceph's new storage backend - Tim Serong, SUSE
OpenStack
 
PDF
OpenStack Networks the Web-Scale Way - Scott Laffer, Cumulus Networks
OpenStack
 
PPTX
Diving in the desert: A quick overview into OpenStack Sahara capabilities - A...
OpenStack
 
PDF
Building a GPU-enabled OpenStack Cloud for HPC - Blair Bethwaite, Monash Univ...
OpenStack
 
PDF
OpenStack and Red Hat: How we learned to adapt with our customers in a maturi...
OpenStack
 
PDF
Meshing OpenStack and Bare Metal Networks with EVPN - David Iles, Mellanox Te...
OpenStack
 
PDF
The Why and How of HPC-Cloud Hybrids with OpenStack - Lev Lafayette, Universi...
OpenStack
 
PPTX
Ironically, Infrastructure Doesn't Matter - Quinton Anderson, Commonwealth Ba...
OpenStack
 
PDF
Traditional Enterprise to OpenStack Cloud - An Unexpected Journey
OpenStack
 
PDF
Building a GPU-enabled OpenStack Cloud for HPC - Lance Wilson, Monash University
OpenStack
 
PDF
Monitoring Uptime on the NeCTAR Research Cloud - Andy Botting, University of ...
OpenStack
 
Swinburne University of Technology - Shunde Zhang & Kieran Spear, Aptira
OpenStack
 
Related OSS Projects - Peter Rowe, Flexera Software
OpenStack
 
Supercomputing by API: Connecting Modern Web Apps to HPC
OpenStack
 
Federation and Interoperability in the Nectar Research Cloud
OpenStack
 
Simplifying the Move to OpenStack
OpenStack
 
Hyperconverged Cloud, Not just a toy anymore - Andrew Hatfield, Red Hat
OpenStack
 
Migrating your infrastructure to OpenStack - Avi Miller, Oracle
OpenStack
 
A glimpse into an industry Cloud using Open Source Technologies - Adrian Koh,...
OpenStack
 
Enabling OpenStack for Enterprise - Tarso Dos Santos, Veritas
OpenStack
 
Understanding blue store, Ceph's new storage backend - Tim Serong, SUSE
OpenStack
 
OpenStack Networks the Web-Scale Way - Scott Laffer, Cumulus Networks
OpenStack
 
Diving in the desert: A quick overview into OpenStack Sahara capabilities - A...
OpenStack
 
Building a GPU-enabled OpenStack Cloud for HPC - Blair Bethwaite, Monash Univ...
OpenStack
 
OpenStack and Red Hat: How we learned to adapt with our customers in a maturi...
OpenStack
 
Meshing OpenStack and Bare Metal Networks with EVPN - David Iles, Mellanox Te...
OpenStack
 
The Why and How of HPC-Cloud Hybrids with OpenStack - Lev Lafayette, Universi...
OpenStack
 
Ironically, Infrastructure Doesn't Matter - Quinton Anderson, Commonwealth Ba...
OpenStack
 
Traditional Enterprise to OpenStack Cloud - An Unexpected Journey
OpenStack
 
Building a GPU-enabled OpenStack Cloud for HPC - Lance Wilson, Monash University
OpenStack
 
Monitoring Uptime on the NeCTAR Research Cloud - Andy Botting, University of ...
OpenStack
 

Recently uploaded (20)

PDF
REPORT: Heating appliances market in Poland 2024
SPIUG
 
PDF
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
PPTX
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
PDF
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
PDF
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
PDF
Tea4chat - another LLM Project by Kerem Atam
a0m0rajab1
 
PPTX
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
PDF
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
PDF
A Day in the Life of Location Data - Turning Where into How.pdf
Precisely
 
PDF
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
PDF
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
PDF
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
PDF
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
PPTX
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
PPTX
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
PDF
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
PDF
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
PDF
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
PDF
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
PDF
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 
REPORT: Heating appliances market in Poland 2024
SPIUG
 
Using Anchore and DefectDojo to Stand Up Your DevSecOps Function
Anchore
 
AI and Robotics for Human Well-being.pptx
JAYMIN SUTHAR
 
How-Cloud-Computing-Impacts-Businesses-in-2025-and-Beyond.pdf
Artjoker Software Development Company
 
Oracle AI Vector Search- Getting Started and what's new in 2025- AIOUG Yatra ...
Sandesh Rao
 
Tea4chat - another LLM Project by Kerem Atam
a0m0rajab1
 
Dev Dives: Automate, test, and deploy in one place—with Unified Developer Exp...
AndreeaTom
 
MASTERDECK GRAPHSUMMIT SYDNEY (Public).pdf
Neo4j
 
A Day in the Life of Location Data - Turning Where into How.pdf
Precisely
 
Accelerating Oracle Database 23ai Troubleshooting with Oracle AHF Fleet Insig...
Sandesh Rao
 
CIFDAQ's Market Wrap : Bears Back in Control?
CIFDAQ
 
Data_Analytics_vs_Data_Science_vs_BI_by_CA_Suvidha_Chaplot.pdf
CA Suvidha Chaplot
 
Orbitly Pitch Deck|A Mission-Driven Platform for Side Project Collaboration (...
zz41354899
 
The-Ethical-Hackers-Imperative-Safeguarding-the-Digital-Frontier.pptx
sujalchauhan1305
 
What-is-the-World-Wide-Web -- Introduction
tonifi9488
 
NewMind AI Weekly Chronicles - July'25 - Week IV
NewMind AI
 
Google I/O Extended 2025 Baku - all ppts
HusseinMalikMammadli
 
OFFOFFBOX™ – A New Era for African Film | Startup Presentation
ambaicciwalkerbrian
 
BLW VOCATIONAL TRAINING SUMMER INTERNSHIP REPORT
codernjn73
 
Event Presentation Google Cloud Next Extended 2025
minhtrietgect
 

Infrastructure as Code 101: Steve Tegeler + Nathan Ness, VMware

  • 1. © 2014 VMware Inc. All rights reserved. Infrastructure as Code 101 A Primer for Infrastructure Teams May 5, 2016 Steve Tegeler [email protected] @vstegeler Nathan Ness [email protected] @nvpnathan
  • 2. 2 Practice Infrastructure as Code Want to Understand Infrastructure as Code Better Help articulate and educate others Get some solid use cases
  • 3. 3 Who am I, and How did I learn about IaC? • Director of Pre-Sales engineering for OpenStack + VMware • Infrastructure Background – Compute Storage Networking Server Virt Network Virt (Nicira) • At Nicira our success was bound to the success of CMP/IaaS – CMP Drives Consumption of Virtual Networks • Watched a YouTube video and felt my career pivot
  • 4. 4 “Infrastructure in the Cloud Era" • 2009 Velocity Conference
  • 5. 5 Who am I, and How did I learn about IaC? • Director of Pre-Sales engineering for OpenStack + VMware • Infrastructure Background – Compute Storage Networking Server Virt Virt Networking • At Nicira realized our success was bound to the success of IaaS – CMP Drives the Consumption of Network • Watched a YouTube video and felt my career pivot • Must learn coding principles to stay relevant • OpenStack success is bound by the ability to consume it – IaC education/adoption will help
  • 6. 6 "Enable the reconstruction of the business from nothing but a source code repository, an application data backup, and bare metal resources.“ - Adam Jacob, CTO Chef Infrastructure as Code – Common Definition App Code Infrastructure Code Configuration Code Your Data App State Compute Network Security Storage
  • 8. 8 Infrastructure & ConfigurationInfrastructure & Configuration Typical CI Development Process Build/CI Source Code Management Repository Testing Frameworks Provisioning / Deployment 1. Commit/Check-in 2. Build & Test 4. Deploy vRA 3. Artifacts W W AA R Manual?
  • 9. 9 App Devs Ops Teams Network StorageCompute WW A A R Web 2 VMs, 2CPU, 2GB mem, 10GB disk, RHEL LoadBalancer Open 80,443 App 2 VMs 4CPU, 4GB mem, 30GB disk Open 22 internal only, 8443 from Web Request Infrastructure web_instance: webxyz flavor: m1.small image: RHEL-x86_64-chef network: web-net security: web-sec quantity: 2 -------<snip>---------- Web-net: web-net Subnet: 10.10.0.0 Mask: 255.255.255.0 Web-sec: name: web-sec in: allow: tcp: 22 out: allow: tcp: 80, 443 Describe Infrastructure Days & Variability Fast & Predictable flavor: m1.small Cpu: 2 Mem: 2 Disk: 10 Cloud APIs “Consumer”
  • 10. 12 Why Code is so Great for Infrastructure When things break, I can troubleshoot easily – Version Control Easily test infrastructure permutations - CPU/Mem/Storage/Net/Sec Re-useable I can build topology templates for apps – Fast & Consistent Configuration
  • 11. Application Anatomy The Various Code Used in Deployment
  • 12. 14 Application v12.34 Types of Code Which Make up an Application Application Code Infrastructure Code Configuration Code
  • 14. 16 Deployment Pipeline Infrastructure Site 1 Existing Business Apps Ultimate IaC Test – Day 0 CONFIDENTIAL App Code Infrastructure Code Configuration Code Your Data Source Code App_1 App_2 App_n Infrastructure Site 2 Your Data Business Apps Up! App_1 App_2 App_n R R UPS
  • 15. 17 Seems Like Utopia, Does it Actually Work? • If it doesn’t work, you are DOING IT WRONG – The more often you practice it, the more resilient it makes it (lifting weights) • Test it in a different OpenStack cloud – Considerations: Defcore compliant, feature set same?
  • 17. 19 Version Control • Definition: A system that records changes to a file or set of files over time so that you can recall specific versions later • Main Benefit: Complete visibility to any changes Application v12.34 Application Code Infrastructure Code Configuration Code
  • 18. 20 IaC_v123 • TCP 8081 IaC_v456 • TCP 8081 IaC_v457 • TCP 22, 8081 February March April May Day 2 Value: Incident, Cause Security Policy Incident/Audit Code Development Source Code diff
  • 19. 21 Use Cases for Infrastructure as Code • Test Firewall Changes • Test your application to see if it is IP address dependent – Change a subnet address range used (192.x.y.z 172.x.y.z) • Test different performance permutations – CPU – multi-threaded/scale out – Disk – SATA, SSD, etc • Rollback
  • 21. 23 IT, we have a Problem! • Infrastructure Teams SW development practices – Learn Version Control and ways to “Describe” Infrastructure • Devs Understand Infrastructure – Developers learn proper ways to deploy infrastructure “primitives” Developers Infra
  • 22. 24
  • 23. 25 Version Control App Code Infrastructure Code Configuration Code Application: GoReminder GoRem.v34 Ext Security Test (nmap) GoRem.v35 Open: 8080,22 Open: 8081 FAIL PASS! Go.v34 Heat_v34 Cook_v34 GoRem.v34 Go.v35 Heat_v35 Cook_v35 GoRem.v35 Security Testing a GoReminders Application