SlideShare a Scribd company logo
Evolving to
Cloud Native
@ntschutta
ntschutta.io
Nathaniel Schutta
https://content.pivotal.io/
ebooks/thinking-architecturally
Ah “the cloud!”
So. Many. Options.
Microservices. Modular monoliths.
Container all the things?
What about serverless?
Functions. As a Service.
Did someone say Polycloud?
https://www.thoughtworks.com/radar/techniques/polycloud
How do we make
sense of all this?!?
There are real engineering
issues to overcome.
Many believe in magic
sparkle ponies...
How do we avoid pitfalls?
And a strong case of
resume driven design?
What is cloud
Native?
Applications designed to take
advantage of cloud computing.
Fundamentally about how we
create and deploy applications.
Cloud computing gives us
some very interesting abilities.
Scale up. Scale down. On demand.
Limitless compute.*
* Additional fees may apply.
Cloud native isn’t just an
architectural pattern.
Combination of practices,
techniques, technologies.
Agile development.
Continuous delivery.
Automation.
Containers.
Microservices.
Functions.
Changes our culture.
DevOps.
Infrastructure is a different
game today isn’t it?
We’ve seen this massive shift.
Servers used to be home grown.
Bespoke. Artisanal.
Spent days hand crafting them.
Treated them like pets…
Evolving to Cloud-Native - Nate Schutta 1/2
Did whatever it took to keep
them healthy and happy.
Servers were a heavily
constrained resource.
They were really expensive!
Had to get our money’s worth…
Thus was born app servers.
Put as many apps as
possible on a server.
Maximize the return on investment.
But that has some
unintended side effects.
Shared resources.
One application’s bug could
take down multiple apps.
Coordinating changes hurts.
“Your app can’t get this feature
until all other apps are ready.”
Currency === 18 months of
freezes, testing, frustration.
Organizations ignored currency
issues…pain wasn’t “worth it”.
–Yoda
“Fear is the path to the dark side.
Fear leads to anger. Anger leads
to hate. Hate leads to suffering.”
#YodaOps
Move code from one
server to another…
Worked in dev…but not test.
Why?!?
The environments are
the same…right?
“Patches were applied in a
different order…”
Can I change careers?
Things started to change.
Servers became commodities.
Linux and Intel chips replaced
custom OS on specialized silicon.
https://mobile.twitter.com/linux/status/936877536780283905?lang=en
Prices dropped.
Servers were no longer the
constraining factor.
People costs eclipsed
hardware costs.
Heroku, AWS, Google App
Egine, Cloud Foundry, Azure.
Shared servers became a liability.
Treat them like cattle…when
they get sick, get a new one.
Evolving to Cloud-Native - Nate Schutta 1/2
New abstractions.
Containers and PaaS
changed the game.
Package the app up with
everything it needs.
Move *that* to a
different environment.
Works in dev? You’re testing the
exact same thing in test.
So. Much. Win.
Your app needs a spiffy
new library? Go ahead!
It doesn’t impact any other app
because you are isolated.
Moves the value line.
Less “undifferentiated heavy lifting”.
https://mobile.twitter.com/onsijoe/status/598235841635360768?lang=en
Changes development.
Always be changing.
Run experiments. A/B testing.
Respond to business changes.
Deliver in days not months.
https://mobile.twitter.com/ntschutta/status/938109379995353088
Speed matters.
Disruption impacts every business.
Your industry is not immune.
Amazon Prime customers can
order from Whole Foods.
Some insurance companies
view Google as a competitor.
We’re all technology
companies today.
12 factors
Twelve Factor App.
https://12factor.net
Characteristics shared by
successful apps.
At least at Heroku.
I. One codebase in version
control, multiple deploys.
Version control isn’t
controversial. Right?!?
Sharing code? It better
be in a library then…
II. Explicitly define your
dependencies.
Do not rely on something just
“being there” on the server.
If you need it, declare it.
III. Configuration must be
separate from the code.
The things that vary from
environment to environment.
Could you open source
that app right now?
IV. Backing services are just
attached resources.
Should be trivial to swap out a
local database for a test db.
In other words, loose coupling.
V. Build, release, run.
Deployment pipeline anyone?
Build the executable…
Deploy the executable with the
proper configuration…
Launch the executable in a
given environment.
VI. Stateless - share nothing.
State must be stored via some
kind of backing service.
In other words, you cannot rely
on the filesystem or memory.
Recovery. Scaling.
VII. Export services via port binding.
App exports a port, listens for
incoming requests.
localhost for development,
load balancer for public facing.
VIII. Scale via process.
In other words, scale horizontally.
IX. Start up fast, shut
down gracefully.
Processes aren’t pets,
they are disposable.
Processes can be started (or
stopped) quickly and easily.
Ideally, start up is seconds.
Also can handle
unexpected terminations!
X. Dev/Prod parity.
From commit to production
should be hours…maybe days.
Definitely not weeks.
Developers should be involved
in deploys and prod ops.
Regions should be identical. Or
as close as possible to identical.
Backing services should be the
same in dev and prod.
Using one DB in dev and
another in prod invites pain.
XI. Logs as event streams.
Don’t write logs to the filesystem!
It won’t be there later…
Write to stdout.
Stream can be routed any
number of places.
And then consumed via a
wide variety of tools.
XII. Admin tasks run as
one off processes.
Database migrations for instance.
REPL for the win.
Run in an identical environment
to the long running processes.
Your legacy apps will
violate some factors.
Maybe all 12!
In general…
II. Explicitly define your
dependencies.
Probably one of the
harder ones to satisfy.
Do we really need this library?
“It works, don’t touch it.”
III. Configuration must be
separate from the code.
Many an app has
hardcoded credentials.
Hardcoded database connections.
VI. Stateless - share nothing.
Also can be challenging.
Many apps were designed
around a specific flow.
Page 2 left debris for Page 3!
“Just stash that in session”.
IX. Start up fast, shut
down gracefully.
Many apps take way
too long to start up…
Impacts health checks.
X. Dev/Prod parity.
Environments should be consistent!
Shorten code to prod cycle.
“It worked in test…”
Do your applications have to be
fully 12 factor compliant?
Nope.
Is it a good goal?
Sure.
But be pragmatic.
Certain attributes lessen the
advantages of cloud.
Long startup time hurts elastic
scaling & self healing.
Think of it as a continuum.
12 Factor Compliance
Benefits of Cloud Deployment
Developers also talk
about 15 factor apps.
aka Beyond the Twelve-Factor App.
https://content.pivotal.io/blog/beyond-the-twelve-factor-app
However you define it…
To maximize what
the cloud gives us…
Applications need to be
designed properly.
Legacy applications will fall short.
Opportunistically refactor!
Building greenfield?
Go cloud native!

