the cloud native journey
TRANSCRIPT
© Copyright 2015 Pivotal. All rights reserved. 1
The Cloud Native JourneyMatt Stine (@mstine)
Principal Engineer & Senior Product Manager
© Copyright 2015 Pivotal. All rights reserved. 2
WARNING: !
This may end up being a bit stream
of consciousness…
© Copyright 2015 Pivotal. All rights reserved.
My Cloud Native Journey
3
App Dev/Arch for 11 years
CLOUD NATIVE LAND
© Copyright 2015 Pivotal. All rights reserved. 4
I wrote a little cloud book…
Available to you compliments of Pivotal and O’Reilly! !Book Signing @ 10:00 AM: North Hall, Hall E (Hang Space) !Get the FREE e-book at http://bit.ly/cloud-native-book!
© Copyright 2015 Pivotal. All rights reserved. 5
“Software is Eating the World”
© Copyright 2015 Pivotal. All rights reserved. 6
Gartner predicts that by 2020, 75 percent of application purchases supporting digital business will be "build," not "buy."http://www.gartner.com/newsroom/id/3119717
© Copyright 2015 Pivotal. All rights reserved. 7
The ability to deliver software is no longer a differentiator.
© Copyright 2015 Pivotal. All rights reserved. 8
It is a basic requirement for survival.
© Copyright 2015 Pivotal. All rights reserved. 9
So what do the Cloud Natives do?
$3.5B valuation Financial Services
$3.5B valuation Travel & Hospitality
$3.5B valuation Transportation
$3.2B Acquisition by Google Home Automation
$20B valuation Entertainment
$26B valuation Tesla--Automotive
$6B $50B $41B
$25B $33.5B
© Copyright 2015 Pivotal. All rights reserved. 10
SPEED
UBIQUITY*
SCALE
SAFETY
(MOBILE)
© Copyright 2015 Pivotal. All rights reserved. 11
Continuous Delivery
© Copyright 2015 Pivotal. All rights reserved. 12
ContinuousDelivery
© Copyright 2015 Pivotal. All rights reserved. 13
ContinuouslyDeliverDay One Day Two and Beyond
© Copyright 2015 Pivotal. All rights reserved. 14
Operations is the Secret Sauce
© Copyright 2015 Pivotal. All rights reserved.
Continuously Delivered Microservices
15
Loosely coupled service oriented architecture with bounded contexts
If every service has to be updated in concert, it’s not loosely coupled!
If you have to know about surrounding services you don’t have a bounded context.
© Copyright 2015 Pivotal. All rights reserved. 16
Without taking steps to ensure fault tolerance, 30 dependencies each with 99.99% uptime would result in 2+ hours downtime/month (99.99%30 = 99.7% uptime = 2+
hours downtime in a month).
http://techblog.netflix.com/2012/02/fault-tolerance-in-high-volume.html
© Copyright 2015 Pivotal. All rights reserved. 17
Build Reliable Systems from
Unreliable Components
© Copyright 2015 Pivotal. All rights reserved. 19
© Copyright 2015 Pivotal. All rights reserved.
Microservices The Old Way
20
© Copyright 2015 Pivotal. All rights reserved. 21
Cloud Native is NOT:
• Configuring Infrastructure
• Orchestrating Containers
• Composing Distributed Systems
• Supporting Ad-Hoc General Purpose Automation
© Copyright 2015 Pivotal. All rights reserved. 22
https://twitter.com/littleidea/status/626767188653797376
© Copyright 2015 Pivotal. All rights reserved. 23
GREAT JOB PROVISIONING SERVERS THIS YEAR!…said no CIO ever.
© Copyright 2015 Pivotal. All rights reserved. 24
And they’re not going to say that about
containers either…
© Copyright 2015 Pivotal. All rights reserved. 25
© Copyright 2015 Pivotal. All rights reserved. 26
© Copyright 2015 Pivotal. All rights reserved. 27
I’ve built homegrown application platforms twice:
• The first took three years before it saw a production application.
• The second took two years.
•Maybe if I do it just two more times…
© Copyright 2015 Pivotal. All rights reserved. 28
I regret to inform you, but…
• You’re not that smart.
• You’re not different.
• You’re not special.
© Copyright 2015 Pivotal. All rights reserved. 29
10:1the ratio of app developers to platform developers
at “web scale” companies
© Copyright 2015 Pivotal. All rights reserved. 30
10:1this was also true of the two platforms I helped build
© Copyright 2015 Pivotal. All rights reserved. 31
UNDIFFERENTIATED HEAVY LIFTING
© Copyright 2015 Pivotal. All rights reserved. 32
© Copyright 2015 Pivotal. All rights reserved. 33
SIMPLE RULES
COMPLEX BEHAVIOR
EXPLICIT CONTRACTS
COMMODITY COMPONENTS
© Copyright 2015 Pivotal. All rights reserved. 34
© Copyright 2015 Pivotal. All rights reserved. 35
SIMPLE RULES
COMPLEX BEHAVIOR
EXPLICIT CONTRACTS
COMMODITY COMPONENTS
© Copyright 2015 Pivotal. All rights reserved. 36
SIMPLE RULES
COMPLEX BEHAVIOR
EXPLICIT CONTRACTS
COMMODITY COMPONENTS
Grab Dirt w/ Pheromone Build Bridge
Attach to Ant on Edge
1000’s of Ants
Hardwired into Brain
Colonies, Bridges, Rafts
© Copyright 2015 Pivotal. All rights reserved. 37
What if our platform worked this way?
© Copyright 2015 Pivotal. All rights reserved. 38
3-5 Different Server Builds
If your software doesn’t fit into one of these, your software is broken.
Zero Deviation or Customization
© Copyright 2015 Pivotal. All rights reserved. 39
PLATFORM IS
OMAKASE
© Copyright 2015 Pivotal. All rights reserved.
SPRING BOOT
40
OMAKASE TWELVE FACTOR APPS
http://start.spring.io
© Copyright 2015 Pivotal. All rights reserved.
SPRING CLOUD
41
http://cloud.spring.io
https://network.pivotal.io/products/p-spring-cloud-servicesOMAKASE DISTRIBUTED SYSTEMS
© Copyright 2015 Pivotal. All rights reserved.
SPRING XD
42
OMAKASE BATCH AND STREAM DATA PROCESSING
http://projects.spring.io/spring-xd
© Copyright 2015 Pivotal. All rights reserved. 43http://spring.io/platform
© Copyright 2015 Pivotal. All rights reserved. 44
PIVOTAL CLOUD FOUNDRY - OMAKASE RUNTIME PLATFORM
© Copyright 2015 Pivotal. All rights reserved. 45
If your software doesn’t fit into this platform, then your software is
probably broken.
© Copyright 2015 Pivotal. All rights reserved. 46
Polyglot Programming?
© Copyright 2015 Pivotal. All rights reserved. 47
SIMPLE RULES
COMPLEX BEHAVIOR
EXPLICIT CONTRACTS
COMMODITY COMPONENTS
© Copyright 2015 Pivotal. All rights reserved. 48
Simple Rules
• Boot Property Resolution
• Boot Config Precedence
• Circuit Breaker FSM
• Eureka Cache Server Resolution
• Buildpack Detect/Compile/Upload
• Java BP Memory Heuristic
• LRP/Task Lifecycle
• Desired/Actual State Convergence
• STDOUT/ERR Log Aggregation
• Routing Table Maintenance
© Copyright 2015 Pivotal. All rights reserved. 49
CONTRACTS
© Copyright 2015 Pivotal. All rights reserved.
Commodity Components?
50
THOUSANDS OF
MICROSERVICES!
© Copyright 2015 Pivotal. All rights reserved. 51
So what does a platform like this of allow you to do?
© Copyright 2015 Pivotal. All rights reserved.
#1: Get your head around Conway’s Law.
52
Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's
communication structure.
Melvyn Conway, 1967
© Copyright 2015 Pivotal. All rights reserved. 53
#2: Invoke the Inverse Conway Maneuver
© Copyright 2015 Pivotal. All rights reserved.
#3: Start Delivering Business Capabilities
54
Product Mgr UX Dev QA DBA
Sys Admin
Net Admin
Storage Admin
BUSINESS CAPABILITY TEAMS BUILDING MICROSERVICES PLATFORM OPERATIONS TEAM
Adapted from: http://www.slideshare.net/adriancockcroft/goto-berlin
Self Service
API
© Copyright 2015 Pivotal. All rights reserved. 55
But what if I don’t have a platform like this?
• Probably going to make some things too complicated/hard…
• Probably going to need specialization at multiple levels of your architecture…
• Probably going to stay stuck in or rebuild your silos…
© Copyright 2015 Pivotal. All rights reserved. 56
We need the platform to remind us:
•We’re not that smart.
•We’re not different.
•We’re not special.
© Copyright 2015 Pivotal. All rights reserved.
So we can get back to why we’re here…
57
© Copyright 2015 Pivotal. All rights reserved. 58
Game On
http://pivotal.io/cloud-native