Intro to DevOps

Hi, my name is Dinshaw.

Computers

The cause of – and the solution to – all of life's problems.

A Brief History of Computing

Mainframe

Punch Cards

Personal Computers

Users . . . The Wall . . . Operations

Patrick Dubois

The 'Godfather' of DevOps

10+ Deploys Per Day:

Dev and Ops Cooperation at Flickr

John Allspaw and Paul Hammond

@ Velocity Conference 2009, San Jose

#devops

Culture

Tools

... habits [tools & culture] that allow us to survive in The Danger Zone.

TurboTax

165 new-feature experiments in the 3 month tax season

Economist conference 2011

Puppet: State of DevOps Report

'DevOps' up 50% on Linkedin keyword searches

Puppet: What is a DevOps Engineer?

  • Coding/Scripting
  • Strong grasp of automation tools
  • Process re-engineering
  • A focus on business outcomes
  • Communication & Collaboration

Questions?

Puppet & Chef

  • Configuration Management
  • Portable
  • Repeatable

Puppet

  • http://puppetlabs.com/
  • Ruby-like
  • Modules @ Puppet Forge
            
              package { "gtypist":
                ensure   => installed,
                provider => homebrew,
              }
              package { "redis":
                ensure   => installed,
                provider => homebrew,
              }
            
          

Chef

  • http://www.getchef.com/
  • Opscode
  • Ruby
  • Cookbooks @ Opscode Community
            
              package "mysql" do
                action :install
              end

              package "redis" do
                action :install
              end
            
          

Vagrant

http://www.vagrantup.com/

            
              Vagrant.configure do |config|
                config.vm.provision "puppet" do |puppet|
                  puppet.manifests_path = "my_manifests"
                  puppet.manifest_file = "default.pp"
                end
              end
            
          

You build it; you run it.

Deliver working code AND the environment it runs in.

T.D.D.

"If you tell the truth, you don't have to remember anything."
- Mark Twain

Dev and Test are no longer separable

What we need from Ops

  • One button environment
  • One button deploy

First Steps:

  • Automate something simple
  • Automate something not-so-simple
    • Development machine configuration
    • Production configuration

Questions?

Google SRE

Hand-off Readiness Review

  • Types/Frequency of defects
  • Maturity of monitoring
  • Release process

Netflix: Chaos Monkey

April 21st, 2011 Amazon Web Service outage

Netfilx maintained availability

Twitter Murder!

40 minute to 12 seconds!

ChatOps at Github

Automating common operational tasks with Hu-Bot

Amazon @ O'rily Velocity Conf. 2011

  • A deploy every 11.6 seconds
  • Max deployments per hour: 10,000
  • 30,000 hosts simultaneously receiving a deployment

Intro to DevOps

Dinshaw Gobhai | dgobhai@constantcontact.com