SlideShare ist ein Scribd-Unternehmen logo
1 von 35
CLOUD ANTI-
PATTERNS
DevOpsDays Ohio
November 2015
whoami Mallika Iyer
Cloud Foundry Specialist @ Pivotal
Twitter @cloudfoundryart
LinkedIn in/imallika
@cloudfoundryart
Certified TRX trainer | Fitness junkie | German Shepherd Fanatic
@cloudfoundryart
@cloudfoundryart
Agenda
• Cloud Anti-Patterns
• #1 Ignoring the Sweet Spot
• #2 Risk Mitigation v/s Innovation
• #3 The Monolithic Microservice
• #4 The Microservice Smell
• #5 The 3 musketeers of cloud-native apps
• #6 Boil tea, not the ocean
• #7 The micro-service push & shove
• #8 Build Pipelines are your BFFs
• #9 Siloed Search
• Summary
@cloudfoundryart
Before we begin…
• Let’s define things!
@cloudfoundryart
Microservices
Microservices is a software
architecture design pattern, in
which complex applications are
composed of small,
independent processes
communicating with each other
using language-agnostic APIs.
These services are small,
autonomous, highly
decoupled, work together and
focus on doing a small task.
@cloudfoundryart
Containers
A container is an isolated
and lightweight environment
that can run a service or
application without reliance
on a separate operating
system
eg: Docker,
Warden,
Garden…
@cloudfoundryart
Continuous Integration
The practice of merging all
developer working copies to a
shared mainline several
times a day
@cloudfoundryart
Continuous Delivery
An approach where teams
produce valuable software in
short cycles and release the
software reliably,
predictably and at times,
automatically
eg:
Concourse,
Jenkins,
Bamboo…
@cloudfoundryart
Cloud Anti-Patterns
#1 Finding the sweet spot
Sweet spot
cnp
CNP= Cloud Native Platform as a Service like Cloud Foundry
@cloudfoundryart
#1 Ignoring the sweet spot
@cloudfoundryart
#1 Ignoring the sweet spot
If I close my
eyes it doesn’t
exist…
cnp
CNP= Cloud Native Platform as a Service like Cloud Foundry
@cloudfoundryart
#2 Risk Mitigation v/s Innovation
• Problem
• Need to innovate
• Want to release cool features to production NOW
• Ops simply cannot support this because of uptime, HA, DR
and other concerns
• Result
• Everyone is unhappy
• Business is angry
• Everyone blames IT-Ops
• It’s not really fair...
@cloudfoundryart
Hai ya! New
cool features
tomorrow!!
No more
github for
you…
Code Ninjas/Developers
Special Ops/Operations
@cloudfoundryart
#2 Risk Mitigation v/s Innovation
• Solution
• You don’t have to choose!
• Select the right platform
• Something like Cloud Foundry…
• Self-healing
• Application distribution across Availability Zones
• Application resurrection
• Self-monitoring and resurrection
• VM recreation
• Inherently HA
• Visibility into all development activity
@cloudfoundryart
#3 The Monolithic Microservice
• Temptation:
• Grouping similar microservices in the same container
• Problem:
• Unable to scale
• Unable to deploy changes
• The monolithic creep
• Solution:
• ONE Micro Service Per container
@cloudfoundryart
#4 The Microservice Smell
Temptation:
Premature decomposition of microservices
• Problem:
• Company ‘Amazing-Stuff!!!’
has a product called
‘Awesome’
• They plan to create a new
offering called ‘Super-
Awesome’
• Similarities between the 2
products cause them to split
microservices and consume
them across both products
• ‘Super-Awesome’ really
KICKS off…takes a life of its
own
• Causing the developers to
rewrite the microservices for
the new product 
@cloudfoundryart
This micro service smells
of too many beers and
sweat…
@cloudfoundryart
#4 The Microservice Smell
• Lesson Learned:
• DON’T BE IN A HURRY to GO MICRO – Let it be
gradual!
@cloudfoundryart
#5 Ignoring the 3 Musketeers
APIs
Service
Registry
& Discovery
Fault
Tolerance
@cloudfoundryart
#5 The 3 Musketeers : APIs
Problem
• 100+ microservices
need to talk to each
other
• Many are changing
simultaneously
• And they are in about
5 different languages
Solution
• Use language-
independent APIs and
API interfaces like
swagger.io
• Honor the contract
between microservices
• Interactively document
the API and integrate it
with your project tracker
@cloudfoundryart
#5 The 3 Musketeers : Service
Discovery & Registry
Problem
• 100+ microservices are
now talking to each
other…
• Every time a new
microservice is added, all
the others must manually
be informed of its presence
Solution
• Use a service discovery
and registry tool like
Eureka (part of Spring
Cloud Services)
• Automate Service
Discovery and
Registration
• No errors at scale
@cloudfoundryart
#5 The 3 Musketeers : Fault
Tolerance
Problem
• A couple of internal
services that feed your
application fail for some
reason
• The failure has now
propagated to the API
• Your customers now
experience a disruption in
service causing $$$$$$
loss in revenue
Solution
• Use a circuit breaker like
Hystrix (part of Spring
Cloud Services)
• Isolate the point of origin of
the failure
• Contain the error and
prevent cascading failure
• Graceful degradation of
service while we work
furiously behind the scenes
to fix it
@cloudfoundryart
#6 Boil Tea, Not the Ocean
• Problem:
• The temptation to lift and shift a monolith
• Trying to rewrite the entire application
• Too much, too fast, too soon
• Challenges:
• Unrealistic
• Might not even be possible due to IaaS restrictions
• Moving a problem from a place you (kind of) understand to a
place you absolutely don’t
• Result:
• The Cloud Native Initiative lives on PowerPoint for
eternity
@cloudfoundryart
#6 Boil Tea, Not the Ocean
• Solution:
• Identify a function that can be rebuilt
• Something that would benefit from innovation
• Something that is hard to modify
• Something new
• With minimum impact on the rest of the monolith
• Clearly outline the technical debt associated with that
function
• Rewrite following best practices for microservices
• Start really…really small
• Or really…really new
@cloudfoundryart
#7 The microservice push & shove
@cloudfoundryart
#7 The microservice push &
shove
• Problem:
• In a distributed application architecture, how do you figure
out where to look?
• Solution:
• It doesn’t have to be that way…
• Logging is your friend…
• Pivotal Ops Metrics
• New Relic, App Dynamics, Sumo Logic, ELK,
Splunk…and so many more
• Dynamic Tracing is your friend…
• Explore Zipkin
• Application Performance Monitoring tools…
• New Relic, Drip Stat…
@cloudfoundryart
#8 Build Pipelines are your BFFs
KEEP CALM
AND
HUG
YOUR
BUILD PIPELINES
@cloudfoundryart
#9 Siloed Search
• Problem:
• Users cannot perform unified search
across data silos
• Search data is stale
@cloudfoundryart
#9 Cloud-Native Federated
Search
Solution:
• Create an Enterprise-Wide Data Bus with RabbitMQ
or Kafka
• Multiple microservices can asynchronously publish
interesting data points
• Search Event Listeners will listen to these events
and update the search indices in real-time
• Basically going from a data push model to Real-
time Data Pull Model
@cloudfoundryart
Summary
• Don’t ignore the sweet spot – A Cloud Native Platform as a
Service like Cloud Foundry is your best friend
• You don’t have to choose between Risk Mitigation and
Innovation – A Cloud Native Platform is your ally
• The Monolithic Micro service – don’t be THAT guy
• Be wary of the micro service smells – Know When to
Repeat Yourself
• The 3 Musketeers are your best friends: APIs(swagger.io),
Service Registry & Discovery (Eureka – Spring Cloud
Services), Fault Tolerance (Hystrix-Spring Cloud Services)
@cloudfoundryart
Summary
• Boil tea, not the ocean – Start small, start new
• Microservices need not be murder mysteries –
Logging and Tracing are your friends
• Automation is your friend – Keep calm and hug your
build pipelines across environments
• Siloed Search will ruin your customer experience –
Search should NEVER been an afterthought
@cloudfoundryart
Thank you!
Mallika Iyer @ Pivotal
Twitter @cloudfoundryart
LinkedIn in/imallika

