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

Getting Into the Zero Downtime Deployment World

Getting Into the Zero Downtime Deployment World

Dev Day 2016 (Krakow, Poland)

Tugberk Ugurlu

September 16, 2016
Tweet

More Decks by Tugberk Ugurlu

Other Decks in Programming

Transcript

  1. Getting Into the Zero Downtime Deployment World Tugberk Ugurlu Redgate

    Software @tourismgeek tugberkugurlu.com #ABBDevDay https://flic.kr/p/fNTDM1
  2. #ABBDevDay Example HTTP APIs v1 Example Android iPhone Example Android

    Client Example Web Client Example HTTP APIs v1.1
  3. LB zleek-0 zleek-1 zleek-n mongodb neo4j elasticsearch rabbitmq recipe-generation-worker-0 recipe-sync-worker-0

    food-sync-worker-0 store-sync-worker-0 recipe-generation-worker-1 recipe-generation-worker-n recipe-sync-worker-n recipe-sync-worker-0 #ABBDevDay
  4. SemVer (semver.org) #ABBDevDay Patch No user facing changes Major Introducing

    incompatible changes Minor Add functionality in a backwards- compatible manner 2.4.6
  5. SemVer as Way of Application Versioning • Support 2 Major

    versions of the HTTP Service, not 1, not 3. • Define a support policy for support lifetime for versions #ABBDevDay
  6. example-api-v0-6327638 example-api-v0-7814219 example-api-v0-9528392 LB v0.example.com example-api- process example-api- process example-api-

    process example-api-v0-6786234 example-api-v0-3266280 example-api-v0-8429842 example-api- process example-api- process example-api- process
  7. Internal LB-1 LB-1 Internal LB-2 server1 server2 server3 server4 server5

    server6 server7 server8 server9 server10 client client client client client client #ABBDevDay
  8. example-api-v0-6327638 example-api-v0-7814219 example-api-v0-9528392 LB v0.example.com example Products example Products example

    Products example-api-v1-2276168 example-api-v1-5677802 example Products example Products LB v1.example.com example-api-v1-7182721 example Products
  9. #ABBDevDay v1 v2 Id Make Model Colour 1 Renault Clio

    Red 2 Mercedes GLA Black 3 Volkswagen Polo White 4 Toyota Yaris Yellow Id Make Model Colour 1 Renault Clio Red 2 Mercedes GLA Black 3 Volkswagen Polo White 4 Toyota Yaris Yellow
  10. Be Aware of the Context • Cookies • Sessions •

    Authentication Tokens #ABBDevDay
  11. Helpful Tools • Git (https://git-scm.com) • Travis CI (https://travis-ci.org) •

    Octopus Deploy (https://octopus.com) • HAProxy (http://haproxy.org) • node-semver CLI (http://bit.ly/1PO6hvR) • Docker (https://docker.com) • Docker Cloud (a.k.a. Tutum, http://bit.ly/1RYYtl2) • SQL Server Data Tools (SSDT, http://bit.ly/1P7qETh) • DLM Automation Tools from Redgate (http://bit.ly/1VQ2rDm) #ABBDevDay