AWS Cloud For Breakfast - Building Microservices in the Cloud
-
Upload
christian-deger -
Category
Software
-
view
104 -
download
0
Transcript of AWS Cloud For Breakfast - Building Microservices in the Cloud
![Page 1: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/1.jpg)
AWS Cloud for Breakfast | 27.04.2017 | Christian Deger | @cdeger
Highway to heavenBuilding microservices in the cloud
![Page 2: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/2.jpg)
Christian DegerChief [email protected]@cdeger
![Page 3: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/3.jpg)
Microservices on AWS?
![Page 4: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/4.jpg)
Speed
Independent deployable
Fast local decisionsAutonomous teams
Strong boundaries
Loosely coupled Technology diversity
Scale the organization
Why Microservices?
![Page 5: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/5.jpg)
Cloud =
no physical
limitations
![Page 6: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/6.jpg)
Agility
![Page 7: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/7.jpg)
Agility
• Technical agility
![Page 8: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/8.jpg)
Agility
• Technical agility
• Organizational agility
![Page 9: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/9.jpg)
2.4 million vehicles
![Page 10: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/10.jpg)
2000 servers
2 data centers
MTBF optimized
![Page 11: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/11.jpg)
Development
“Change”
Operations
“Stability”
Dev and Ops Silos
![Page 12: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/12.jpg)
![Page 13: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/13.jpg)
New
CEO
![Page 14: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/14.jpg)
talent?Do you attract
![Page 15: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/15.jpg)
21st centuryWhat does a
tech company
look like?
![Page 16: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/16.jpg)
![Page 17: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/17.jpg)
Great design
Universally connected
Mobile first
Instant business value
Massive data insight
Highly available
![Page 18: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/18.jpg)
good, but not great
Hmm, we are
![Page 19: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/19.jpg)
Rebooteverything
![Page 20: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/20.jpg)
.NET/Windows to JVM/Linux
Monolith to microservices
Data center to AWS
Devs + Ops to collaboration culture
Involve product people
![Page 21: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/21.jpg)
“Death Star” diagrams
Amazon 2008 Twitter 2013
![Page 22: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/22.jpg)
http://scs-architecture.org/
Self-contained systems = microservices flavor
Team 1
Team 2 Team 3
One business
capability is
owned, built
and run as an
SCS by one
team.
Self-contained
systems are
vertical slices
integrated at
the UI.
![Page 23: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/23.jpg)
Same
direction
![Page 24: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/24.jpg)
STRATEGIC
GOALSGoals of the business side
ARCHITECTURAL
PRINCIPLESHigh-Level Principles
DESIGN AND DELIVERY
PRINCIPLESTactical measures
REDUCE TIME TO MARKET
Establish fast feedback loops to learn, validate and
improve. Remove friction, hand-offs and undifferentiated
work.
MOBILE FIRST
Start small and use device capabilities.
SUPPORT DATA-DRIVEN DECISIONS
Provide relevant metrics and data for user and market
insights. Validate hypothesis for problems worth solving.
YOU BUILT IT, YOU RUN IT
The team is responsible for shaping, building, running and
maintaining its products. Fast feedback from live and
customers helps us to continuously improve.
ORGANIZED AROUND BUSINESS CAPABILITIES
Build teams around products not projects. Follow the
domain and respect bounded contexts. Make boundaries
explicit. Inverse Conway Maneuver.
LOOSELY COUPLED
By default avoid sharing and tight coupling.
No integration database. Don’t create the next monolith.
MACRO AND MICRO ARCHITECTURE
Clear separation. Autonomous micro services within the
rules and constraints of the macro architecture.
AWS FIRST
Favor AWS platform service over managed service,
over self-hosted OSS, over self built solutions.
DATA-DRIVEN/METRIC-DRIVEN
Collect business and operational metrics. Analyze, alert
and act on them.
ELIMINATE ACCIDENTAL COMPLEXITY
Strive to keep it simple. Don’t over-engineer.
Focus on necessary domain complexity.
AUTONOMOUS TEAMS
Make fast local decisions. Be responsible. Know your
boundaries. Share findings.
INFRASTRUCTURE AS CODE
Automate everything: Reproducible, traceable, auditable
and tested. Immutable servers.
CROSS-FUNCTIONAL TEAMS
Engineers from all backgrounds work together in
collaborative teams as engineers and share
responsibilities. No silos.
BE BOLD
Go into production early. Value monitoring over tests.
Fail fast, recover and learn. Optimize for MTTR not MTBF.
SECURITY, COMPLIANCE AND DATA PRIVACY
Build with least privilege and data privacy in mind.
Know your threat model. Limit blast radius.
COST EFFICIENCY
Run your segment in the right balance of cost and value.
ONE SCOUT IT
Foster collaboration. Harmonize and standardize tools.
Pull common capabilities into decoupled platform services.
Version 2.0Icons made by Freepik from www.flaticon.com are licensed under CC BY 3.0
BEST TALENT
Autonomy, purpose and mastery: We know why we do
things, we decide how to approach them and deliberately
practice our skills.
![Page 25: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/25.jpg)
Build
MeasureLearn
![Page 26: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/26.jpg)
Conway’s Law
“Organizations which design systems ...
are constrained to produce designs which
are copies of the communication
structures of these organizations.”
![Page 27: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/27.jpg)
Autonomous teams
business capabilitiesorganized around
![Page 28: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/28.jpg)
You build it,
you run it.
![Page 29: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/29.jpg)
We are all
engineers!
![Page 30: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/30.jpg)
Follow the
trail
![Page 31: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/31.jpg)
Guilds
Self-organizing; common interests; across teams
Macro architecture, infrastructure, front end, QA...
Beware of Mandelbrot teams
![Page 32: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/32.jpg)
Continuous
delivery
![Page 33: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/33.jpg)
Application code in
one repository per
service.
CI
Deployment
package as
artifact.
CD
Deliver package to
servers
Delivery pipeline—data center
![Page 34: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/34.jpg)
Application code
and infrastructure
specification in one
repository per
service.
CI
Deployment
package and
infrastructure
declaration as
artifact.
CD
1. Create or update
service infrastructure.
2. New instances pull
down package and
start application.
Delivery pipeline—AWS
![Page 35: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/35.jpg)
Nostaging
environment
![Page 36: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/36.jpg)
Cattle,not pets
![Page 37: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/37.jpg)
![Page 38: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/38.jpg)
Hamburgers,not cattle
![Page 39: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/39.jpg)
Event streaming
![Page 40: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/40.jpg)
Monitoring is the new testing
![Page 41: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/41.jpg)
015 Teams
045 Lambda functions
250 Repositories
075 Microservices
019 Systems
Status quo
![Page 42: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/42.jpg)
![Page 43: AWS Cloud For Breakfast - Building Microservices in the Cloud](https://reader033.fdocuments.us/reader033/viewer/2022051503/5a65b3c67f8b9a0a5f8b499f/html5/thumbnails/43.jpg)
Picture Credits
Wandergeselle by Sigismund von Dobschütz, licensed under CC-BY-SA-3.0
"HotWheels - '69 Ford Torino Talladega“ by Leap Kye, licensed under CC BY-ND 2.0
Enterprise IT Adoption Cycle by Simon Wardley under CC BY-SA 3.0
Leosvel et Diosmani by Ludovic Péron under CC BY-SA 3.0
Spare wheel by Brian Snelson under CC BY 2.0
Stopwatch by William Warby under CC BY 2.0