Weitere ähnliche Inhalte

Was ist angesagt?

IBM Bluemix OpenWhisk: Interconnect 2016, Las Vegas: CCD-1088: The Future of ...
IBM Bluemix OpenWhisk: Interconnect 2016, Las Vegas: CCD-1088: The Future of ...IBM Bluemix OpenWhisk: Interconnect 2016, Las Vegas: CCD-1088: The Future of ...
IBM Bluemix OpenWhisk: Interconnect 2016, Las Vegas: CCD-1088: The Future of ...OpenWhisk
 
JAX 2014 - The PaaS to a better IT architecture.
JAX 2014 - The PaaS to a better IT architecture.JAX 2014 - The PaaS to a better IT architecture.
JAX 2014 - The PaaS to a better IT architecture.Sebastian Faulhaber
 
Continuous Delivery: How RightScale Releases Weekly
Continuous Delivery: How RightScale Releases WeeklyContinuous Delivery: How RightScale Releases Weekly
Continuous Delivery: How RightScale Releases WeeklyRightScale
 
The Serverless Paradigm, OpenWhisk and FIWARE
The Serverless Paradigm, OpenWhisk and FIWAREThe Serverless Paradigm, OpenWhisk and FIWARE
The Serverless Paradigm, OpenWhisk and FIWAREAlex Glikson
 
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?Mark Heckler
 
