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

Moving Data Centers is Scary, Make it Less Scary with Chef!

Moving Data Centers is Scary, Make it Less Scary with Chef!

"You should never rewrite your whole application" is a common bit of wisdom in the programming world. But what about rebuilding your entire data center and application on a new platform? The Behance Team at Adobe decided to move from the comfortable world of a physical data center to "The Cloud". We decided that adopting Chef was the only way to make this happen. In this talk you'll hear how the Ops and Quality Engineering teams joined forces to convert bash scripts - and the bash mentality - to Chef. We'll talk about the decision making process and some of the pitfalls we encountered. We will go in to detail on how we use Chef to build our development, QE, and staging environments so that the entire development team can dogfood our cookbooks before they reach production.

Manny Toledo

April 16, 2014
Tweet

Other Decks in Technology

Transcript

  1. MOVING DATA CENTERS IS SCARY, MAKE IT LESS SCARY WITH

    CHEF! ! U-HAUL NOT INCLUDED. // MANNY TOLEDO @MTLDO // CHRIS FORTIER @CFORTIER https://flic.kr/p/5mj9gS
  2. WHAT IS BEHANCE? The leading online platform to showcase &

    discover creative work. The creative world updates their work in one place to broadcast it widely and efficiently. Companies explore the work and access talent on a global scale.
  3. THE QEOPS TEAM Sounds suspiciously like “DevOps”. It’s what happens

    when QE and Ops work together on the same project.
  4. It takes a family of three to care for a

    single puppy, but a few cowboys can drive tens of thousands of cows over great distances. “ ” —Joshua McKenty, CTO of Piston Cloud
  5. Need to maintain current infrastructure Need to build new products

    in AWS Need to migrate current infrastructure Need Development and QE environments ONE SET OF COOKBOOKS FOR ALL
  6. Test-Suite Samples suites: - name: bodega-stage-aws-php55 provisioner: client_rb: environment: "stage-aws"

    run_list: - recipe[bebootstrap::default] - recipe[bebodega::default] attributes: authorization: sudo: users: [ "jenkins" ] be: location: "aws" php: version: "5.5" bedatadog: apache: true mondo: true mysql: true suites: - name: bodega-stage-rax-php54 provisioner: client_rb: environment: "stage-aws" run_list: - recipe[bebootstrap::default] - recipe[bebodega::default] attributes: authorization: sudo: users: [ "jenkins" ] be: location: "rax" php: version: "5.4" bedatadog: apache: true mondo: true mysql: true
  7. I need new hotness for development! “ ” —RANDOM DEVELOPER

    Yeah, we can make it happen. “ ” —OPERATIONS
  8. ! Code wins arguments Chef is idempotent, your cookbooks might

    not be Treat servers as ephemeral Lock environments
  9. THANK YOU! MANNY TOLEDO // @MTLDO CHRIS FORTIER // @CFORTIER

    Speaker Hours: ! Right now. In the Marina Room.