Submit Search
Upload
Cloud Native Architecture Patterns Tutorial
•
22 likes
•
5,654 views
Matt Stine
Follow
As presented at the 2017 O'Reilly Software Architecture Conference in New York City.
Read less
Read more
Software
Report
Share
Report
Share
1 of 157
Download now
Download to read offline
Recommended
Présentation du projet IPTV
Présentation du projet IPTV
Mohammed JAITI
Devops Devops Devops
Devops Devops Devops
Kris Buytaert
Introduction to IAC and Terraform
Introduction to IAC and Terraform
Venkat NaveenKashyap Devulapally
Terraform
Terraform
Pathum Fernando ☁
DevOps and Tools
DevOps and Tools
Mohammed Fazuluddin
IPTV Security
IPTV Security
M.Syarifudin, ST, OSCP, OSWP
DevOps Engineer Day-to-Day Activities
DevOps Engineer Day-to-Day Activities
Intellipaat
Présentation DEVOPS.pptx
Présentation DEVOPS.pptx
boulonvert
Recommended
Présentation du projet IPTV
Présentation du projet IPTV
Mohammed JAITI
Devops Devops Devops
Devops Devops Devops
Kris Buytaert
Introduction to IAC and Terraform
Introduction to IAC and Terraform
Venkat NaveenKashyap Devulapally
Terraform
Terraform
Pathum Fernando ☁
DevOps and Tools
DevOps and Tools
Mohammed Fazuluddin
IPTV Security
IPTV Security
M.Syarifudin, ST, OSCP, OSWP
DevOps Engineer Day-to-Day Activities
DevOps Engineer Day-to-Day Activities
Intellipaat
Présentation DEVOPS.pptx
Présentation DEVOPS.pptx
boulonvert
Du cycle en V à DevOps, en passant par agile - Normation
Du cycle en V à DevOps, en passant par agile - Normation
RUDDER
Microservices Architectures: Become a Unicorn like Netflix, Twitter and Hailo
Microservices Architectures: Become a Unicorn like Netflix, Twitter and Hailo
gjuljo
Linux
Linux
Harikesh Kumar
DevOps and Cloud
DevOps and Cloud
Fernando Honig
DevOps : mission [im]possible ?
DevOps : mission [im]possible ?
rfelden
virtualization-vs-containerization-paas
virtualization-vs-containerization-paas
rajdeep
DEVOPS
DEVOPS
TayssirLimem
DevOps - A Gentle Introduction
DevOps - A Gentle Introduction
Ganesh Samarthyam
Kubernetes Architecture
Kubernetes Architecture
Knoldus Inc.
Microservices architecture
Microservices architecture
Faren faren
Devops & Configuration management tools
Devops & Configuration management tools
Sonu Meena
Introducing ITIL
Introducing ITIL
Robert Thomas
Terraform
Terraform
Christophe Marchal
Platform engineering 101
Platform engineering 101
Sander Knape
SysML v2 and MBSE: The next ten years
SysML v2 and MBSE: The next ten years
Ed Seidewitz
Le Streaming : Comment ça marche ?
Le Streaming : Comment ça marche ?
Mountaga CISSE
Creating AWS infrastructure using Terraform
Creating AWS infrastructure using Terraform
Knoldus Inc.
Docker introduction
Docker introduction
dotCloud
supervision réseau (snmp netflow)
supervision réseau (snmp netflow)
medalaa
DevOps introduction
DevOps introduction
Christian F. Nissen
Modern lifecycle management practices
Modern lifecycle management practices
Microsoft Developer Network (MSDN) - Belgium and Luxembourg
Michael fulton it architecture for non-architects
Michael fulton it architecture for non-architects
MAX Technical Training
More Related Content
What's hot
Du cycle en V à DevOps, en passant par agile - Normation
Du cycle en V à DevOps, en passant par agile - Normation
RUDDER
Microservices Architectures: Become a Unicorn like Netflix, Twitter and Hailo
Microservices Architectures: Become a Unicorn like Netflix, Twitter and Hailo
gjuljo
Linux
Linux
Harikesh Kumar
DevOps and Cloud
DevOps and Cloud
Fernando Honig
DevOps : mission [im]possible ?
DevOps : mission [im]possible ?
rfelden
virtualization-vs-containerization-paas
virtualization-vs-containerization-paas
rajdeep
DEVOPS
DEVOPS
TayssirLimem
DevOps - A Gentle Introduction
DevOps - A Gentle Introduction
Ganesh Samarthyam
Kubernetes Architecture
Kubernetes Architecture
Knoldus Inc.
Microservices architecture
Microservices architecture
Faren faren
Devops & Configuration management tools
Devops & Configuration management tools
Sonu Meena
Introducing ITIL
Introducing ITIL
Robert Thomas
Terraform
Terraform
Christophe Marchal
Platform engineering 101
Platform engineering 101
Sander Knape
SysML v2 and MBSE: The next ten years
SysML v2 and MBSE: The next ten years
Ed Seidewitz
Le Streaming : Comment ça marche ?
Le Streaming : Comment ça marche ?
Mountaga CISSE
Creating AWS infrastructure using Terraform
Creating AWS infrastructure using Terraform
Knoldus Inc.
Docker introduction
Docker introduction
dotCloud
supervision réseau (snmp netflow)
supervision réseau (snmp netflow)
medalaa
DevOps introduction
DevOps introduction
Christian F. Nissen
What's hot
(20)
Du cycle en V à DevOps, en passant par agile - Normation
Du cycle en V à DevOps, en passant par agile - Normation
Microservices Architectures: Become a Unicorn like Netflix, Twitter and Hailo
Microservices Architectures: Become a Unicorn like Netflix, Twitter and Hailo
Linux
Linux
DevOps and Cloud
DevOps and Cloud
DevOps : mission [im]possible ?
DevOps : mission [im]possible ?
virtualization-vs-containerization-paas
virtualization-vs-containerization-paas
DEVOPS
DEVOPS
DevOps - A Gentle Introduction
DevOps - A Gentle Introduction
Kubernetes Architecture
Kubernetes Architecture
Microservices architecture
Microservices architecture
Devops & Configuration management tools
Devops & Configuration management tools
Introducing ITIL
Introducing ITIL
Terraform
Terraform
Platform engineering 101
Platform engineering 101
SysML v2 and MBSE: The next ten years
SysML v2 and MBSE: The next ten years
Le Streaming : Comment ça marche ?
Le Streaming : Comment ça marche ?
Creating AWS infrastructure using Terraform
Creating AWS infrastructure using Terraform
Docker introduction
Docker introduction
supervision réseau (snmp netflow)
supervision réseau (snmp netflow)
DevOps introduction
DevOps introduction
Similar to Cloud Native Architecture Patterns Tutorial
Modern lifecycle management practices
Modern lifecycle management practices
Microsoft Developer Network (MSDN) - Belgium and Luxembourg
Michael fulton it architecture for non-architects
Michael fulton it architecture for non-architects
MAX Technical Training
DevOps for z Systems @ InterConnect 2016
DevOps for z Systems @ InterConnect 2016
Sherri Hanna
Dev ops for z systems @ interconnect
Dev ops for z systems @ interconnect
Naveed Ahmed
Agile architectures in a modern cloud-native ecosystem
Agile architectures in a modern cloud-native ecosystem
Turja Narayan Chaudhuri
Agile Architecture in a Modern Cloud-Native Ecosystem
Agile Architecture in a Modern Cloud-Native Ecosystem
Cloud Study Network
DEVNET-1147 Energizing Your Career with Cloud Technologies
DEVNET-1147 Energizing Your Career with Cloud Technologies
Cisco DevNet
Are you ready? Introduction to Cloud Computing and Windows Azure
Are you ready? Introduction to Cloud Computing and Windows Azure
Thomas Robbins
SOLIDWORKS 2017 Launch
SOLIDWORKS 2017 Launch
Javelin Technologies
Oracle Developer Meetup March 2018
Oracle Developer Meetup March 2018
Phil Wilkins
SAP TechED 2015- Las Vegas. OEM Partners – Innovation Agenda: Internet of Thi...
SAP TechED 2015- Las Vegas. OEM Partners – Innovation Agenda: Internet of Thi...
SAP OEM
SRE vs DevOps vs Cloud Native Preso
SRE vs DevOps vs Cloud Native Preso
rhirschfeld
MDEV40: Transform everyday business processes with Microsoft 365 platform tools
MDEV40: Transform everyday business processes with Microsoft 365 platform tools
Eli Robillard
Are You an Accidental or Intentional Architect?
Are You an Accidental or Intentional Architect?
iasaglobal
Challenging The Role Of The Architect
Challenging The Role Of The Architect
Kevin Francis
Cloud lunchn learn_howtobecomeacloudarchitect_part1
Cloud lunchn learn_howtobecomeacloudarchitect_part1
Turja Narayan Chaudhuri
SAP TechED 2015- Las Vegas. OEM Partners – Innovation Agenda: Database & Tech...
SAP TechED 2015- Las Vegas. OEM Partners – Innovation Agenda: Database & Tech...
SAP OEM
At the Trailhead with Matt Stine
At the Trailhead with Matt Stine
VMware Tanzu
Dan m royce cv 2nd jan 2016
Dan m royce cv 2nd jan 2016
Dan Royce
Pattern driven Enterprise Architecture
Pattern driven Enterprise Architecture
WSO2
Similar to Cloud Native Architecture Patterns Tutorial
(20)
Modern lifecycle management practices
Modern lifecycle management practices
Michael fulton it architecture for non-architects
Michael fulton it architecture for non-architects
DevOps for z Systems @ InterConnect 2016
DevOps for z Systems @ InterConnect 2016
Dev ops for z systems @ interconnect
Dev ops for z systems @ interconnect
Agile architectures in a modern cloud-native ecosystem
Agile architectures in a modern cloud-native ecosystem
Agile Architecture in a Modern Cloud-Native Ecosystem
Agile Architecture in a Modern Cloud-Native Ecosystem
DEVNET-1147 Energizing Your Career with Cloud Technologies
DEVNET-1147 Energizing Your Career with Cloud Technologies
Are you ready? Introduction to Cloud Computing and Windows Azure
Are you ready? Introduction to Cloud Computing and Windows Azure
SOLIDWORKS 2017 Launch
SOLIDWORKS 2017 Launch
Oracle Developer Meetup March 2018
Oracle Developer Meetup March 2018
SAP TechED 2015- Las Vegas. OEM Partners – Innovation Agenda: Internet of Thi...
SAP TechED 2015- Las Vegas. OEM Partners – Innovation Agenda: Internet of Thi...
SRE vs DevOps vs Cloud Native Preso
SRE vs DevOps vs Cloud Native Preso
MDEV40: Transform everyday business processes with Microsoft 365 platform tools
MDEV40: Transform everyday business processes with Microsoft 365 platform tools
Are You an Accidental or Intentional Architect?
Are You an Accidental or Intentional Architect?
Challenging The Role Of The Architect
Challenging The Role Of The Architect
Cloud lunchn learn_howtobecomeacloudarchitect_part1
Cloud lunchn learn_howtobecomeacloudarchitect_part1
SAP TechED 2015- Las Vegas. OEM Partners – Innovation Agenda: Database & Tech...
SAP TechED 2015- Las Vegas. OEM Partners – Innovation Agenda: Database & Tech...
At the Trailhead with Matt Stine
At the Trailhead with Matt Stine
Dan m royce cv 2nd jan 2016
Dan m royce cv 2nd jan 2016
Pattern driven Enterprise Architecture
Pattern driven Enterprise Architecture
More from Matt Stine
Architectures That Bend but Don't Break
Architectures That Bend but Don't Break
Matt Stine
Resilient Architecture
Resilient Architecture
Matt Stine
Cloud Foundry: The Best Place to Run Microservices
Cloud Foundry: The Best Place to Run Microservices
Matt Stine
Reactive Fault Tolerant Programming with Hystrix and RxJava
Reactive Fault Tolerant Programming with Hystrix and RxJava
Matt Stine
Lattice: A Cloud-Native Platform for Your Spring Applications
Lattice: A Cloud-Native Platform for Your Spring Applications
Matt Stine
The Cloud Native Journey
The Cloud Native Journey
Matt Stine
To Microservices and Beyond
To Microservices and Beyond
Matt Stine
Deploying Microservices to Cloud Foundry
Deploying Microservices to Cloud Foundry
Matt Stine
Cloud Foundry Diego: Modular and Extensible Substructure for Microservices
Cloud Foundry Diego: Modular and Extensible Substructure for Microservices
Matt Stine
Building Distributed Systems with Netflix OSS and Spring Cloud
Building Distributed Systems with Netflix OSS and Spring Cloud
Matt Stine
Pivotal Cloud Platform Roadshow: Sign Up for Pivotal Web Services
Pivotal Cloud Platform Roadshow: Sign Up for Pivotal Web Services
Matt Stine
A Recovering Java Developer Learns to Go
A Recovering Java Developer Learns to Go
Matt Stine
Agile Development with OSGi
Agile Development with OSGi
Matt Stine
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Matt Stine
It's the End of the Cloud as We Know It
It's the End of the Cloud as We Know It
Matt Stine
Vert.x
Vert.x
Matt Stine
Functional solid
Functional solid
Matt Stine
The Seven Wastes of Software Development
The Seven Wastes of Software Development
Matt Stine
Information Sciences Solutions to Core Facility Problems at St. Jude Children...
Information Sciences Solutions to Core Facility Problems at St. Jude Children...
Matt Stine
Achieve Your Goals
Achieve Your Goals
Matt Stine
More from Matt Stine
(20)
Architectures That Bend but Don't Break
Architectures That Bend but Don't Break
Resilient Architecture
Resilient Architecture
Cloud Foundry: The Best Place to Run Microservices
Cloud Foundry: The Best Place to Run Microservices
Reactive Fault Tolerant Programming with Hystrix and RxJava
Reactive Fault Tolerant Programming with Hystrix and RxJava
Lattice: A Cloud-Native Platform for Your Spring Applications
Lattice: A Cloud-Native Platform for Your Spring Applications
The Cloud Native Journey
The Cloud Native Journey
To Microservices and Beyond
To Microservices and Beyond
Deploying Microservices to Cloud Foundry
Deploying Microservices to Cloud Foundry
Cloud Foundry Diego: Modular and Extensible Substructure for Microservices
Cloud Foundry Diego: Modular and Extensible Substructure for Microservices
Building Distributed Systems with Netflix OSS and Spring Cloud
Building Distributed Systems with Netflix OSS and Spring Cloud
Pivotal Cloud Platform Roadshow: Sign Up for Pivotal Web Services
Pivotal Cloud Platform Roadshow: Sign Up for Pivotal Web Services
A Recovering Java Developer Learns to Go
A Recovering Java Developer Learns to Go
Agile Development with OSGi
Agile Development with OSGi
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
It's the End of the Cloud as We Know It
It's the End of the Cloud as We Know It
Vert.x
Vert.x
Functional solid
Functional solid
The Seven Wastes of Software Development
The Seven Wastes of Software Development
Information Sciences Solutions to Core Facility Problems at St. Jude Children...
Information Sciences Solutions to Core Facility Problems at St. Jude Children...
Achieve Your Goals
Achieve Your Goals
Recently uploaded
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
Tier1 app
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
soniya singh
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
kzayra69
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
VICTOR MAESTRE RAMIREZ
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
bntitsolutionsrishis
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
umasea
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio, Inc.
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Ahmed Mohamed
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Stefano Stabellini
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
andrehoraa
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
Andreas Granig
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
Hr365.us smith
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
Łukasz Chruściel
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
9953056974 Low Rate Call Girls In Saket, Delhi NCR
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
Velvetech LLC
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
VICTOR MAESTRE RAMIREZ
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
qr0udbr0
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
Technogeeks
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
OnePlan Solutions
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
Wave PLM
Recently uploaded
(20)
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
Buds n Tech IT Solutions: Top-Notch Web Services in Noida
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
Cloud Native Architecture Patterns Tutorial
1.
Cloud Native Architecture Patterns Tutorial 2017 O'Reilly Software Architecture Conference - NYC Matt Stine ( )@mstine http://www.mattstine.com
2.
Introduction
3.
Your Instructor 17 years in the Enterprise IT industry 5 years as a Cloud Platform and Application Architect Frequent speaker on the conference circuit Host of the Software Architecture Radio podcast
4.
Your Instructor http://www.oreilly.com/programming/free/migrating-cloud-native-application- architectures.csp
5.
Workshop Components Lecture Socratic Q&A Sessions Architecture Kata Sessions
6.
Agenda Class Introduction Cloud Native Architecture Fundamentals 1:30 - 2:15 PM Socratic Q&A Session 2:15 - 2:30 PM Cloud Native Architecture Patterns 2:30 - 3:30 PM Socratic Q&A Session 3:30 - 3:45 PM
7.
Agenda Cloud Native Architecture Katas - Setup 3:45 - 4:00 PM Cloud Native Architecture Katas - Create 4:00 - 4:30 PM Cloud Native Architecture Katas - Present 4:30 - 5:00 PM
8.
The Business Drivers for Architectural Change
9.
Agility Disruption
10.
Agility - Mark Andressen Software is eating the world.
11.
Agility Disruptive Characteristics Software is primary engagement model New and innovative business models Fast and frequent deliveries Hypothesis-driven development
12.
Agility The Waterscrumfall
13.
Agility Waterscrumfall Consequences Slow Delivery Large Batch Sizes Infrequent Feedback Increased Waste
14.
Agility Digital Transformation
15.
Resiliency Disruptive companies are also approaching resiliency differently.
16.
Resiliency Stop trying to prevent mistakes.
17.
Resiliency Embrace failure.
18.
Resiliency From MTBF to MTTR
19.
Resiliency We need better tools and techniques.
20.
Resiliency Visibility
21.
Resiliency Fault Isolation
22.
Resiliency Fault Tolerance
23.
Resiliency Scalability
24.
Resiliency Automated Recovery
25.
A High-Level Overview of DevOps and Continuous Delivery
26.
DevOps THE GREAT CONFLICT
27.
DevOps My Definition: DevOps represents the idea of tearing down organizational silos and building shared toolsets, vocabularies, and communication structures in service of a culture focused on a single goal: delivering value rapidly and safely.
28.
DevOps THE THREE WAYS
29.
DevOps
30.
DevOps The First Way: Flow
31.
DevOps The Second Way: Feedback
32.
DevOps The Third Way: Continual Learning and Experimentation
33.
Continuous Delivery My Definition: Technically supporting the concept to cash lifecycle by proving every source code commit to be deployable to production in an automated fashion.
34.
Continuous Delivery Ingredients Configuration Management Continuous Integration Automated Testing
35.
Continuous Delivery CI Developer Workflow
36.
Continuous Delivery The Deployment Pipeline
37.
The Unique Characteristics of Cloud Infrastructure
38.
Cloud Infrastructure My Definition: Any computing environment in which computing, networking, and storage resources can be provisioned and released elastically in an on-demand, self-service manner.
39.
Cloud Infrastructure Deployment Models Public Amazon Web Services Google Cloud Platform Microsoft Azure Private VMware vSphere OpenStack Community Hybrid
40.
Cloud Infrastructure Service Models The *aaS Pyramid
41.
Cloud Infrastructure API Driven Automation Audit Authorization Accounting
42.
Cloud Infrastructure Speed If you need a component, create it! Load Balancers Databases (SQL/NoSQL) Message Queues Private Networks Storage Volumes
43.
Cloud Infrastructure Speed Can eliminate: Ticket Systems Approval Processes Waiting Queues Configuration Errors
44.
Cloud Infrastructure Speed As fast as you can design the system architecture that you need, you can usually provision and begin using it.
45.
Cloud Infrastructure Elastic Goodbye Capacity Planning!
46.
Cloud Infrastructure Elastic Capacity Planning Peer into the crystal ball... "What's the most capacity we'll need?" Guess incorrectly... Blow available capacity on Black Friday Hundreds of idle CPUs
47.
Cloud Infrastructure Elastic As demand increases, we simply expand capacity by provisioning more resources to service that demand.
48.
Cloud Infrastructure Elastic As demand decreases, we simply contract capacity by returning resources to the pool.
49.
Cloud Native Architecture Concepts
50.
Architecting for DevOps Modularity
51.
Architecting for DevOps Think About the Three Ways We want a quantum of this experience.
52.
Architecting for DevOps Decomposition Strategies What's yours? Bounded Contexts Value Streams Single Responsibility Princple Failure Domains Anti-Corruption Layers
53.
Architecting for DevOps Strategies are not mutually exclusive!
54.
Architecting for DevOps So What About Modularity? Loose Coupling High Cohesion Encapsulation Well-Defined Interface
55.
Architecting for DevOps Gratuitous Nod to Microservices!
56.
Architecting for DevOps If a microservice isn't giving you Three Ways Value, you probably don't need it.
57.
Architecting for DevOps Conway's Law Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure.
58.
Architecting for DevOps If your architectural and and organizational decomposition strategies don't align well, then CONWAY WILL FIGHT YOU!
59.
Architecting for DevOps Observability
60.
Architecting for DevOps Think About the Three Ways We need feedback to create a safer system of work and to (in)validate our hypotheses.
61.
Architecting for DevOps See Failure When It Happens
62.
Architecting for DevOps Measure Everything
63.
Architecting for DevOps What is Normal? Values Rates of Change Mean? P95/99/99.9?
64.
Architecting for DevOps What is Normal? http://bravenewgeek.com/everything-you-know-about-latency-is-wrong
65.
Architecting for DevOps
66.
Architecting for DevOps
67.
Architecting for DevOps This is an Architectural Responsibility Architecture can make observability harder! Overhead Concerns Tools don't know your business.
68.
Architecting for Continuous Delivery NOTE: Architecting for DevOps aids in Continuous Delivery!
69.
Architecting for Continuous Delivery Adding some layers...
70.
Architecting for Continuous Delivery Think About Full Lifecycle Architecture
71.
Architecting for Continuous Delivery Neal Ford Architecture is abstract until it is operationalized.
72.
Architecting for Continuous Delivery Architectures that aren't operationalized exist only on whiteboards!
73.
Architecting for Continuous Delivery Deployability Testability We'll examine these qualities by asking questions of our architectures.
74.
Architecting for Continuous Delivery Deployability
75.
Architecting for Continuous Delivery Have you automated ALL of your deployment tasks?
76.
Architecting for Continuous Delivery Can you transform a brand new deployment environment into your running architecture without manual work?
77.
Architecting for Continuous Delivery Can you vary configuration across environments without rebuilding code?
78.
Architecting for Continuous Delivery Do you deploy like this EVERYWHERE?
79.
Architecting for Continuous Delivery Can you do this without your users noticing?
80.
Architecting for Continuous Delivery Testability
81.
Architecting for Continuous Delivery Have you automated ALL testing tasks that you possibly can?
82.
Architecting for Continuous Delivery Do you have to deploy all the things to test anything?
83.
Architecting for Continuous Delivery If testing is an experiment, can you control everything except your experimental variable?
84.
Architecting for Continuous Delivery Can you run the same tests against any environment (including production)?
85.
Architecting for Continuous Delivery Can you verify that you continue to meet your contractual obligations?
86.
Architecting for Cloud Infrastructure Cloud Capabilities API-driven Speed Elasticity Geography Specialized Services
87.
Architecting for Cloud Infrastructure Exploiting the capabilities of Cloud can enhance our ability to practice DevOps and Continuous Delivery!
88.
Architecting for Cloud Infrastructure Disposability Replaceability We'll examine these qualities by asking questions of our architectures.
89.
Architecting for Cloud Infrastructure Disposable adjective 1. designed for or capable of being thrown away after being used or used up: disposable plastic spoons; a disposable cigarette lighter. 2. free for use; available: Every disposable vehicle was sent. http://www.dictionary.com/browse/disposable
90.
Architecting for Cloud Infrastructure Replace verb 1. to assume the former role, position, or function of; substitute for (a person or thing): Electricity has replaced gas in lighting. 2. to provide a substitute or equivalent in the place of: to replace a broken dish. http://www.dictionary.com/browse/replace
91.
Architecting for Cloud Infrastructure Consequence noun 1. an act or instance of following something as an effect, result, or outcome. 2. importance or significance: a matter of no consequence. http://www.dictionary.com/browse/consequence
92.
Architecting for Cloud Infrastructure Disposability Can I destroy a service instance at any time without consequence?
93.
Architecting for Cloud Infrastructure Disposability Can I repave the entire architecture at any time without consequence?
94.
Architecting for Cloud Infrastructure Disposability Can I respond to changes in demand by adding or removing instances of a service without consequence?
95.
Architecting for Cloud Infrastructure Replaceability Can I replace a sick service instance with a brand new copy without consequence?
96.
Architecting for Cloud Infrastructure Replaceability Can I route traffic to any available service instance without consequence?
97.
Architecting for Cloud Infrastructure Replaceability If I lose an AZ or Region, can I route traffic to another without consequence?
98.
Architecting for Cloud Infrastructure Replaceability Can I swap between multiple implementations of the same service contract without consequence?
99.
Architecting for Cloud Infrastructure Replaceability Can I swap between multiple running versions of a service without consequence?
100.
Architecting for Cloud Infrastructure These are Architectural Responsibilities Architecture can make disposability impossible. Architecture can make replaceability impossible. Architecture must take charge of removing the consequences of disposing and replacing service instances.
101.
Summary Architectural Decision Making Can: Enhance or Detract from Our Ability to Practice DevOps Enhance or Detract from Our Ability to Practice Continuous Delivery Exploit or Waste the Characteristics of Cloud Infrastructure
102.
Summary We could have called this "DevOps Native" or "Continuous Delivery Native" Architecture!
103.
Summary DevOps Native Architecture
104.
Summary Balancing: Agility and Resilience
105.
Summary Supported By: DevOps and Continuous Delivery
106.
Summary On a Foundation of: Cloud and Architecture
107.
Socratic Q&A
108.
Cloud Native Architecture Patterns
109.
Overview Pattern-Oriented Software Architecture, Volume 1: A System of Patterns Patterns should...be described uniformly. This helps us to compare one pattern with another...
110.
Overview Design Patterns: Elements of Reusable Object-Oriented Software We describe design patterns using a consistent format...making design patterns easier to learn, compare, and use.
111.
Overview Brick and Mortar Pattern Template Context The basic situation in which we find ourselves working. Problem Presents the problem as a system forces which must be balanced. Solution Describes the components that make up the general solution, how they relate to one another, and their runtime interactions.
112.
Overview Brick and Mortar Language Structure Brick Patterns Patterns for constructing individual (micro)services. Mortar Patterns Patterns for composing bricks into complete distributed systems.
113.
Overview Brick Patterns Externalization Patterns Structural patterns for creating deployable, disposable, and replaceable bricks. Externalized Configuration Externalized State Externalized Channels Runtime Patterns Behavioral patterns for creating deployable, replaceable, and observable bricks. Runtime Reconfiguration Concurrent Execution Brick Telemetry
114.
Overview Mortar Patterns Distributed Systems Patterns Composition patterns addressing common distributed systems challenges. Service Discovery Edge Gateway Fault Tolerance Integration Patterns Composition patterns addressing integration and observability challenges. Event-Driven System Contract Management Integration Telemetry
115.
Overview Brick and Mortar Language Relationships
116.
Brick Patterns Externalized Configuration Externalized State Brick Telemetry
117.
Externalized Configuration
118.
Context and Problem Context An application's configuration will vary independently from its code throughout its lifecycle.
119.
Context and Problem Problem Traditional techniques for managing configuration tightly couple these two orthogonal concepts.
120.
Context and Problem Forces Different environments will have different configuration settings: resource handles to the database (e.g. a JDBC URL) credentials to external services (e.g. Amazon S3) per-deploy values such as the canonical hostname (e.g. blog-test.example.com vs. blog- prod.example.com) features that are toggled on or off
121.
Context and Problem Forces Configuration is often bundled within deployment artifacts (e.g. Java properties files). Build processes often modify configuration based on arguments. The Deployment Pipeline should only build each deployment artifact once, and deploy the same artifact to multiple environments.
122.
LIVE ARCHITECTURE!
123.
Externalized State
124.
Context and Problem Context Disposability and Replaceability require the elimination of "snowflake deployments" from the architecture.
125.
Context and Problem Problem Traditional state management techniques prevent us from achieving "phoenix deployments."
126.
Context and Problem Forces Early web architectures emphasized server-side state management: Fat Clients to Thin Clients Vertically Scaled Cache Management Stateful Scaffolding on Stateless Protocol (HTTP)
127.
Context and Problem Forces Cloud Infrastructure: Resource Limited Horizontal Scale Limited Load Balancer Support for Sessions Limited (No) Support for Persistent Local Disk
128.
LIVE ARCHITECTURE!
129.
Brick Telemetry
130.
Context and Problem Context Realizing the DevOps Way of Feedback requires that we have visibility into both the business value and technical behavior generated by our services.
131.
Context and Problem Problem Common approaches to service visibility fall short of the architectural qualities that we need.
132.
Context and Problem Forces Visibility is often accomplished via post facto application of agent-based monitoring tools. Agent-based monitoring tools don't understand business value. Determining an application's health often requires complex logic. Traceability of an application is difficult (or impossible) to accomplish with OTS solutions.
133.
LIVE ARCHITECTURE!
134.
Mortar Patterns Service Discovery Edge Gateway Fault Tolerance
135.
Service Discovery
136.
Context and Problem Context Decomposition of architecture into services leads to increasingly more distributed systems.
137.
Context and Problem Problem As systems become distributed, and as service instance lifecycles become more dynamic and independent, location of and communication with dependencies becomes more challenging.
138.
Context and Problem Forces Cloud platforms often assign auto-generated, internal hostnames or private IP's to service instances. As services are scaled and unhealthy instances are replaced, the addresses of a service's instances are constantly changing. Binding a service to anything other than logical names for its dependencies leads to friction in the architectural lifecycle.
139.
Context and Problem Forces Applying Concurrent Execution is made more difficult (or impossible) when binding services to fixed addresses for their dependencies. We may want to remove a service instance from the available pool but keep it running to troubleshoot a problem.
140.
LIVE ARCHITECTURE!
141.
Edge Gateway
142.
Context and Problem Context Decomposed architectures must always be recomposed. This recomposition often happens within the user interface layer of an application.
143.
Context and Problem Problem Recomposing an architecture within the User Interface layer presents significant complexities that can lead to decreased agility and degraded user experience.
144.
Context and Problem Forces Systems often must support multiple user experience options (web/mobile/AVR). Recomposing architectures as the UI layer can require exposing the architecture to the public network. API needs for a mobile device are often quite different from a web UI.
145.
Context and Problem Forces Exposing a network graph to mobile devices can increase latency, increase data usage, and degrade battery life. UI platforms may not support the integration architecture used for all services. Native apps often have longer upgrade cycles. Recomposing the architecture there can lead to friction in the architectural lifecycle.
146.
LIVE ARCHITECTURE!
147.
Fault Tolerance
148.
Context and Problem Context In order to accomplish its assigned tasks, each brick will need to communicate with other bricks, and with external systems, to which we'll collectively refer as dependencies.
149.
Context and Problem Problem When a brick's dependencies become unhealthy, unreachable, or slower than normal to respond, that brick's own performance is degraded, and such degredation can potentially cascade across the entire architecture.
150.
Context and Problem Forces The network is not reliable. Latency is non-zero and unpredictable. Service availability is a product of its dependencies' availabilities.
151.
Context and Problem Forces Failures can be transient. Failures can cascade. An incorrect or stale response is often preferable to no response.
152.
LIVE ARCHITECTURE!
153.
Socratic Q&A
154.
Cloud Native Architecture Katas Setup
155.
What are Architecture Katas? Take me to the rules!
156.
To Cloud Native Add the following to your requirements: Day 1 as a company we're agreeing to guide ourselves by DevOps principles and practice Continuous Delivery. We have no infrastructure; we'll use one or more public cloud providers to deliver our software. Think deeply about your decomposition strategy and what advantages it will bring you. Use the CNA Patterns you know so far in order to enable your architectures to these ends.
157.
Kata Choices http://bit.ly/cna-kata-choices
Download now