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

Why Docker at Betsson Tech

Why Docker at Betsson Tech

Roger Johansson

February 06, 2017
Tweet

More Decks by Roger Johansson

Other Decks in Programming

Transcript

  1. Scaling the monolith A monolithic application puts all its functionality

    into a single process… …and scales by replicating the monolith on multiple servers -Martin Fowler, James Lewis
  2. Introducing SOA Instance 1 Instance 2 Instance 3 Customer Gaming

    Campaigns … Customer Gaming Campaigns … Customer Gaming Campaigns … Still pretty darn big services
  3. Scaling Microservices A microservice architecture puts each element of functionality

    into a separate service… …and scales by distributing these services across servers, replicating as needed -Martin Fowler, James Lewis
  4. Service Discovery Service A3 Service A2 Service A1 Service B2

    Service B1 Service B3 Service Registry
  5. ?

  6. Infrastructure Host OS Bin/Libs App A Bin/Libs App A Bin/Libs

    App A Container Engine Host OS Hypervisor Guest OS Guest OS Guest OS Bin/Libs App A Bin/Libs App A Bin/Libs App A Infrastructure Waste / Cost
  7. Why Cluster Schedulers? Server 2 Docker Login Registration Customer Data

    Server 1 Docker Registration Registration …. Server 3 Docker Login …. ….
  8. Cluster Schedulers Shared pool of resources Docker Login Registration Customer

    Data Docker Registration Registration …. Docker Login …. ….
  9. Service Discovery inside a cluster Shared pool of resources Docker

    Login Registration Customer Data Docker Registration Registration …. Docker Login …. …. Service Discovery
  10. Hybrid Environment Shared pool of resources Docker Login Registration Customer

    Data Docker Registration Registration …. Service Discovery Server 3 Legacy Service …. ….
  11. Context Aware Services Shared pool of resources Docker Login Registration

    Customer Data Docker Registration Registration …. Docker Login …. …. Bets10 – VIP Bets10 – Default
  12. Aspects to consider Organizational decisions • Cluster Schedulers, Kubernetes, Mesos,

    Swarm, Cattle etc? • Containers for legacy apps, Windows Containers? • The RFC process, can we do better? • Private Registry, access to Docker Hub?
  13. Aspects to consider Architecture • Communication and discovery between container

    and non-container based services • Context aware services • Footprint. .NET gives huge images • Automated development environments
  14. Function as a Service Functions Application Runtime - Operating System

    Virtualization Hardware IaaS Functions Application Runtime Containers Operating System Virtualization Hardware CaaS Functions Application Runtime Containers Operating System Virtualization Hardware PaaS Functions - Runtime Containers Operating System Virtualization Hardware FaaS Customer Managed Abstracted by Vendor This will become mainstream in a few years