devops columbus meetup kickoff - infrastructure as code
DESCRIPTION
Slides from the DevOps Columbus Meetup Kickoff meeting.TRANSCRIPT
July 11, 2013
DevOps Columbus Meetup
Agenda
• 5:30 – 6:00 – Meet, greet, and eat
• 6:00 – 6:15 – Welcome, introductions, and agenda
• 6:15 – 6:45 – Infrastructure as Code
• 6:45 – 7:00 – Meetup group logistics
• 7:00 – 7:30 – "Picks, Tips, and Protips" and then wrap-up.
“We are at our most productive when we share our thinking. One night of crazy brain-storming over a few beers is more likely to produce more exciting results than 20 years’ solitary study in the lab.”–Professor Howard Trevor Jacobs, Descartes Prize Winner
Read more at redmonk.com - http://goo.gl/FEJyIhttp://redmonk.com/jgovernor/2004/12/15/the-pub-is-the-place-for-creativity-and-innovation/
Who am I?
“Field Guy”
My agendaBootstrap MeetupsLearn moreShare experiences with people from diverse backgrounds
Introductions …~ 1m round the room brief intro, don’t be too shy
Who am I?
• Linux Engineer
• Operations
• Performance and Capacity
• Software Consulting
• Cloud Architect
• Opscode
• Buckeye, Maroon
• @mfdii, [email protected]
“Rules of Engagement”
3 Rules of DevOps Meetup
1st Rule:
Talk about DevOps Meetup
“Rules of Engagement”
Collaboration&
Community
“Rules of Engagement”
2nd Rule:
TALK about DevOps Meetup
“Rules of Engagement”
3rd Rule:
No Assholes
“Rules of Engagement”
Collaborate and debateNO disrespect
“Rules of Engagement”
“Rules of Engagement”
DevOps = Community
DevOps
What is DevOps
DevOps
Development + Operations
DevOps = CAMS
•Culture
•Automation
•Measurement
•Sharing
DevOps is not:
• A Job Description
• A marketing term
• A new product
• A problem
• A name for a team
• Is not just “Development + Operations”
“Infrastructure As Code” 101
Infrastructure IT is Complex
Items of Manipulation (resources)
•Nodes
•Networking
•Files
•Directories
•Symlinks
•Mounts
•Routes
•Users
•Groups
•Packages
•Services
•Filesystems
Application
See Node
Application
Application Database
See Nodes
Application
App Databases
See Nodes Grow
App Servers
App Databases
See Nodes Grow
App LB
App Servers
App Databases
See Nodes Grow
App LBs
App Servers
App Databases
See Nodes Grow
App LBs
App Servers
App DB Cache
App DBs
See Nodes Grow
App LBs
App Servers
App DB Cache
App DBs
See a Topology
Round Robin DNS
App Servers
App DB Cache
App DBs
Floating IP?
Yours is a snowflake
App LBs
App Servers
NoSQL
DB slaves
Cache
DB Cache
DBs
Grows in complexity
USA
EUR
AUS
Global domination
USA
EUR
AUS
How can this be abstracted AND represented?
Traditional Thinking Won’t Make the Grade …
Before discussing the future,
Let’s review the past.
More importantly why “traditional” enterprise technologies will not cut it.
1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 20151980 1981 1982 1983 1984 1985 1986 1987 1988 1989
Virtual Nodes
Physical Hardware
Coded Businesses = Unprecedented IT Complexity
1980Mainframe
1990Client/Server
2000Datacenter
2010+Cloud
Scale x Complexity > Skills
35
1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 20151980 1981 1982 1983 1984 1985 1986 1987 1988 1989
Virtual Nodes
Physical Hardware
Inflection Point Inspires … The coded business
Mainframe Client/Server Datacenter Future
Inflection point forces disruption.
Maturity of “Infrastructure As Code”
1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015
“In God we trust, all others bring DATA!!!” –W. Edwards Deming
http://radar.oreilly.com/2007/10/operations-is-a-competitive-ad.html
VS
Patterns of the Coded Business
• Enables Continuous Change
• Enforces Consistency
• Provides a Common Coded Platform For Applications and Infrastructure
• Leverages Scarce Talent Through Reuse
• Transcends Organizational Boundaries
The Result – IT enables Business Agility and becomes a strategic advantage rather than a cost center.
Business Agility
Development Velocity and Consistency
Continuous Delivery
Infrastructure
Automation
•A configuration management system (DSL)
•A library for configuration management
•A community, contributing to library and expertise
•A systems integration platform (API)
http://www.flickr.com/photos/asten/2159525309/sizes/l/
“Infrastructure As Code”
package { "apache2":
ensure => latest
}
service { "apache2":
ensure => running,
require => Package["apache2"],
subscribe => File[httpdconf],
}
Puppet
package "apache2" do
package_name node[:apache][:package]
action :install
end
template "/etc/www/configures-apache.conf" do
notifies :restart, "service[apache2]”
end
service “apache2”
Chef
Metaphor Attribution – Andrew Shafer, now of Rackspace
Dev Ops&
The Players
• Little bit weird• Sits closer to the boss• Thinks too hard
Don’t hate the player …
Metaphor Attribution – Andrew Shafer, now of Rackspace
Meet Dev
• Pulls levers & turns knobs
• Easily excited• Yells a lot in
emergenciesWhy you be hatin ? ! ?
Metaphor Attribution – Andrew Shafer, now of Rackspace
Meet Ops
Traditional Process
Dev’s job is to add new features.
Ops’ job is to keep the site stable and fast
Load Balancer
App Server
Database
Dev (shared) Dev - QA - UAT - Prod
Load Balancer
App Server App Server
Database
Load Balancer
App Server
Database
QA
Agility - Design vs Manufacturing
How ?
Dev ProdQA
Goal = Increase Velocity
Agility - Design vs Manufacturing
Load Balancer
App Server
App Server
Database
Load Balancer
App Server
App Server
Database
Load Balancer
App Server
App Server
Database
What ?
Step 1 – SCM and Developers
Application Devs
Infrastructure Devs
Software Configuration Management
(SCM)
Step 2 – Introducing the Build Stage
Software Configuration Management
(SCM)
Build
Pulling
Tag
PayloadN
Payload3
Payload2
Payload1
Changes in SCM triggers builds and testsApplicatio
n Devs
Infrastructure Devs
1
2….
Step 3 – “Infrastructure As Code” and the CD Process
Software Configuration Management
(SCM)
Build
Pulling
Tag
PayloadN
Payload3
Payload2
Payload1
Create Data (#)Upload Policies
Autodeploy to localhost
Request Portal
IAC
Autodeploy
Application Devs Infrastructure Devs
QA
DEV
…..
PROD
Promote
Promote
Latest Codebase and Build
1, 2, … N
…..
N
Builds
Update DEV
Stathy Touloumis
Twitter | IRC | github:
stathyinc
Michael Ducy
Twitter | IRC | github:
mfdii
Topic Brainstorming
•7:45 – 8:00 – Volunteers and Topics
•Frequency of meeting – 5th of every month?
•Solidify next few topics to cover
•Pick topic(s) and speaker(s) for the next meeting