Clouds & Containers: Hit the High Points and Give it to Me Straight, What's t...
Clouds & Containers: Hit the High Points and Give it to Me Straight, What's t...Clouds & Containers: Hit the High Points and Give it to Me Straight, What's t...
Clouds & Containers: Hit the High Points and Give it to Me Straight, What's t...Mark Heckler
 
Going Reactive in the Land of No
Going Reactive in the Land of NoGoing Reactive in the Land of No
Going Reactive in the Land of NoLightbend
 
Your Journey to Cloud-Native Begins with DevOps, Microservices, and Containers
Your Journey to Cloud-Native Begins with DevOps, Microservices, and ContainersYour Journey to Cloud-Native Begins with DevOps, Microservices, and Containers
Your Journey to Cloud-Native Begins with DevOps, Microservices, and ContainersAtlassian
 
The hardest part of microservices: your data
The hardest part of microservices: your dataThe hardest part of microservices: your data
The hardest part of microservices: your dataChristian Posta
 
From Zero to Serverless (DogFoodCon 2018)
From Zero to Serverless (DogFoodCon 2018)From Zero to Serverless (DogFoodCon 2018)
From Zero to Serverless (DogFoodCon 2018)Chad Green
 
OpenWhisk - A platform for cloud native, serverless, event driven apps
OpenWhisk - A platform for cloud native, serverless, event driven appsOpenWhisk - A platform for cloud native, serverless, event driven apps
OpenWhisk - A platform for cloud native, serverless, event driven appsDaniel Krook
 
OpenWhisk Under the Hood -- London Oct 16 2016
OpenWhisk Under the Hood -- London Oct 16 2016OpenWhisk Under the Hood -- London Oct 16 2016
OpenWhisk Under the Hood -- London Oct 16 2016Stephen Fink
 
From Zero to Serverless (CoderCruise 2018)
From Zero to Serverless (CoderCruise 2018)From Zero to Serverless (CoderCruise 2018)
From Zero to Serverless (CoderCruise 2018)Chad Green
 
It’s Not Just Request/Response: Understanding Event-driven Microservices
It’s Not Just Request/Response: Understanding Event-driven MicroservicesIt’s Not Just Request/Response: Understanding Event-driven Microservices
It’s Not Just Request/Response: Understanding Event-driven Microservicescornelia davis
 
OpenWhisk: Event-driven Design
OpenWhisk: Event-driven DesignOpenWhisk: Event-driven Design
OpenWhisk: Event-driven DesignAltoros
 
OpenWhisk Introduction
OpenWhisk IntroductionOpenWhisk Introduction
OpenWhisk IntroductionIoana Baldini
 
Building a Platform for the People - IBM's Open Cloud Architecture Summit - A...
Building a Platform for the People - IBM's Open Cloud Architecture Summit - A...Building a Platform for the People - IBM's Open Cloud Architecture Summit - A...
Building a Platform for the People - IBM's Open Cloud Architecture Summit - A...Chip Childers
 
The Reactive Principles: Eight Tenets For Building Cloud Native Applications
The Reactive Principles: Eight Tenets For Building Cloud Native ApplicationsThe Reactive Principles: Eight Tenets For Building Cloud Native Applications
The Reactive Principles: Eight Tenets For Building Cloud Native ApplicationsLightbend
 
All about that reactive ui
All about that reactive uiAll about that reactive ui
All about that reactive uiPaul van Zyl
 
Serverless Meetup - Event Sourcing
Serverless Meetup - Event SourcingServerless Meetup - Event Sourcing
Serverless Meetup - Event SourcingLuca Bianchi
 

Was ist angesagt? (20)

