Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Chef + Environments = Safer Infrastructure

Avatar for Seth Vargo Seth Vargo
January 08, 2013

Chef + Environments = Safer Infrastructure

This is for the talk I gave at DevOps DC on 1/8/13. It discusses how to migrate a change from development, staging, and finally production with cookbook versioning and rollbacks.

Avatar for Seth Vargo

Seth Vargo

January 08, 2013
Tweet

More Decks by Seth Vargo

Other Decks in Technology

Transcript

  1. { "name" : "production", "description" : "Production cluster in EC2",

    "override_attributes" : { ... }, "default_attributes" : { ... } }
  2. { "name" : "production", "description" : "Production cluster in EC2",

    "cookbook_versions" : { "passenger_apache2" : "0.99.4" }, "override_attributes" : { ... }, "default_attributes" : { ... } }
  3. { "name" : "staging", "description" : "Production cluster in EC2",

    "cookbook_versions" : { "passenger_apache2" : "0.99.4" }, "override_attributes" : { ... }, "default_attributes" : { ... } }
  4. { "name" : "development", "description" : "Production cluster in EC2",

    "cookbook_versions" : { ... }, "override_attributes" : { ... }, "default_attributes" : { ... } }
  5. { "name" : "staging", "description" : "Production cluster in EC2",

    "cookbook_versions" : { "passenger_apache2" : "0.99.4" }, "override_attributes" : { ... }, "default_attributes" : { ... } }
  6. { "name" : "staging", "description" : "Production cluster in EC2",

    "cookbook_versions" : { "passenger_apache2" : "0.99.4" }, "override_attributes" : { ... }, "default_attributes" : { ... } }
  7. { "name" : "staging", "description" : "Production cluster in EC2",

    "cookbook_versions" : { "passenger_apache2" : "1.1.0" // major version bump }, "override_attributes" : { ... }, "default_attributes" : { ... } }
  8. { "name" : "production", "description" : "Production cluster in EC2",

    "override_attributes" : { "passenger" : { "version" : "2.1.4" } }, }
  9. { "name" : "production", "description" : "Production cluster in EC2",

    "override_attributes" : { "passenger" : { "version" : "2.1.4" } }, }
  10. { "name" : "production", "description" : "Production cluster in EC2",

    "override_attributes" : { "passenger" : { "version" : "2.1.4" } }, }
  11. { "name" : "production", "description" : "Production cluster in EC2",

    "override_attributes" : { "passenger" : { "version" : "3.0.18" // major version bump } }, }