Save 37% off PRO during our Black Friday Sale! »

Making Sense of it All

Making Sense of it All

ContainerSched 2016 keynote talk

6fb292826ed5ca167629b80525873651?s=128

Adrian Colyer

June 09, 2016
Tweet

Transcript

  1. Making sense of it all Adrian Colyer, Venture Partner, Accel

    @adriancolyer
  2. Disclosure Accel is an investor in… • ClusterHQ • CoreOS

    • Skipjaq • Sysdig • Weaveworks I am an advisor to… • Atomist • ClusterHQ • Skipjaq • Weaveworks I have previously held CTO roles at: • SpringSource • VMware • Pivotal
  3. Thank you… • Derek Collison, Apcera • David Dooling, Atomist

    • Deepak Singh, Aaron Kao, AWS ECS • John Gossman, Azure • Michael Ferranti & Mohit Bhatnagar, ClusterHQ • Scott Johnston, Docker • Don Duet, Devin Redmonds, Goldman Sachs • David Aronchick, Google Kubernetes • Sam Newman • James Watters, Pivotal • Fintan Ryan, Redmonk
  4. Thank you... • Rob Harrop, Skipjaq • Joe Baguley, VMware

    • Alexis Richardson, Mathew Lodge, Weaveworks • Joe Beda, James Cameron, Jake Flomenberg, Ping Li, Accel The bad bits are all mine.
  5. Agenda 01 Start with why 02 State of the market

    03 What’s next?
  6. Why? “Move quickly, but safely” (David Aronchick) Platform portability Cost

    efficiency 1 2 3
  7. Docker: the power of AND + + State of App

    development Survey: Q1 - 2016
  8. ClusterHQ Survey (in progress…) 36% 38% 74% chose speed of

    delivery related responses
  9. SPEED “In the first half of 2014 we thought the

    market would be driven by increased utilization, it turned out it was SPEED...” Scott Johnston, Docker
  10. Components of Agility... Agility Latency Throughput Scalability Delivery Pipeline Value

    chain Team Structure Architecture Contention Coherence (of your organisation and processes, not just your software!) CI/CD DevOps Containers Microservices Cloud How fast can you deliver software? + How fast can you respond to runtime changes? Orchestration
  11. Docker: driving force behind modern app initiatives Source: Docker, State

    of App development Survey: Q1 - 2016
  12. Understanding portability So there’s this thing called the public cloud...

    FROM: “we can’t move to the cloud because…” TO: “we’re moving to the public cloud, so we need to fix these issues...”
  13. The drive to the cloud “Our goal is to be

    [able to be] 100% on the public cloud (any cloud). It’s just obvious. But we can’t be only on one public cloud…” - Don Duet, Head of Technology, Goldman Sachs Typical enterprise target: AWS + 1 + Data centres
  14. None
  15. Symbiosis Containers are the portability layer that enable enterprises to

    move aggressively towards public cloud with confidence. “We’re attaching to massively funded cloud projects left, right, and center...” - Scott Johnston, Docker
  16. How portability drives Azure Container Service strategy • Microsoft’s container

    efforts are open and standard ◦ Partnered with Mesosphere and Docker on Azure rather than develop own schedulers ◦ ACS is Linux-first, with Windows coming ◦ Windows support is being done by contribution to Docker OSS “This is important to customers because in the fast-changing cloud ecosystem they want open systems without lock-in…” - John Gossman, Microsoft Azure Architect
  17. Foundations and (anti-) lock-in CNCF, CFF, OCI, … • Help

    vendors align & trust each other • Gives adopters assurance
  18. CNCF Mission & Membership “The CNCF will harmonize emerging technologies

    and foster innovation in container packaged, dynamically scheduled, and microservices based application development and operations.”
  19. Case study: Goldman Sachs Top three initiatives: 1. Velocity of

    Change 2. Private to Public 3. Proprietary to Open Scale of the challenge: • 8K technical employees • 5K applications • 75K database instances • 39 PB data (59% growth) • 165K servers Vast majority already on internal cloud infrastructure Source: Don Duet, GS European Tech Founders Summit May 2016
  20. Case Study: Skipjaq - Docker + Kubernetes Why containers? •

    Hide underlying platforms (AWS, GCP, Azure, and vSphere) • Flexible deployment topologies • Local development • Decouple packaging and topology Why kubernetes? • Needed to be universal, not just AWS (e.g. ECS) • Liked the pluggability of Kubernetes (logs, volumes, network, …)
  21. Case Study: Skipjaq “The initial experience of going from no

    containers to basic kubernetes was incredibly smooth. It took about two weeks and we had a full stack running… All-in-all it was about seven weeks to get fully-integrated with kubernetes for volume management, service handling, log shipping, monitoring.” - Rob Harrop, CTO
  22. Case Study: Skipjaq “We have containers from the developer desktop

    right through to production. The same containers can be arranged in clusters of varying size on platforms ranging from AWS to vSphere. We've isolated all the platform-specific bits into the thin layer that is the K8S cluster. Even their K8S tooling makes cluster config easy.” - Rob Harrop, CTO
  23. Case Study: Atomist “We wanted a platform suited for the

    cloud, focusing mostly on resiliency to failure and evolvability. We also wanted an active, preferably open platform. Kubernetes and Docker Swarm rose to the top of the list… Kubernetes appeared to be geared for large scale deployments and have better engineering around ops. Docker was more geared towards developers…” - David Dooling, Atomist
  24. State of the Market • Everyone is winning! (A rising

    tide…) • Containers are in production • Revenue is now flowing • Typical (enterprise) customer journey is 18 - 24 months
  25. Docker has over 10K customers... • 10,000 cloud customers, 75+

    F500 customers Source: Docker
  26. … and a thriving ecosystem Source: Docker

  27. Kubernetes is on the rise Stack overflow questions (via Chris

    Gaun)
  28. Kubernetes is on the rise (via Chris Gaun, Apprenda)

  29. Kubernetes is on the rise

  30. Yet Docker... vs

  31. Docker Survey 2016

  32. ClusterHQ Survey What container orchestration tools does your organisation use?

    (check all that apply)
  33. Containers are in production Sept 2015, O’Reilly via Docker June

    2016, ClusterHQ Survey 76%
  34. Amazon ECS “A growing number of AWS customers across healthcare,

    hospitality, media and entertainment, and other industries have embraced Docker and committed to going into production. We built Amazon EC2 Container Service (ECS) to be the best place for these customers to run Docker in production securely and at scale.” - Deepak Singh, Amazon ECS. • ECS is a result of the traction the AWS team were already seeing • Container management, scheduling, and deep integration with AWS platform • Examples: Linden Lab, Empire
  35. Amazon ECS Partner Program

  36. Azure Container Service • Has only been generally available for

    a few weeks • Serious usage already - sustained large deployments • Usage going up every day, not dropping at weekends “The team is also getting far more inquiries that we can handle quickly, so interest is higher than anticipated” - John Gossman, Microsoft Azure Architect
  37. Mesos is on the rise “Uber has recently started transitioning

    most of its services, including the storage services, to run on top of Mesos” - Matthias Eichstaedt “Service style applications, batch jobs, and stream processing alike, from a variety of use cases across Netflix rely on executing container based applications in multi-tenant clusters powered by Mesos and Fenzo.” - Sharma Podila, Netflix
  38. Microservices are on the rise…

  39. Yet Docker...

  40. Docker Survey 2016

  41. ClusterHQ Survey

  42. Microservices are on the rise… 3.66M Spring Boot: Monthly Maven

    downloads Source: oss.sonatype.org, via Pivotal
  43. Microservices and containers “We’ve seen the whole trend towards microservices

    and Docker come up together. Customers tell us that they value the scale and agility provided by the AWS platform when coupled with the developer productivity benefits of Docker’s dependency management and deployment capabilities.” - Deepak Singh, Amazon ECS
  44. Cloud Foundry is on the rise... CF Summit 2016 -

    2000 attendees 173 user groups, more than 33,400 individual members
  45. 45

  46. Cloud Foundry is on the rise... Idea -> Feature: Weeks

    -> 2-3 days Application Scaling: Months -> minutes
  47. Typical customer journey “We see about 20% top-down, and 80%

    bottoms-up adoption in enterprises” - Scott Johnston, Docker 1 2 3 LAND: lift-and-shift existing app (no microservices), adopt CI etc. 6-9 months PRODUCTION: getting the first app from there into production, about 6 months PLATFORM: floodgates open and big re-platforming project begins... 12-15 months
  48. Typical customer journey: Kubernetes example LAND: starts with one app

    in one data center EXPAND 1: several apps within one data center EXPAND 2: bridge several data centers “[This customer] wants to leverage existing data centers (each of which have thousands of nodes) while increasing their cloud footprint. They will migrate everything to Kubernetes running everywhere over the next two years.” - David Aronchick, Google
  49. Typical customer journey: Cloud Foundry example TOP-DOWN enterprise sale, it’s

    all about apps, not containers... Once the platform is in… • Repeated experience: 500+ devs, 1,000+ apps in first couple of months • V. low ops overhead: e.g. 1500 apps onboarded in 6 months, < 2 people to run
  50. Investment funds continue to flow... • Weaveworks $15M Series B

    (May) • CoreOS $28M Series B (May) • Rancher Labs $20M Series B (May) • Pivotal $253M Series C (May) (+ $400M debt/equity swap) • Sysdig $15M Series B (April) • Docker $95M Series D (April) • Mesosphere $73.5M Series C (March)
  51. What’s Next? Right now we’re seeing this change from a

    simple “let’s run containers!” to “we’re building apps… and of course we’re using containers.” - John Gossman, Microsoft Azure “We’re seeing a shift with many customers starting with the application, not the infrastructure.” - Deepak Singh, Amazon ECS
  52. What’s Next? • A heterogeneous world • The value line

    moves up • Giving customers what they want (delivering on velocity and agility) ◦ Containers are the easy part!
  53. Multi-cloud: by accident or by design... “Bridging multi-cloud and on-premise

    environments is the reality for enterprises, for many years to come.” - David Aronchick
  54. Multi-cloud challenges • “Any cloud” approach needs a portability layer

    ◦ By definition, not tied to any one cloud vendor • An important ‘cloud’ is the developer laptop • Applications may run in several different environments as part of the development lifecycle ◦ Even if production migration is rarer • Need to consider not just compute, but also networking and storage ◦ Data gravity vs data agility
  55. Multi-platform? The Platform Wars What kind of platform? Bottoms-up? DevOps,

    PlatformOps, AppOps, & IT Orchestration is a layer “The Platform Wars, Begun They Have” - Alexis Richardson
  56. Deployment granularity Physical Virtual Container Unikernel Lambda Becoming finer-grained Enterprise

    may well end up with all of these! Mixed deployments, E.g. GS, NOTHS
  57. Evolution Genesis Custom Built Off the shelf Commodity Credit: Simon

    Wardley
  58. Evolution Genesis Custom Built Off the shelf Commodity Credit: Simon

    Wardley Evolution commoditise exploit*
  59. Evolution Genesis Custom Built Off the shelf Commodity Credit: Simon

    Wardley Evolution commoditise exploit* innovate
  60. Evolution Genesis Custom Built Off the shelf Commodity Credit: Simon

    Wardley Evolution Value
  61. Evolution Genesis Custom Built Off the shelf Commodity Evolution commoditise

    exploit Containers Container Orchestration In-house framework
  62. Evolution: death of the in-house framework Genesis Custom Built Off

    the shelf Commodity Evolution commoditise exploit Containers Container Orchestration In-house framework Value Competitive advantage becomes competitive disadvantage
  63. Giving customers what they want... Velocity/Agility Latency Throughput Scalability Delivery

    Pipeline Value chain Team Structure Architecture Contention Coherence (of your organisation and processes, not just your software!) CI/CD DevOps Containers Microservices Cloud How fast can you deliver software? + How fast can you respond to runtime changes? Orchestration
  64. Value Chain extract Velocity DevOps Culture OODA Loop Microservices CI/CD

    Microservices Platform Orchestration Ops Tools Registry Container Runtime IaaS
  65. Wardley Map Genesis Custom Built Off the shelf Commodity Value

    Velocity DevOps Culture OODA Loop Microservices CI/CD Microservices Platform Orchestration Ops Tools Registry Container Runtime IaaS
  66. Wardley Map Genesis Custom Built Off the shelf Commodity Value

    Velocity DevOps Culture OODA Loop Microservices CI/CD Microservices Platform Orchestration Ops Tools Registry Container Runtime IaaS Data Agility App Ops Policy
  67. Wardley Map Genesis Custom Built Off the shelf Commodity Value

    Velocity DevOps Culture OODA Loop Microservices CI/CD Microservices Platform Orchestration Ops Tools Registry Container Runtime IaaS Data Agility App Ops Policy
  68. Wardley Map Genesis Custom Built Off the shelf Commodity Value

    Velocity DevOps Culture OODA Loop Microservices CI/CD Microservices Platform Orchestration Ops Tools Registry Container Runtime IaaS Data Agility App Ops Policy
  69. Zero to one is still too hard Monolith Monolith usvc

    usvc
  70. Velocity vs Complexity 1 x monolith x 20-30 microservices x

    2-3 container images per service x 1-n instances per role x 1-2 concurrent versions x f feature flags/ A-B / MAB x multiple deploys/ day Death star
  71. Universal Scalability Law Credit: Neil Gunther

  72. Universal Scalability Law Credit: Neil Gunther Capacity (N) = N

    1 +α(N-1) + β.N(N-1) coherence
  73. Erdös and Rényi n nodes and m links Phase transition

    at m = n/2 -> Giant component All nodes connected to each other by short paths, degree of separation grows slowly
  74. Microservices challenges: thoughts from Sam Newman

  75. Cognitive load Source: Adrian Cockcroft

  76. Problems that remain • Security is a mess • Understanding

    what services depend on what other services is something everyone seems to be hand rolling • Even basic things like knowing who to talk to about a service is difficult in larger organisations • Very little is being done to help developers, outside of platforms that make things easier to deploy • Data is still problematic - replication, and moving process to data
  77. Recap 01 Start with why: velocity, portability, efficiency 02 State

    of the market: rising tide, moving to production, two-year journey 03 What’s next? : heterogeneity, value line, delivering on the promise