IBM Bluemix OpenWhisk: Interconnect 2016, Las Vegas: CCD-1088: The Future of ...
IBM Bluemix OpenWhisk: Interconnect 2016, Las Vegas: CCD-1088: The Future of ...IBM Bluemix OpenWhisk: Interconnect 2016, Las Vegas: CCD-1088: The Future of ...
IBM Bluemix OpenWhisk: Interconnect 2016, Las Vegas: CCD-1088: The Future of ...
 
JAX 2014 - The PaaS to a better IT architecture.
JAX 2014 - The PaaS to a better IT architecture.JAX 2014 - The PaaS to a better IT architecture.
JAX 2014 - The PaaS to a better IT architecture.
 
Continuous Delivery: How RightScale Releases Weekly
Continuous Delivery: How RightScale Releases WeeklyContinuous Delivery: How RightScale Releases Weekly
Continuous Delivery: How RightScale Releases Weekly
 
The Serverless Paradigm, OpenWhisk and FIWARE
The Serverless Paradigm, OpenWhisk and FIWAREThe Serverless Paradigm, OpenWhisk and FIWARE
The Serverless Paradigm, OpenWhisk and FIWARE
 
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
 
Clouds & Containers: Hit the High Points and Give it to Me Straight, What's t...
Clouds & Containers: Hit the High Points and Give it to Me Straight, What's t...Clouds & Containers: Hit the High Points and Give it to Me Straight, What's t...
Clouds & Containers: Hit the High Points and Give it to Me Straight, What's t...
 
Going Reactive in the Land of No
Going Reactive in the Land of NoGoing Reactive in the Land of No
Going Reactive in the Land of No
 
Your Journey to Cloud-Native Begins with DevOps, Microservices, and Containers
Your Journey to Cloud-Native Begins with DevOps, Microservices, and ContainersYour Journey to Cloud-Native Begins with DevOps, Microservices, and Containers
Your Journey to Cloud-Native Begins with DevOps, Microservices, and Containers
 
The hardest part of microservices: your data
The hardest part of microservices: your dataThe hardest part of microservices: your data
The hardest part of microservices: your data
 
From Zero to Serverless (DogFoodCon 2018)
From Zero to Serverless (DogFoodCon 2018)From Zero to Serverless (DogFoodCon 2018)
From Zero to Serverless (DogFoodCon 2018)
 
OpenWhisk - A platform for cloud native, serverless, event driven apps
OpenWhisk - A platform for cloud native, serverless, event driven appsOpenWhisk - A platform for cloud native, serverless, event driven apps
OpenWhisk - A platform for cloud native, serverless, event driven apps
 
OpenWhisk Under the Hood -- London Oct 16 2016
OpenWhisk Under the Hood -- London Oct 16 2016OpenWhisk Under the Hood -- London Oct 16 2016
OpenWhisk Under the Hood -- London Oct 16 2016
 
From Zero to Serverless (CoderCruise 2018)
From Zero to Serverless (CoderCruise 2018)From Zero to Serverless (CoderCruise 2018)
From Zero to Serverless (CoderCruise 2018)
 
It’s Not Just Request/Response: Understanding Event-driven Microservices
It’s Not Just Request/Response: Understanding Event-driven MicroservicesIt’s Not Just Request/Response: Understanding Event-driven Microservices
It’s Not Just Request/Response: Understanding Event-driven Microservices
 
OpenWhisk: Event-driven Design
OpenWhisk: Event-driven DesignOpenWhisk: Event-driven Design
OpenWhisk: Event-driven Design
 
OpenWhisk Introduction
OpenWhisk IntroductionOpenWhisk Introduction
OpenWhisk Introduction
 
Building a Platform for the People - IBM's Open Cloud Architecture Summit - A...
Building a Platform for the People - IBM's Open Cloud Architecture Summit - A...Building a Platform for the People - IBM's Open Cloud Architecture Summit - A...
Building a Platform for the People - IBM's Open Cloud Architecture Summit - A...
 
The Reactive Principles: Eight Tenets For Building Cloud Native Applications
The Reactive Principles: Eight Tenets For Building Cloud Native ApplicationsThe Reactive Principles: Eight Tenets For Building Cloud Native Applications
The Reactive Principles: Eight Tenets For Building Cloud Native Applications
 
All about that reactive ui
All about that reactive uiAll about that reactive ui
All about that reactive ui
 