More Related Content

What's hot (17)

PPTX
Ensuring Cloud Native Success: The Greenfield Journey
VMware Tanzu
 
PDF
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
Phuong Mai Nguyen
 
PPTX
Better Software is Better than Worse Software - Alexandre Vasseur
VMware Tanzu
 
PDF
Cloud Native Operations
Michael Mueller
 
PDF
Driving Platform-as-Product Using Lean Hypothesis - Karina Villaneuva
VMware Tanzu
 
PDF
DevOps and Cloud Native
Alistair Israel
 
PPTX
KEYNOTE | WHAT'S COMING IN THE NEXT 10 YEARS OF DEVOPS? // ELLEN CHISA, bolds...
DevOpsDays Tel Aviv
 
PPTX
DevOps Transformations
Ernest Mueller
 
PPTX
How Do We Better Sell DevOps? - PuppetConf 2013
Puppet
 
PPTX
Zero to 12 Million
VMware Tanzu
 
PDF
Migrating to cloud-native_app_architectures_pivotal
kkdlavak3
 
PPTX
Mark Harrison AppDev 2021
Mark Harrison
 
PDF
Rediscover Software Development Edward Hieatt Web Summit 2014
VMware Tanzu
 
PDF
Scaling with Microservices
kloia
 
PPTX
Devopsguys DevOps 101 for recruiters
DevOpsGroup
 
PDF
DevOps Roadshow - cloud services for development
Microsoft Developer Norway
 
PPTX
5 Steps to Developing Push-based Apps in the Age of Connected Devices
VMware Tanzu
 
Ensuring Cloud Native Success: The Greenfield Journey
VMware Tanzu
 
AWS Community Day: From Monolith to Microservices - What Could Go Wrong?
Phuong Mai Nguyen
 
Better Software is Better than Worse Software - Alexandre Vasseur
VMware Tanzu
 
Cloud Native Operations
Michael Mueller
 
Driving Platform-as-Product Using Lean Hypothesis - Karina Villaneuva
VMware Tanzu
 
DevOps and Cloud Native
Alistair Israel
 
