Share
Embed
Transcript
77 slides
-
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 -
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 -
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. -
Agenda 01 Start with why 02 State of the market
03 What’s next? -
Docker: the power of AND + + State of App
development Survey: Q1 - 2016 -
ClusterHQ Survey (in progress…) 36% 38% 74% chose speed of
delivery related responses -
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 -
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 -
Docker: driving force behind modern app initiatives Source: Docker, State
of App development Survey: Q1 - 2016 -
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...” -
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 -
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 -
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 -
Foundations and (anti-) lock-in CNCF, CFF, OCI, … • Help
vendors align & trust each other • Gives adopters assurance -
CNCF Mission & Membership “The CNCF will harmonize emerging technologies
and foster innovation in container packaged, dynamically scheduled, and microservices based application development and operations.” -
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 -
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, …) -
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 -
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 -
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 -
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 -
Docker has over 10K customers... • 10,000 cloud customers, 75+
F500 customers Source: Docker -
ClusterHQ Survey What container orchestration tools does your organisation use?
(check all that apply) -
Containers are in production Sept 2015, O’Reilly via Docker June
2016, ClusterHQ Survey 76% -
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 -
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 -
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 -
Microservices are on the rise… 3.66M Spring Boot: Monthly Maven
downloads Source: oss.sonatype.org, via Pivotal -
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 -
Cloud Foundry is on the rise... CF Summit 2016 -
2000 attendees 173 user groups, more than 33,400 individual members -
Cloud Foundry is on the rise... Idea -> Feature: Weeks
-> 2-3 days Application Scaling: Months -> minutes -
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 -
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 -
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 -
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) -
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 -
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! -
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 -
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 -
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 -
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 -
Evolution Genesis Custom Built Off the shelf Commodity Credit: Simon
Wardley Evolution commoditise exploit* -
Evolution Genesis Custom Built Off the shelf Commodity Credit: Simon
Wardley Evolution commoditise exploit* innovate -
Evolution Genesis Custom Built Off the shelf Commodity Credit: Simon
Wardley Evolution Value -
Evolution Genesis Custom Built Off the shelf Commodity Evolution commoditise
exploit Containers Container Orchestration In-house framework -
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 -
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 -
Value Chain extract Velocity DevOps Culture OODA Loop Microservices CI/CD
Microservices Platform Orchestration Ops Tools Registry Container Runtime IaaS -
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 -
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 -
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 -
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 -
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 -
Universal Scalability Law Credit: Neil Gunther Capacity (N) = N
1 +α(N-1) + β.N(N-1) coherence -
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 -
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 -
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