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

Chef + Environments = Safer Infrastructure

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.

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 } }, }