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

Starting Over: Designing a new server environment from scratch using lessons of old environments

Starting Over: Designing a new server environment from scratch using lessons of old environments

How we set about using new tools to create a new server environment from scratch.

Lisa Seelye

January 20, 2016
Tweet

More Decks by Lisa Seelye

Other Decks in Technology

Transcript

  1. Starting Over Designing a new server environment from scratch using

    lessons of old environments Me: Lisa Seelye, @thedoh FreshBooks, Operations 1
  2. Ops has no place to test • It is risky

    to deploy changes • High risk deployments • Development bottleneck 4
  3. Collaboration is hard • Too many source control repositories (repos)

    • Complex workflow • Ops testing bottleneck 5
  4. Technical Debt • Overly complex code • Comes from unplanned

    organic growth • Difficult to pay down • Makes life tough 6
  5. Old versions of tools 7 • Old version is unsupported

    • Upgrading in old environment is high risk • New version has killer features
  6. Git, for source control • Source control software. Wildly popular

    • Paired with the GitHub GUI to ease management • Used throughout FreshBooks • Supports our workflow 10
  7. Testing with Vagrant and beyond • Easy to develop and

    test locally • Larger test environment to fit all the pieces together 11
  8. Puppet • Configuration management tool. Widely adopted • Ensures our

    config is always applied • One tool amongst many of its kind • Deep history within Ops and FreshBooks using Puppet 13
  9. • Integrate them from the start • Each environment must

    have a purpose • Leverage tools to get value out of the complexity Life with our many environments 14