Serverless Meetup - Event Sourcing
Serverless Meetup - Event SourcingServerless Meetup - Event Sourcing
Serverless Meetup - Event Sourcing
 

Ähnlich wie CLOUD ANTI-PATTERNS

The Need of Cloud-Native Application
The Need of Cloud-Native ApplicationThe Need of Cloud-Native Application
The Need of Cloud-Native ApplicationEmiliano Pecis
 
JavaOne 2016 "Java, Microservices, Cloud and Containers"
JavaOne 2016 "Java, Microservices, Cloud and Containers"JavaOne 2016 "Java, Microservices, Cloud and Containers"
JavaOne 2016 "Java, Microservices, Cloud and Containers"Daniel Bryant
 
From Monoliths to Services: Grafually paying your Technical Debt
From Monoliths to Services: Grafually paying your Technical DebtFrom Monoliths to Services: Grafually paying your Technical Debt
From Monoliths to Services: Grafually paying your Technical DebtDavid Litvak Bruno
 
Microservices, Spring Cloud & Cloud Foundry
Microservices, Spring Cloud & Cloud FoundryMicroservices, Spring Cloud & Cloud Foundry
Microservices, Spring Cloud & Cloud FoundryEmilio Garcia
 
QCon 2015 - Microservices Track Notes
QCon 2015 - Microservices Track Notes QCon 2015 - Microservices Track Notes
QCon 2015 - Microservices Track Notes Abdul Basit Munda
 
Microservices: Yes or not?
Microservices: Yes or not?Microservices: Yes or not?
Microservices: Yes or not?Eduard Tomàs
 
What serverless means for enterprise apps
What serverless means for enterprise appsWhat serverless means for enterprise apps
What serverless means for enterprise appsSumit Sarkar
 
Microservices: The Best Practices
Microservices: The Best PracticesMicroservices: The Best Practices
Microservices: The Best PracticesPavel Mička
 
AWS Summit Auckland - Smaller is Better - Microservices on AWS
AWS Summit Auckland - Smaller is Better - Microservices on AWSAWS Summit Auckland - Smaller is Better - Microservices on AWS
AWS Summit Auckland - Smaller is Better - Microservices on AWSAmazon Web Services
 
Take your CFML Legacy Apps to Modernization
Take your CFML Legacy Apps to ModernizationTake your CFML Legacy Apps to Modernization
Take your CFML Legacy Apps to ModernizationOrtus Solutions, Corp
 
AWS Innovate: Smaller IS Better – Exploiting Microservices on AWS, Craig Dickson
AWS Innovate: Smaller IS Better – Exploiting Microservices on AWS, Craig DicksonAWS Innovate: Smaller IS Better – Exploiting Microservices on AWS, Craig Dickson
AWS Innovate: Smaller IS Better – Exploiting Microservices on AWS, Craig DicksonAmazon Web Services Korea
 
Evolving to Cloud-Native - Nate Schutta (2/2)
Evolving to Cloud-Native - Nate Schutta (2/2)Evolving to Cloud-Native - Nate Schutta (2/2)
Evolving to Cloud-Native - Nate Schutta (2/2)VMware Tanzu
 
Microservices - Scaling Development and Service
Microservices - Scaling Development and ServiceMicroservices - Scaling Development and Service
Microservices - Scaling Development and ServicePaulo Gaspar
 
Tips For a Successful Cloud Proof-of-Concept - RightScale Compute 2013
Tips For a Successful Cloud Proof-of-Concept - RightScale Compute 2013Tips For a Successful Cloud Proof-of-Concept - RightScale Compute 2013
Tips For a Successful Cloud Proof-of-Concept - RightScale Compute 2013RightScale
 
Microservices pros and cons dark
Microservices pros and cons darkMicroservices pros and cons dark
Microservices pros and cons darkAndrew Siemer
 
Evolving to Cloud-Native - Nate Schutta 2/2
Evolving to Cloud-Native - Nate Schutta 2/2Evolving to Cloud-Native - Nate Schutta 2/2
Evolving to Cloud-Native - Nate Schutta 2/2VMware Tanzu
 
Patterns of Cloud Native Architecture
Patterns of Cloud Native ArchitecturePatterns of Cloud Native Architecture
Patterns of Cloud Native ArchitectureAndrew Shafer
 
RightScale: Single Pane of Glass at Computerworld 2013
RightScale:  Single Pane of Glass at Computerworld 2013RightScale:  Single Pane of Glass at Computerworld 2013
RightScale: Single Pane of Glass at Computerworld 2013RightScale
 