KEYNOTE | WHAT'S COMING IN THE NEXT 10 YEARS OF DEVOPS? // ELLEN CHISA, bolds...
DevOpsDays Tel Aviv
 
DevOps Transformations
Ernest Mueller
 
How Do We Better Sell DevOps? - PuppetConf 2013
Puppet
 
Zero to 12 Million
VMware Tanzu
 
Migrating to cloud-native_app_architectures_pivotal
kkdlavak3
 
Mark Harrison AppDev 2021
Mark Harrison
 
Rediscover Software Development Edward Hieatt Web Summit 2014
VMware Tanzu
 
Scaling with Microservices
kloia
 
Devopsguys DevOps 101 for recruiters
DevOpsGroup
 
DevOps Roadshow - cloud services for development
Microsoft Developer Norway
 
5 Steps to Developing Push-based Apps in the Age of Connected Devices
VMware Tanzu
 

Similar to Evolving to Cloud-Native - Nate Schutta 1/2 (20)

PDF
Cloud-Native Fundamentals: An Introduction to 12-Factor Applications
VMware Tanzu
 
PDF
RedisConf18 - Common Redis Use Cases for Cloud Native Apps and Microservices
Redis Labs
 
PDF
Evolving to Cloud-Native - Nate Schutta (2/2)
VMware Tanzu
 
PDF
APIdays Paris 2018 - Cloud computing - we went through every steps of the Gar...
apidays
 
PDF
Evolving to Cloud-Native - Anand Rao
VMware Tanzu
 
PPTX
Intro to Cloud Native _ v1.0en (2021/01)
Young Suk Ahn Park
 
PDF
How Data-Driven Continuous Intelligence Benefits Aid the Development and Mana...
Dana Gardner
 
PDF
Spring Boot & Spring Cloud on PAS- Nate Schutta (1/2)
VMware Tanzu
 
PPTX
WinOps Conf 2016 - Matteo Emili - Development and QA Dilemmas in DevOps
WinOps Conf
 
PDF
The Twelve Factor App
Pablo Fullana
 
PDF
HLayer / Cloud Native Best Practices
Aymen EL Amri
 
PDF
New Managed Paths to Private Cloud Deployments Allow for Swifter Adoption at ...
Dana Gardner
 
PDF
The Future of Cloud Innovation, featuring Adrian Cockcroft
Dun & Bradstreet Cloud Innovation Center
 
PPTX
Evolving your api architecture with the strangler pattern
dwcarter74
 
PDF
A Gentle introduction to microservices
Gianluca Padovani
 
PPTX
JavaOne 2016 "Java, Microservices, Cloud and Containers"
Daniel Bryant
 
PDF
Responsible Microservices
VMware Tanzu
 
PDF
From 🤦 to 🐿️
Ori Pekelman
 
PDF
Herding cats in the Cloud
Dewey Sasser
 
PDF
Brand Commerce - We all know the shiny stuff at the front. But what magic is ...
Rien van den Bosch
 
Cloud-Native Fundamentals: An Introduction to 12-Factor Applications
VMware Tanzu
 
RedisConf18 - Common Redis Use Cases for Cloud Native Apps and Microservices
Redis Labs
 
Evolving to Cloud-Native - Nate Schutta (2/2)
VMware Tanzu
 
APIdays Paris 2018 - Cloud computing - we went through every steps of the Gar...
apidays
 
Evolving to Cloud-Native - Anand Rao
VMware Tanzu
 
Intro to Cloud Native _ v1.0en (2021/01)
Young Suk Ahn Park
 
How Data-Driven Continuous Intelligence Benefits Aid the Development and Mana...
Dana Gardner
 
Spring Boot & Spring Cloud on PAS- Nate Schutta (1/2)
VMware Tanzu
 
WinOps Conf 2016 - Matteo Emili - Development and QA Dilemmas in DevOps
WinOps Conf
 
The Twelve Factor App
Pablo Fullana
 
HLayer / Cloud Native Best Practices
Aymen EL Amri
 
New Managed Paths to Private Cloud Deployments Allow for Swifter Adoption at ...
Dana Gardner
 
The Future of Cloud Innovation, featuring Adrian Cockcroft
Dun & Bradstreet Cloud Innovation Center
 
Evolving your api architecture with the strangler pattern
dwcarter74
 
A Gentle introduction to microservices
Gianluca Padovani
 
