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

DevOps at Google-Speed & Tools for You

DevOps at Google-Speed & Tools for You

from Google Cloud Platform Live 2014

Kazunori Sato

April 24, 2014
Tweet

More Decks by Kazunori Sato

Other Decks in Technology

Transcript

  1. DevOps at Google-Speed & Tools for You Rae Wang Product

    Manager Chris Smith Tech Lead/Manager
  2. Agenda Intro - DevOps at Google Access your code Deploy

    your app CLI Made Easy Q&A 1 2 3 4 5
  3. Developer Tooling Organize software development @ Google and for the

    world and make it fast, scalable, and fun Engineers focus on code • Write code • Understand code • Source Control • Plan work Getting code out the door just works • Scalable Builds • Automated Tests • Reliable Releases Images by xkcd.com
  4. • Recipe for making software • Express relationships between libraries

    & binaries • Fast feedback Building at Google Getty Images
  5. • Test the entire codebase after every repository update •

    Makes testing available before submit • Easy test environment management • Automated web app testing Testing at Google
  6. Let’s talk about code • Single monolithic code tree •

    Fast, no-downtime access to code • Merge/integrate early and often • Code open to modification & experimentation • Variety of languages Getty Images
  7. Let’s talk about code • Globally analyze and refactor code

    • Answer interesting questions about who uses my APIs & libraries • Easy rollback when it doesn’t work • Help fix other engineer’s bugs • Mandatory Code review Getty Images
  8. The numbers • 800k builds • 2+ petabytes of build

    outputs • 75+ million test cases run • 14K+ users generating 25K changelists Source: Google internal data Getty Images
  9. • Collaboration and co-development • Sharing between products and teams

    (tools, libraries, services) • One size does not fit all • Dogfooding: use it ourselves to be more productive To be a Google engineer
  10. • No matter how fast, it is never fast enough

    • Keeping up with change • Quality processes - help and hurt • Finding and fixing bugs is tough for us too Our struggles Getty Images
  11. • Enable you to focus on code with good Dev

    Ops • Make your service better • Grow an ecosystem for all You deserve better Getty Images
  12. Agenda Intro - DevOps at Google Deploy your app CLI

    Made Easy Q&A 1 3 4 5 Access your code 2
  13. DevOps on the Go Culprit Code Identification Deeper Code Understanding

    Your code should be accessible from where you are. You want to see production logs and metrics linked to your code Diffing between deployments should be easy and fast Access Your Code
  14. Access Your Code • GCP hosted repos • Source viewer

    • File editing • Commit history • Log to source linking • Code diff • Deployment diff Runtime & Code Easy Diff Tools Code in the Cloud
  15. Agenda Intro - DevOps at Google Access your code CLI

    Made Easy Q&A 1 2 4 5 Deploy your app 3
  16. Reliable Visible Fast Don’t want to be paged for bringing

    down production Want to see new features and fixes in live site in minutes, not hours or days. Know where your changes are and what got deployed when Your Release, Your Way You should be able to decide how to release your apps Deploy Your App
  17. Deploy Your App: Demo Logs Commit Git Repo on GCP

    Push to Deploy Jenkins Build, Test, Deploy Status in UI/CLI Commit GitHub Repo GCS
  18. • Push to Deploy • Build • Test • Deploy

    Automated Visible • Notifications • Status & Output • History • Link to Commits • Hosted Jenkins • Language Support • Task selection Customizable Deploy Your App
  19. Agenda Intro - DevOps at Google Access your code Deploy

    your app Q&A 1 2 3 5 CLI Made Easy 4
  20. Get started and stay up-to-date “One ring to rule them

    all...” Easy to learn and use Easy to install, set-up and maintain, for any environment that you work in. Familiar and consistent with GUI and API You should be able to perform all the operations from CLI CLI Made Easy
  21. CLI Made Easy • Single-line install • Component manager •

    Auto-update notifications • Environment set- up Get Started (and stay up to speed) Usability • Command autocompletion • Unified help • Consistent and uniform syntax • Single SDK for all Cloud tools gcloud app gcloud sql ... Google Cloud-wide
  22. Agenda Intro - DevOps at Google Access your code Deploy

    your app CLI Made Easy Q&A 1 2 3 4 5