Microservices for Mortals by Bert Ertman at Codemotion Dubai
 Microservices for Mortals by Bert Ertman at Codemotion Dubai Microservices for Mortals by Bert Ertman at Codemotion Dubai
Microservices for Mortals by Bert Ertman at Codemotion DubaiCodemotion Dubai
 

Ähnlich wie CLOUD ANTI-PATTERNS (20)

The Need of Cloud-Native Application
The Need of Cloud-Native ApplicationThe Need of Cloud-Native Application
The Need of Cloud-Native Application
 
JavaOne 2016 "Java, Microservices, Cloud and Containers"
JavaOne 2016 "Java, Microservices, Cloud and Containers"JavaOne 2016 "Java, Microservices, Cloud and Containers"
JavaOne 2016 "Java, Microservices, Cloud and Containers"
 
From Monoliths to Services: Grafually paying your Technical Debt
From Monoliths to Services: Grafually paying your Technical DebtFrom Monoliths to Services: Grafually paying your Technical Debt
From Monoliths to Services: Grafually paying your Technical Debt
 
Microservices, Spring Cloud & Cloud Foundry
Microservices, Spring Cloud & Cloud FoundryMicroservices, Spring Cloud & Cloud Foundry
Microservices, Spring Cloud & Cloud Foundry
 
QCon 2015 - Microservices Track Notes
QCon 2015 - Microservices Track Notes QCon 2015 - Microservices Track Notes
QCon 2015 - Microservices Track Notes
 
Microservices: Yes or not?
Microservices: Yes or not?Microservices: Yes or not?
Microservices: Yes or not?
 
DevOps Days Ohio
DevOps Days OhioDevOps Days Ohio
DevOps Days Ohio
 
What serverless means for enterprise apps
What serverless means for enterprise appsWhat serverless means for enterprise apps
What serverless means for enterprise apps
 
Microservices: The Best Practices
Microservices: The Best PracticesMicroservices: The Best Practices
Microservices: The Best Practices
 
AWS Summit Auckland - Smaller is Better - Microservices on AWS
AWS Summit Auckland - Smaller is Better - Microservices on AWSAWS Summit Auckland - Smaller is Better - Microservices on AWS
AWS Summit Auckland - Smaller is Better - Microservices on AWS
 
Take your CFML Legacy Apps to Modernization
Take your CFML Legacy Apps to ModernizationTake your CFML Legacy Apps to Modernization
Take your CFML Legacy Apps to Modernization
 
AWS Innovate: Smaller IS Better – Exploiting Microservices on AWS, Craig Dickson
AWS Innovate: Smaller IS Better – Exploiting Microservices on AWS, Craig DicksonAWS Innovate: Smaller IS Better – Exploiting Microservices on AWS, Craig Dickson
AWS Innovate: Smaller IS Better – Exploiting Microservices on AWS, Craig Dickson
 
Evolving to Cloud-Native - Nate Schutta (2/2)
Evolving to Cloud-Native - Nate Schutta (2/2)Evolving to Cloud-Native - Nate Schutta (2/2)
Evolving to Cloud-Native - Nate Schutta (2/2)
 
Microservices - Scaling Development and Service
Microservices - Scaling Development and ServiceMicroservices - Scaling Development and Service
Microservices - Scaling Development and Service
 
Tips For a Successful Cloud Proof-of-Concept - RightScale Compute 2013
Tips For a Successful Cloud Proof-of-Concept - RightScale Compute 2013Tips For a Successful Cloud Proof-of-Concept - RightScale Compute 2013
Tips For a Successful Cloud Proof-of-Concept - RightScale Compute 2013
 
Microservices pros and cons dark
Microservices pros and cons darkMicroservices pros and cons dark
Microservices pros and cons dark
 
Evolving to Cloud-Native - Nate Schutta 2/2
Evolving to Cloud-Native - Nate Schutta 2/2Evolving to Cloud-Native - Nate Schutta 2/2
Evolving to Cloud-Native - Nate Schutta 2/2
 
Patterns of Cloud Native Architecture
Patterns of Cloud Native ArchitecturePatterns of Cloud Native Architecture
Patterns of Cloud Native Architecture
 
RightScale: Single Pane of Glass at Computerworld 2013
RightScale:  Single Pane of Glass at Computerworld 2013RightScale:  Single Pane of Glass at Computerworld 2013
RightScale: Single Pane of Glass at Computerworld 2013
 