JavaOne 2016 "Java, Microservices, Cloud and Containers"
Daniel Bryant
 
Responsible Microservices
VMware Tanzu
 
From 🤦 to 🐿️
Ori Pekelman
 
Herding cats in the Cloud
Dewey Sasser
 
Brand Commerce - We all know the shiny stuff at the front. But what magic is ...
Rien van den Bosch
 
Ad

More from VMware Tanzu (20)

PDF
Spring into AI presented by Dan Vega 5/14
VMware Tanzu
 
PDF
What AI Means For Your Product Strategy And What To Do About It
VMware Tanzu
 
PDF
Make the Right Thing the Obvious Thing at Cardinal Health 2023
VMware Tanzu
 
PPTX
Enhancing DevEx and Simplifying Operations at Scale
VMware Tanzu
 
PDF
Spring Update | July 2023
VMware Tanzu
 
PPTX
Platforms, Platform Engineering, & Platform as a Product
VMware Tanzu
 
PPTX
Building Cloud Ready Apps
VMware Tanzu
 
PDF
Spring Boot 3 And Beyond
VMware Tanzu
 
PDF
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
VMware Tanzu
 
PDF
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
VMware Tanzu
 
PDF
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
VMware Tanzu
 
PPTX
tanzu_developer_connect.pptx
VMware Tanzu
 
PDF
Tanzu Virtual Developer Connect Workshop - French
VMware Tanzu
 
PDF
Tanzu Developer Connect Workshop - English
VMware Tanzu
 
PDF
Virtual Developer Connect Workshop - English
VMware Tanzu
 
PDF
Tanzu Developer Connect - French
VMware Tanzu
 
PDF
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
VMware Tanzu
 
PDF
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
VMware Tanzu
 
PDF
SpringOne Tour: The Influential Software Engineer
VMware Tanzu
 
PDF
SpringOne Tour: Domain-Driven Design: Theory vs Practice
VMware Tanzu
 
Spring into AI presented by Dan Vega 5/14
VMware Tanzu
 
What AI Means For Your Product Strategy And What To Do About It
VMware Tanzu
 
Make the Right Thing the Obvious Thing at Cardinal Health 2023
VMware Tanzu
 
Enhancing DevEx and Simplifying Operations at Scale
VMware Tanzu
 
Spring Update | July 2023
VMware Tanzu
 
Platforms, Platform Engineering, & Platform as a Product
VMware Tanzu
 
Building Cloud Ready Apps
VMware Tanzu
 
Spring Boot 3 And Beyond
VMware Tanzu
 
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
VMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
VMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
VMware Tanzu
 
tanzu_developer_connect.pptx
VMware Tanzu
 
Tanzu Virtual Developer Connect Workshop - French
VMware Tanzu
 
Tanzu Developer Connect Workshop - English
VMware Tanzu
 
Virtual Developer Connect Workshop - English
VMware Tanzu
 
Tanzu Developer Connect - French
VMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
VMware Tanzu
 
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
VMware Tanzu
 
SpringOne Tour: The Influential Software Engineer
VMware Tanzu
 
SpringOne Tour: Domain-Driven Design: Theory vs Practice
VMware Tanzu
 
Ad

Recently uploaded (20)

PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PPT
Interview paper part 3, It is based on Interview Prep
SoumyadeepGhosh39
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PDF
Learn Computer Forensics, Second Edition
AnuraShantha7
 
PDF
Smart Air Quality Monitoring with Serrax AQM190 LITE
SERRAX TECHNOLOGIES LLP
 
PPTX
Q2 Leading a Tableau User Group - Onboarding
lward7
 
PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PPTX
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
PDF
Predicting the unpredictable: re-engineering recommendation algorithms for fr...
Speck&Tech
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PDF
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
PDF
July Patch Tuesday
Ivanti
 
PPTX
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
Interview paper part 3, It is based on Interview Prep
SoumyadeepGhosh39
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
Learn Computer Forensics, Second Edition
AnuraShantha7
 
Smart Air Quality Monitoring with Serrax AQM190 LITE
SERRAX TECHNOLOGIES LLP
 
Q2 Leading a Tableau User Group - Onboarding
lward7
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
Top iOS App Development Company in the USA for Innovative Apps
SynapseIndia
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
Predicting the unpredictable: re-engineering recommendation algorithms for fr...
Speck&Tech
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
July Patch Tuesday
Ivanti
 
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 

Evolving to Cloud-Native - Nate Schutta 1/2