Microservices for Mortals by Bert Ertman at Codemotion Dubai
 Microservices for Mortals by Bert Ertman at Codemotion Dubai Microservices for Mortals by Bert Ertman at Codemotion Dubai
Microservices for Mortals by Bert Ertman at Codemotion Dubai
 

Kürzlich hochgeladen

Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 

Kürzlich hochgeladen (20)

Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 

CLOUD ANTI-PATTERNS

  • 2. whoami Mallika Iyer Cloud Foundry Specialist @ Pivotal Twitter @cloudfoundryart LinkedIn in/imallika @cloudfoundryart
  • 3. Certified TRX trainer | Fitness junkie | German Shepherd Fanatic @cloudfoundryart
  • 5. Agenda • Cloud Anti-Patterns • #1 Ignoring the Sweet Spot • #2 Risk Mitigation v/s Innovation • #3 The Monolithic Microservice • #4 The Microservice Smell • #5 The 3 musketeers of cloud-native apps • #6 Boil tea, not the ocean • #7 The micro-service push & shove • #8 Build Pipelines are your BFFs • #9 Siloed Search • Summary @cloudfoundryart
  • 6. Before we begin… • Let’s define things! @cloudfoundryart
  • 7. Microservices Microservices is a software architecture design pattern, in which complex applications are composed of small, independent processes communicating with each other using language-agnostic APIs. These services are small, autonomous, highly decoupled, work together and focus on doing a small task. @cloudfoundryart
  • 8. Containers A container is an isolated and lightweight environment that can run a service or application without reliance on a separate operating system eg: Docker, Warden, Garden… @cloudfoundryart
  • 9. Continuous Integration The practice of merging all developer working copies to a shared mainline several times a day @cloudfoundryart
  • 10. Continuous Delivery An approach where teams produce valuable software in short cycles and release the software reliably, predictably and at times, automatically eg: Concourse, Jenkins, Bamboo… @cloudfoundryart
  • 12. #1 Finding the sweet spot Sweet spot cnp CNP= Cloud Native Platform as a Service like Cloud Foundry @cloudfoundryart
  • 13. #1 Ignoring the sweet spot @cloudfoundryart
  • 14. #1 Ignoring the sweet spot If I close my eyes it doesn’t exist… cnp CNP= Cloud Native Platform as a Service like Cloud Foundry @cloudfoundryart
  • 15. #2 Risk Mitigation v/s Innovation • Problem • Need to innovate • Want to release cool features to production NOW • Ops simply cannot support this because of uptime, HA, DR and other concerns • Result • Everyone is unhappy • Business is angry • Everyone blames IT-Ops • It’s not really fair... @cloudfoundryart
  • 16. Hai ya! New cool features tomorrow!! No more github for you… Code Ninjas/Developers Special Ops/Operations @cloudfoundryart
  • 17. #2 Risk Mitigation v/s Innovation • Solution • You don’t have to choose! • Select the right platform • Something like Cloud Foundry… • Self-healing • Application distribution across Availability Zones • Application resurrection • Self-monitoring and resurrection • VM recreation • Inherently HA • Visibility into all development activity @cloudfoundryart
  • 18. #3 The Monolithic Microservice • Temptation: • Grouping similar microservices in the same container • Problem: • Unable to scale • Unable to deploy changes • The monolithic creep • Solution: • ONE Micro Service Per container @cloudfoundryart
  • 19. #4 The Microservice Smell Temptation: Premature decomposition of microservices • Problem: • Company ‘Amazing-Stuff!!!’ has a product called ‘Awesome’ • They plan to create a new offering called ‘Super- Awesome’ • Similarities between the 2 products cause them to split microservices and consume them across both products • ‘Super-Awesome’ really KICKS off…takes a life of its own • Causing the developers to rewrite the microservices for the new product  @cloudfoundryart
  • 20. This micro service smells of too many beers and sweat… @cloudfoundryart
  • 21. #4 The Microservice Smell • Lesson Learned: • DON’T BE IN A HURRY to GO MICRO – Let it be gradual! @cloudfoundryart
  • 22. #5 Ignoring the 3 Musketeers APIs Service Registry & Discovery Fault Tolerance @cloudfoundryart
  • 23. #5 The 3 Musketeers : APIs Problem • 100+ microservices need to talk to each other • Many are changing simultaneously • And they are in about 5 different languages Solution • Use language- independent APIs and API interfaces like swagger.io • Honor the contract between microservices • Interactively document the API and integrate it with your project tracker @cloudfoundryart
  • 24. #5 The 3 Musketeers : Service Discovery & Registry Problem • 100+ microservices are now talking to each other… • Every time a new microservice is added, all the others must manually be informed of its presence Solution • Use a service discovery and registry tool like Eureka (part of Spring Cloud Services) • Automate Service Discovery and Registration • No errors at scale @cloudfoundryart
  • 25. #5 The 3 Musketeers : Fault Tolerance Problem • A couple of internal services that feed your application fail for some reason • The failure has now propagated to the API • Your customers now experience a disruption in service causing $$$$$$ loss in revenue Solution • Use a circuit breaker like Hystrix (part of Spring Cloud Services) • Isolate the point of origin of the failure • Contain the error and prevent cascading failure • Graceful degradation of service while we work furiously behind the scenes to fix it @cloudfoundryart
  • 26. #6 Boil Tea, Not the Ocean • Problem: • The temptation to lift and shift a monolith • Trying to rewrite the entire application • Too much, too fast, too soon • Challenges: • Unrealistic • Might not even be possible due to IaaS restrictions • Moving a problem from a place you (kind of) understand to a place you absolutely don’t • Result: • The Cloud Native Initiative lives on PowerPoint for eternity @cloudfoundryart
  • 27. #6 Boil Tea, Not the Ocean • Solution: • Identify a function that can be rebuilt • Something that would benefit from innovation • Something that is hard to modify • Something new • With minimum impact on the rest of the monolith • Clearly outline the technical debt associated with that function • Rewrite following best practices for microservices • Start really…really small • Or really…really new @cloudfoundryart
  • 28. #7 The microservice push & shove @cloudfoundryart
  • 29. #7 The microservice push & shove • Problem: • In a distributed application architecture, how do you figure out where to look? • Solution: • It doesn’t have to be that way… • Logging is your friend… • Pivotal Ops Metrics • New Relic, App Dynamics, Sumo Logic, ELK, Splunk…and so many more • Dynamic Tracing is your friend… • Explore Zipkin • Application Performance Monitoring tools… • New Relic, Drip Stat… @cloudfoundryart
  • 30. #8 Build Pipelines are your BFFs KEEP CALM AND HUG YOUR BUILD PIPELINES @cloudfoundryart
  • 31. #9 Siloed Search • Problem: • Users cannot perform unified search across data silos • Search data is stale @cloudfoundryart
  • 32. #9 Cloud-Native Federated Search Solution: • Create an Enterprise-Wide Data Bus with RabbitMQ or Kafka • Multiple microservices can asynchronously publish interesting data points • Search Event Listeners will listen to these events and update the search indices in real-time • Basically going from a data push model to Real- time Data Pull Model @cloudfoundryart
  • 33. Summary • Don’t ignore the sweet spot – A Cloud Native Platform as a Service like Cloud Foundry is your best friend • You don’t have to choose between Risk Mitigation and Innovation – A Cloud Native Platform is your ally • The Monolithic Micro service – don’t be THAT guy • Be wary of the micro service smells – Know When to Repeat Yourself • The 3 Musketeers are your best friends: APIs(swagger.io), Service Registry & Discovery (Eureka – Spring Cloud Services), Fault Tolerance (Hystrix-Spring Cloud Services) @cloudfoundryart
  • 34. Summary • Boil tea, not the ocean – Start small, start new • Microservices need not be murder mysteries – Logging and Tracing are your friends • Automation is your friend – Keep calm and hug your build pipelines across environments • Siloed Search will ruin your customer experience – Search should NEVER been an afterthought @cloudfoundryart
  • 35. Thank you! Mallika Iyer @ Pivotal Twitter @cloudfoundryart LinkedIn in/imallika

Hinweis der Redaktion

  1. Elaborate on visibility into all development activity
  2. The goal is to deliver tested, mature software after every development iteration, without being a burden on Ops – Ops needs to be the invisible glue that is holding this together, hardening it constantly with every change, every automation, and the focus should be on building great software, not worry about HOW to deploy it. If you get to that point, Ops has most definitely ‘arrived’
  3. When you have a lot of data, and accuracy and relevance of the search results are important to you – the likelihood is that you will use large scale search technologies like Solr. This was a problem I saw at one of the largest users of Solr in the world And a lot of microservices simultaneously updating the data – you start to get search silos , and stale data is the result How do you get around this