SlideShare a Scribd company logo
1 of 44
Download to read offline
© Copyright 2018 Pivotal Software, Inc. All rights Reserved. Version 1.0
Evolving to the Cloud
Anand Rao
Advisory Platform Architect
Clue2solve.io
@honnuanand
The Journey ( or
Journies ?)
● To the Cloud
● To Microservices
● Modular Monoliths
● Containers ? now what is that … ?
● Serverless ..“ I don’t want any Servers …cough ??”
● Hybrid ...Poly Cloud
Navigation
Where is my Magic Wand ?
● Make Sense of all the above
○ What do I need ?
○ What fits my needs , solve my problems
and get me my Outcomes ?
● Real Engineering issues to overcome
● People and Culture
Beware
● Resume Driven Development
● Fear driven Development :)
Vs
● Outcome driven Development
Caution
● There will be pitfalls
● The need to pivot quickly being Agile and
nimble
● Learn from the experiences of others , self
experiment may be costly
Cloud Native ?
● Applications designed to take advantage of
cloud computing.
● Fundamentally about how we create and
deploy applications.
What do I get by
running my Apps
in the Cloud ?
● Scale up. Scale down. On demand.
● Limitless compute.( Really ? … Fees )
Cloud Native
● Cloud native isn’t just an architectural pattern.
● Instead , it can be defined as a Combination of
practices, techniques, technologies.
○ Agile Development
○ Continuous delivery
○ Automation
○ Containers
○ Microservices / Functions
○ Changes our culture.
○ DevOps concept
Infrastructure
Shift
Where were we ?
● Homegrown Servers
● Handcrafted
● Treated with so much care .. like Pets
● Always attended to it , day and night ..
● Never had enough .. Constrained resources
● Expensive
App Servers
The Expensive servers brought the need for Return on
Investment on the Servers that lead to the need to
pack many apps on the same server
Effect of App
Servers
Som times unintended
● 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
● Code deployment Freezes
● Longer Test Cycles
● Fear potential failures and outages slows
down the delivery of software
Is this all worth the Pain ?
Don’t Change it ,
Don’t Break it ..
“Fear is the path to the dark side. Fear leads to anger.
Anger leads to hate. Hate leads to suffering.” -Yoda
The Ops
● Move code from one server to another
● Worked in dev…but not test.
○ Are the Environments the same ?
○ What is the order of the patches applied ?
Server Evolution
● Intel Chips Take over the market
● Everything is relatively cheaper
● I now have no limit on my server resources
● Hardware costs dip below People Costs
● Servers became a commodity
The Cloud “as a
Service”
● Heroku
● AWS
● Google App Engine
● Cloud Foundry
● Azure
What do all these have in Common ? “I can run my
apps on their servers !!”
Shared
self-managed
Servers Vs the
Cloud
Shared Servers became a huge liability ,
we need to “Treat them as Cattle not Pets “
The Abstractions
Game Changers
● Containers
● PAAS
Now you can
● Package the app up with everything it
needs
● Move *that* to a different environment
It Works ● Works in Dev means , it will work in prod,
○ The environments are similar
○ Deployment process is similar
○ Isolated runtimes allows for rapid changes in
apps and dependencies
The big win - it Works
The Value Line
Moves the Value line
Positive Effects ● Changes the development process
● Constant changes to Apps
● Focussed experiments. A/B Testing
● Rapid response to business changes
● Deliver in days not Months
Speed and
Disruption
Face need for Speed and face disruption
● No Industry is immune to disruption
○ Amazon ? Google ? What industry do
they cover ?
● Every business is driven by Technology ,
every company is a Technology company
The 12 Factors Characteristics Shared by
Successful Apps
Originated at Heroku, Adopted by
many other industry leaders
The 12 Factors
I. Codebase
One codebase tracked in revision control, many deploys
II. Dependencies
Explicitly declare and isolate dependencies
III. Config
Store config in the environment
IV. Backing services
Treat backing services as attached resources
V. Build, release, run
Strictly separate build and run stages
The 12 Factors
VI. Processes
Execute the app as one or more stateless processes
VII. Port binding
Export services via port binding
VIII. Concurrency
Scale out via the process model
IX. Disposability
Maximize robustness with fast startup and graceful shutdown
X. Dev/prod parity
Keep development, staging, and production as similar as possible
The 12 Factors
XI. Logs
Treat logs as event streams
XII. Admin processes
Run admin/management tasks as one-off processes
Legacy Apps
Legacy Apps may not comply to many of the
12 factors , or sometimes none. So is it 12
factor bust ?
Pushing Zero Factor Apps to Cloud Foundry
http://cloud.rohitkelapure.com/2017/10/pushing
-zero-factor-apps-to-cloud.html
The key factors to
focus
Some factors can be Challenging !
● Explicitly define your dependencies
● Configuration must be separate from the
code
● Stateless - share nothing
● Start up fast, shutdown gracefully
○ Impact on health checks
● Dev/Prod parity
12 Factor is a good Goal, Not a must. You will
need to make the right choices
Maximize the
Cloud Advantage
Example : Long startup time hurts elastic
scaling & self healing
Beyond the 12
Factor Apps
Beyond the Twelve-Factor App
https://content.pivotal.io/blog/beyond-the-twelve
-factor-app
● Legacy applications will fall short
● Opportunistically refactor
● Building Greenfield ? Go Cloud Native
Microservices
● Monoliths limit your evolution
○ Developer productivity takes a hit
○ Hard to get your head wrapped around a
huge code base
○ Long ramp up times for new developers
○ Small change results in building and
deploying everything
○ Scaling means scaling the entire application
● Modularity breaks over time and leads to longer
time to functionality and frustration
Microservices
So what defines a Microservice ?
● No Single Definition
● Anything that can be rewritten two weeks or less
● Suite of small, focussed services
● Do one thing, do it well
● Knit simple pieces together to get complex
results
● Independently deployable , scalable
● Evolve at different rates
● Right Tech for the Right Jobs
● Focus on Business Capabilities
● High Cohesion and low coupling
It is just another approach. An
architectural style. A pattern
They are all tools
Use the right Tool for the Job
Please Microservice Responsibly.
https://content.pivotal.io/blog/should-that-be-ami
croservice-keep-these-six-factors-in-mind
Do the right
things “If you can't build a monolith, what makes you think
microservices are the answer?”
–Simon Brown
http://www.codingthearchitecture.com/2014/07/06/
distributed_big_balls_of_mud.html
Serverless
Functions “as a Service” !
What do I need to do ? Rewrite my
code ?
Think “Abstractions” !
The right
abstraction for
the workloads
Use the highest
abstraction
possible
Your strategic goal: Push as many workloads as technically
feasible to the top of the platform hierarchy
Functions ● Focus on business problems, not plumbing
problems
● Terminate the container
● A fractional cost per request
● Operational efficiencies
● Serverless ops? Is that a thing ? think Value line
● Use it for the right workload
The Journey to
the Cloud
Where do I start ?
● Access your inventory
● Focus on the outcomes
● Tools to Access apps
○ Extract Tech characteristics
■ Stack
■ Version
■ Users
■ Load
■ Speed ( and expected )
■ Dependencies
■ Integrations
■ Data Access
■ CI/CD ?
■ Test coverage
■ Refactoring Effort
The Journey to
the Cloud
● Look for certain Red Flags
○ Vendor dependencies
○ Writing to and reading from the file
system
○ Long Startup or shutdown times
○ Non HTTP protocols
○ Hard coded configs
○ Container based shared state
○ Distributed transactions
The Journey to
the Cloud
Scorecard based on the assessment of the
state and effort for refactoring
● Remember is a Sliding Scale
The Journey to
the Cloud
What is needed
● Application knowledge
● Clear path to end state
● Set amount of time per application
● Consider automation of analysis and reporting of
the state of the application and scoring
● T-Shirt sizing instead of too much in depth
analysis
● Focus on patterns to allow your to have better
guess on the effort
● Business value articulation
End state Need Cloud Native or Being in the cloud
● Handling of legacy app
refactoring
● Forklift app into the cloud ?
The Process
● Pilot Apps
● Ask the experts
● Center of excellence to help teams get
enabled and migrate their Apps
● Clearly planned Roadmap
● App migration Grouping and dependency
● Lean migrations
Your North Star
Keep the Stakeholders Happy which intern
means , you are happy !

More Related Content

What's hot

Micro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - PlansoftMicro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - PlansoftMiki Lombardi
 
Going MicroServices with Net
Going MicroServices with NetGoing MicroServices with Net
Going MicroServices with NetDavid Revoledo
 
Compass digital ocean’s customer advisory group 2021_10
Compass digital ocean’s customer advisory group 2021_10Compass digital ocean’s customer advisory group 2021_10
Compass digital ocean’s customer advisory group 2021_10Pierre Mavro
 
Cloud Native Computing: What does it mean, and is your app Cloud Native?
Cloud Native Computing: What does it mean, and is your app Cloud Native?Cloud Native Computing: What does it mean, and is your app Cloud Native?
Cloud Native Computing: What does it mean, and is your app Cloud Native?Michael O'Sullivan
 
Back your app with MySQL and Redis on Cloud Foundry
Back your app with MySQL and Redis on Cloud FoundryBack your app with MySQL and Redis on Cloud Foundry
Back your app with MySQL and Redis on Cloud FoundryKenny Bastani
 
Handling Secrets in Your Cloud Native Architecture
Handling Secrets in Your Cloud Native ArchitectureHandling Secrets in Your Cloud Native Architecture
Handling Secrets in Your Cloud Native ArchitectureVMware Tanzu
 
Domain-driven Design
Domain-driven DesignDomain-driven Design
Domain-driven DesignAltoros
 
Putting The 'M' In MBaaS—Red Hat Mobile Client Development Platform (Jay Balu...
Putting The 'M' In MBaaS—Red Hat Mobile Client Development Platform (Jay Balu...Putting The 'M' In MBaaS—Red Hat Mobile Client Development Platform (Jay Balu...
Putting The 'M' In MBaaS—Red Hat Mobile Client Development Platform (Jay Balu...Red Hat Developers
 
Cloud-native Patterns (July 4th, 2019)
Cloud-native Patterns (July 4th, 2019)Cloud-native Patterns (July 4th, 2019)
Cloud-native Patterns (July 4th, 2019)Alexandre Roman
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice ArchitectureNguyen Tung
 
Cloud Native Application Framework
Cloud Native Application FrameworkCloud Native Application Framework
Cloud Native Application FrameworkVMware Tanzu
 
IoT Scale Event-Stream Processing for Connected Fleet at Penske
IoT Scale Event-Stream Processing for Connected Fleet at PenskeIoT Scale Event-Stream Processing for Connected Fleet at Penske
IoT Scale Event-Stream Processing for Connected Fleet at PenskeVMware Tanzu
 
How to Overcome Data Challenges When Refactoring Monoliths to Microservices
How to Overcome Data Challenges When Refactoring Monoliths to MicroservicesHow to Overcome Data Challenges When Refactoring Monoliths to Microservices
How to Overcome Data Challenges When Refactoring Monoliths to MicroservicesVMware Tanzu
 
Cloud Native Application
Cloud Native ApplicationCloud Native Application
Cloud Native ApplicationVMUG IT
 
Building Reactive Applications With Node.Js And Red Hat JBoss Data Grid (Gald...
Building Reactive Applications With Node.Js And Red Hat JBoss Data Grid (Gald...Building Reactive Applications With Node.Js And Red Hat JBoss Data Grid (Gald...
Building Reactive Applications With Node.Js And Red Hat JBoss Data Grid (Gald...Red Hat Developers
 
Node.js BFFs: our way to better/micro frontends
Node.js BFFs: our way to better/micro frontendsNode.js BFFs: our way to better/micro frontends
Node.js BFFs: our way to better/micro frontendsEugene Fidelin
 
Building REST APIs with Spring Boot and Spring Cloud
Building REST APIs with Spring Boot and Spring CloudBuilding REST APIs with Spring Boot and Spring Cloud
Building REST APIs with Spring Boot and Spring CloudKenny Bastani
 
Introduction to Cloud Native Computing
Introduction to Cloud Native ComputingIntroduction to Cloud Native Computing
Introduction to Cloud Native ComputingSaju Thomas
 
Hybrid Integration using BizTalk and Azure
Hybrid Integration using BizTalk and AzureHybrid Integration using BizTalk and Azure
Hybrid Integration using BizTalk and AzureBizTalk360
 

What's hot (20)

Micro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - PlansoftMicro Front-End & Microservices - Plansoft
Micro Front-End & Microservices - Plansoft
 
Going MicroServices with Net
Going MicroServices with NetGoing MicroServices with Net
Going MicroServices with Net
 
Compass digital ocean’s customer advisory group 2021_10
Compass digital ocean’s customer advisory group 2021_10Compass digital ocean’s customer advisory group 2021_10
Compass digital ocean’s customer advisory group 2021_10
 
Cloud Native Computing: What does it mean, and is your app Cloud Native?
Cloud Native Computing: What does it mean, and is your app Cloud Native?Cloud Native Computing: What does it mean, and is your app Cloud Native?
Cloud Native Computing: What does it mean, and is your app Cloud Native?
 
Back your app with MySQL and Redis on Cloud Foundry
Back your app with MySQL and Redis on Cloud FoundryBack your app with MySQL and Redis on Cloud Foundry
Back your app with MySQL and Redis on Cloud Foundry
 
Handling Secrets in Your Cloud Native Architecture
Handling Secrets in Your Cloud Native ArchitectureHandling Secrets in Your Cloud Native Architecture
Handling Secrets in Your Cloud Native Architecture
 
Why Microservice
Why Microservice Why Microservice
Why Microservice
 
Domain-driven Design
Domain-driven DesignDomain-driven Design
Domain-driven Design
 
Putting The 'M' In MBaaS—Red Hat Mobile Client Development Platform (Jay Balu...
Putting The 'M' In MBaaS—Red Hat Mobile Client Development Platform (Jay Balu...Putting The 'M' In MBaaS—Red Hat Mobile Client Development Platform (Jay Balu...
Putting The 'M' In MBaaS—Red Hat Mobile Client Development Platform (Jay Balu...
 
Cloud-native Patterns (July 4th, 2019)
Cloud-native Patterns (July 4th, 2019)Cloud-native Patterns (July 4th, 2019)
Cloud-native Patterns (July 4th, 2019)
 
Microservice Architecture
Microservice ArchitectureMicroservice Architecture
Microservice Architecture
 
Cloud Native Application Framework
Cloud Native Application FrameworkCloud Native Application Framework
Cloud Native Application Framework
 
IoT Scale Event-Stream Processing for Connected Fleet at Penske
IoT Scale Event-Stream Processing for Connected Fleet at PenskeIoT Scale Event-Stream Processing for Connected Fleet at Penske
IoT Scale Event-Stream Processing for Connected Fleet at Penske
 
How to Overcome Data Challenges When Refactoring Monoliths to Microservices
How to Overcome Data Challenges When Refactoring Monoliths to MicroservicesHow to Overcome Data Challenges When Refactoring Monoliths to Microservices
How to Overcome Data Challenges When Refactoring Monoliths to Microservices
 
Cloud Native Application
Cloud Native ApplicationCloud Native Application
Cloud Native Application
 
Building Reactive Applications With Node.Js And Red Hat JBoss Data Grid (Gald...
Building Reactive Applications With Node.Js And Red Hat JBoss Data Grid (Gald...Building Reactive Applications With Node.Js And Red Hat JBoss Data Grid (Gald...
Building Reactive Applications With Node.Js And Red Hat JBoss Data Grid (Gald...
 
Node.js BFFs: our way to better/micro frontends
Node.js BFFs: our way to better/micro frontendsNode.js BFFs: our way to better/micro frontends
Node.js BFFs: our way to better/micro frontends
 
Building REST APIs with Spring Boot and Spring Cloud
Building REST APIs with Spring Boot and Spring CloudBuilding REST APIs with Spring Boot and Spring Cloud
Building REST APIs with Spring Boot and Spring Cloud
 
Introduction to Cloud Native Computing
Introduction to Cloud Native ComputingIntroduction to Cloud Native Computing
Introduction to Cloud Native Computing
 
Hybrid Integration using BizTalk and Azure
Hybrid Integration using BizTalk and AzureHybrid Integration using BizTalk and Azure
Hybrid Integration using BizTalk and Azure
 

Similar to Evolving to Cloud-Native - Anand Rao

DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...Haggai Philip Zagury
 
Cloud computing and software engineering
Cloud computing and software engineeringCloud computing and software engineering
Cloud computing and software engineeringRavindra Dastikop
 
Develop, deploy, and operate services at reddit scale oscon 2018
Develop, deploy, and operate services at reddit scale   oscon 2018Develop, deploy, and operate services at reddit scale   oscon 2018
Develop, deploy, and operate services at reddit scale oscon 2018Gregory Taylor
 
Transformacion e innovacion digital Meetup - Application Modernization and Mi...
Transformacion e innovacion digital Meetup - Application Modernization and Mi...Transformacion e innovacion digital Meetup - Application Modernization and Mi...
Transformacion e innovacion digital Meetup - Application Modernization and Mi...José Román Martín Gil
 
Preparing for Neo - Singapore OutSystems User Group October 2022 Meetup
Preparing for Neo - Singapore OutSystems User Group October 2022 MeetupPreparing for Neo - Singapore OutSystems User Group October 2022 Meetup
Preparing for Neo - Singapore OutSystems User Group October 2022 MeetupYashrajNayak4
 
What serverless means for enterprise apps
What serverless means for enterprise appsWhat serverless means for enterprise apps
What serverless means for enterprise appsSumit Sarkar
 
Evolving to Cloud-Native - Nate Schutta (1/2)
Evolving to Cloud-Native - Nate Schutta (1/2)Evolving to Cloud-Native - Nate Schutta (1/2)
Evolving to Cloud-Native - Nate Schutta (1/2)VMware Tanzu
 
DevOps State of the Union 2015
DevOps State of the Union 2015DevOps State of the Union 2015
DevOps State of the Union 2015Ernest Mueller
 
Evolving to Cloud-Native - Nate Schutta 1/2
Evolving to Cloud-Native - Nate Schutta 1/2Evolving to Cloud-Native - Nate Schutta 1/2
Evolving to Cloud-Native - Nate Schutta 1/2VMware Tanzu
 
Are enterprises ready for the OpenStack transformation
Are enterprises ready for the OpenStack transformationAre enterprises ready for the OpenStack transformation
Are enterprises ready for the OpenStack transformationNicolas (Nick) Barcet
 
Serverless Days Ahmedabad - Dhaval Nagar.pptx.pdf
Serverless Days Ahmedabad - Dhaval Nagar.pptx.pdfServerless Days Ahmedabad - Dhaval Nagar.pptx.pdf
Serverless Days Ahmedabad - Dhaval Nagar.pptx.pdfDhaval Nagar
 
[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...
[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...
[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...WSO2
 
Cloud-Native Fundamentals: An Introduction to 12-Factor Applications
Cloud-Native Fundamentals: An Introduction to 12-Factor ApplicationsCloud-Native Fundamentals: An Introduction to 12-Factor Applications
Cloud-Native Fundamentals: An Introduction to 12-Factor ApplicationsVMware Tanzu
 
Google Cloud Platform Update
Google Cloud Platform UpdateGoogle Cloud Platform Update
Google Cloud Platform UpdateIdo Green
 
Exponential growth with IaC superpowers
Exponential growth with IaC superpowersExponential growth with IaC superpowers
Exponential growth with IaC superpowersCarlo Corti
 
Build 12-Factor apps with Docker
Build 12-Factor apps with DockerBuild 12-Factor apps with Docker
Build 12-Factor apps with DockerJohn Zaccone
 
Internship-Report-VitulChauhan-18132023-IT_CRUD-OPERATION.pdf
Internship-Report-VitulChauhan-18132023-IT_CRUD-OPERATION.pdfInternship-Report-VitulChauhan-18132023-IT_CRUD-OPERATION.pdf
Internship-Report-VitulChauhan-18132023-IT_CRUD-OPERATION.pdfVitulChauhan
 
Exponential growth with IaC superpowers
Exponential growth with IaC superpowersExponential growth with IaC superpowers
Exponential growth with IaC superpowersCarlo Corti
 
Modern Application Development on the Cloud (GCP)
Modern Application Development on the Cloud (GCP)Modern Application Development on the Cloud (GCP)
Modern Application Development on the Cloud (GCP)mfazal
 

Similar to Evolving to Cloud-Native - Anand Rao (20)

DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
DevOpsDays Tel Aviv DEC 2022 | Building A Cloud-Native Platform Brick by Bric...
 
Cloud computing and software engineering
Cloud computing and software engineeringCloud computing and software engineering
Cloud computing and software engineering
 
Develop, deploy, and operate services at reddit scale oscon 2018
Develop, deploy, and operate services at reddit scale   oscon 2018Develop, deploy, and operate services at reddit scale   oscon 2018
Develop, deploy, and operate services at reddit scale oscon 2018
 
Transformacion e innovacion digital Meetup - Application Modernization and Mi...
Transformacion e innovacion digital Meetup - Application Modernization and Mi...Transformacion e innovacion digital Meetup - Application Modernization and Mi...
Transformacion e innovacion digital Meetup - Application Modernization and Mi...
 
Preparing for Neo - Singapore OutSystems User Group October 2022 Meetup
Preparing for Neo - Singapore OutSystems User Group October 2022 MeetupPreparing for Neo - Singapore OutSystems User Group October 2022 Meetup
Preparing for Neo - Singapore OutSystems User Group October 2022 Meetup
 
What serverless means for enterprise apps
What serverless means for enterprise appsWhat serverless means for enterprise apps
What serverless means for enterprise apps
 
Evolving to Cloud-Native - Nate Schutta (1/2)
Evolving to Cloud-Native - Nate Schutta (1/2)Evolving to Cloud-Native - Nate Schutta (1/2)
Evolving to Cloud-Native - Nate Schutta (1/2)
 
DevOps State of the Union 2015
DevOps State of the Union 2015DevOps State of the Union 2015
DevOps State of the Union 2015
 
Evolving to Cloud-Native - Nate Schutta 1/2
Evolving to Cloud-Native - Nate Schutta 1/2Evolving to Cloud-Native - Nate Schutta 1/2
Evolving to Cloud-Native - Nate Schutta 1/2
 
Are enterprises ready for the OpenStack transformation
Are enterprises ready for the OpenStack transformationAre enterprises ready for the OpenStack transformation
Are enterprises ready for the OpenStack transformation
 
Build A Scalable Mobile App
Build A Scalable Mobile App Build A Scalable Mobile App
Build A Scalable Mobile App
 
Serverless Days Ahmedabad - Dhaval Nagar.pptx.pdf
Serverless Days Ahmedabad - Dhaval Nagar.pptx.pdfServerless Days Ahmedabad - Dhaval Nagar.pptx.pdf
Serverless Days Ahmedabad - Dhaval Nagar.pptx.pdf
 
[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...
[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...
[APIdays Singapore 2019] Managing the API lifecycle with Open Source Technolo...
 
Cloud-Native Fundamentals: An Introduction to 12-Factor Applications
Cloud-Native Fundamentals: An Introduction to 12-Factor ApplicationsCloud-Native Fundamentals: An Introduction to 12-Factor Applications
Cloud-Native Fundamentals: An Introduction to 12-Factor Applications
 
Google Cloud Platform Update
Google Cloud Platform UpdateGoogle Cloud Platform Update
Google Cloud Platform Update
 
Exponential growth with IaC superpowers
Exponential growth with IaC superpowersExponential growth with IaC superpowers
Exponential growth with IaC superpowers
 
Build 12-Factor apps with Docker
Build 12-Factor apps with DockerBuild 12-Factor apps with Docker
Build 12-Factor apps with Docker
 
Internship-Report-VitulChauhan-18132023-IT_CRUD-OPERATION.pdf
Internship-Report-VitulChauhan-18132023-IT_CRUD-OPERATION.pdfInternship-Report-VitulChauhan-18132023-IT_CRUD-OPERATION.pdf
Internship-Report-VitulChauhan-18132023-IT_CRUD-OPERATION.pdf
 
Exponential growth with IaC superpowers
Exponential growth with IaC superpowersExponential growth with IaC superpowers
Exponential growth with IaC superpowers
 
Modern Application Development on the Cloud (GCP)
Modern Application Development on the Cloud (GCP)Modern Application Development on the Cloud (GCP)
Modern Application Development on the Cloud (GCP)
 

More from VMware Tanzu

What AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItWhat AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItVMware Tanzu
 
Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023VMware Tanzu
 
Enhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleEnhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleVMware Tanzu
 
Spring Update | July 2023
Spring Update | July 2023Spring Update | July 2023
Spring Update | July 2023VMware Tanzu
 
Platforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductPlatforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductVMware Tanzu
 
Building Cloud Ready Apps
Building Cloud Ready AppsBuilding Cloud Ready Apps
Building Cloud Ready AppsVMware Tanzu
 
Spring Boot 3 And Beyond
Spring Boot 3 And BeyondSpring Boot 3 And Beyond
Spring Boot 3 And BeyondVMware Tanzu
 
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfSpring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfVMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023VMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023VMware Tanzu
 
tanzu_developer_connect.pptx
tanzu_developer_connect.pptxtanzu_developer_connect.pptx
tanzu_developer_connect.pptxVMware Tanzu
 
Tanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchTanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchVMware Tanzu
 
Tanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishTanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishVMware Tanzu
 
Virtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVirtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVMware Tanzu
 
Tanzu Developer Connect - French
Tanzu Developer Connect - FrenchTanzu Developer Connect - French
Tanzu Developer Connect - FrenchVMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023VMware Tanzu
 
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootSpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootVMware Tanzu
 
SpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerSpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerVMware Tanzu
 
SpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeSpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeVMware Tanzu
 
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense SolutionsSpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense SolutionsVMware Tanzu
 

More from VMware Tanzu (20)

What AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItWhat AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About It
 
Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023
 
Enhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleEnhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at Scale
 
Spring Update | July 2023
Spring Update | July 2023Spring Update | July 2023
Spring Update | July 2023
 
Platforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductPlatforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a Product
 
Building Cloud Ready Apps
Building Cloud Ready AppsBuilding Cloud Ready Apps
Building Cloud Ready Apps
 
Spring Boot 3 And Beyond
Spring Boot 3 And BeyondSpring Boot 3 And Beyond
Spring Boot 3 And Beyond
 
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfSpring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
 
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
 
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
 
tanzu_developer_connect.pptx
tanzu_developer_connect.pptxtanzu_developer_connect.pptx
tanzu_developer_connect.pptx
 
Tanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchTanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - French
 
Tanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishTanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - English
 
Virtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVirtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - English
 
Tanzu Developer Connect - French
Tanzu Developer Connect - FrenchTanzu Developer Connect - French
Tanzu Developer Connect - French
 
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
 
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootSpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
 
SpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerSpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software Engineer
 
SpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeSpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs Practice
 
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense SolutionsSpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
 

Recently uploaded

The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 

Recently uploaded (20)

The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 

Evolving to Cloud-Native - Anand Rao

  • 1. © Copyright 2018 Pivotal Software, Inc. All rights Reserved. Version 1.0 Evolving to the Cloud Anand Rao Advisory Platform Architect Clue2solve.io @honnuanand
  • 2. The Journey ( or Journies ?) ● To the Cloud ● To Microservices ● Modular Monoliths ● Containers ? now what is that … ? ● Serverless ..“ I don’t want any Servers …cough ??” ● Hybrid ...Poly Cloud
  • 3. Navigation Where is my Magic Wand ? ● Make Sense of all the above ○ What do I need ? ○ What fits my needs , solve my problems and get me my Outcomes ? ● Real Engineering issues to overcome ● People and Culture
  • 4. Beware ● Resume Driven Development ● Fear driven Development :) Vs ● Outcome driven Development
  • 5. Caution ● There will be pitfalls ● The need to pivot quickly being Agile and nimble ● Learn from the experiences of others , self experiment may be costly
  • 6. Cloud Native ? ● Applications designed to take advantage of cloud computing. ● Fundamentally about how we create and deploy applications.
  • 7. What do I get by running my Apps in the Cloud ? ● Scale up. Scale down. On demand. ● Limitless compute.( Really ? … Fees )
  • 8. Cloud Native ● Cloud native isn’t just an architectural pattern. ● Instead , it can be defined as a Combination of practices, techniques, technologies. ○ Agile Development ○ Continuous delivery ○ Automation ○ Containers ○ Microservices / Functions ○ Changes our culture. ○ DevOps concept
  • 9. Infrastructure Shift Where were we ? ● Homegrown Servers ● Handcrafted ● Treated with so much care .. like Pets ● Always attended to it , day and night .. ● Never had enough .. Constrained resources ● Expensive
  • 10. App Servers The Expensive servers brought the need for Return on Investment on the Servers that lead to the need to pack many apps on the same server
  • 11. Effect of App Servers Som times unintended ● 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 ● Code deployment Freezes ● Longer Test Cycles ● Fear potential failures and outages slows down the delivery of software Is this all worth the Pain ?
  • 12. Don’t Change it , Don’t Break it .. “Fear is the path to the dark side. Fear leads to anger. Anger leads to hate. Hate leads to suffering.” -Yoda
  • 13. The Ops ● Move code from one server to another ● Worked in dev…but not test. ○ Are the Environments the same ? ○ What is the order of the patches applied ?
  • 14. Server Evolution ● Intel Chips Take over the market ● Everything is relatively cheaper ● I now have no limit on my server resources ● Hardware costs dip below People Costs ● Servers became a commodity
  • 15. The Cloud “as a Service” ● Heroku ● AWS ● Google App Engine ● Cloud Foundry ● Azure What do all these have in Common ? “I can run my apps on their servers !!”
  • 16. Shared self-managed Servers Vs the Cloud Shared Servers became a huge liability , we need to “Treat them as Cattle not Pets “
  • 17. The Abstractions Game Changers ● Containers ● PAAS Now you can ● Package the app up with everything it needs ● Move *that* to a different environment
  • 18. It Works ● Works in Dev means , it will work in prod, ○ The environments are similar ○ Deployment process is similar ○ Isolated runtimes allows for rapid changes in apps and dependencies The big win - it Works
  • 19. The Value Line Moves the Value line
  • 20. Positive Effects ● Changes the development process ● Constant changes to Apps ● Focussed experiments. A/B Testing ● Rapid response to business changes ● Deliver in days not Months
  • 21. Speed and Disruption Face need for Speed and face disruption ● No Industry is immune to disruption ○ Amazon ? Google ? What industry do they cover ? ● Every business is driven by Technology , every company is a Technology company
  • 22. The 12 Factors Characteristics Shared by Successful Apps Originated at Heroku, Adopted by many other industry leaders
  • 23. The 12 Factors I. Codebase One codebase tracked in revision control, many deploys II. Dependencies Explicitly declare and isolate dependencies III. Config Store config in the environment IV. Backing services Treat backing services as attached resources V. Build, release, run Strictly separate build and run stages
  • 24. The 12 Factors VI. Processes Execute the app as one or more stateless processes VII. Port binding Export services via port binding VIII. Concurrency Scale out via the process model IX. Disposability Maximize robustness with fast startup and graceful shutdown X. Dev/prod parity Keep development, staging, and production as similar as possible
  • 25. The 12 Factors XI. Logs Treat logs as event streams XII. Admin processes Run admin/management tasks as one-off processes
  • 26. Legacy Apps Legacy Apps may not comply to many of the 12 factors , or sometimes none. So is it 12 factor bust ? Pushing Zero Factor Apps to Cloud Foundry http://cloud.rohitkelapure.com/2017/10/pushing -zero-factor-apps-to-cloud.html
  • 27. The key factors to focus Some factors can be Challenging ! ● Explicitly define your dependencies ● Configuration must be separate from the code ● Stateless - share nothing ● Start up fast, shutdown gracefully ○ Impact on health checks ● Dev/Prod parity 12 Factor is a good Goal, Not a must. You will need to make the right choices
  • 28. Maximize the Cloud Advantage Example : Long startup time hurts elastic scaling & self healing
  • 29. Beyond the 12 Factor Apps Beyond the Twelve-Factor App https://content.pivotal.io/blog/beyond-the-twelve -factor-app ● Legacy applications will fall short ● Opportunistically refactor ● Building Greenfield ? Go Cloud Native
  • 30. Microservices ● Monoliths limit your evolution ○ Developer productivity takes a hit ○ Hard to get your head wrapped around a huge code base ○ Long ramp up times for new developers ○ Small change results in building and deploying everything ○ Scaling means scaling the entire application ● Modularity breaks over time and leads to longer time to functionality and frustration
  • 31. Microservices So what defines a Microservice ? ● No Single Definition ● Anything that can be rewritten two weeks or less ● Suite of small, focussed services ● Do one thing, do it well ● Knit simple pieces together to get complex results ● Independently deployable , scalable ● Evolve at different rates ● Right Tech for the Right Jobs ● Focus on Business Capabilities ● High Cohesion and low coupling It is just another approach. An architectural style. A pattern
  • 32. They are all tools Use the right Tool for the Job Please Microservice Responsibly. https://content.pivotal.io/blog/should-that-be-ami croservice-keep-these-six-factors-in-mind
  • 33. Do the right things “If you can't build a monolith, what makes you think microservices are the answer?” –Simon Brown http://www.codingthearchitecture.com/2014/07/06/ distributed_big_balls_of_mud.html
  • 34. Serverless Functions “as a Service” ! What do I need to do ? Rewrite my code ? Think “Abstractions” !
  • 36. Use the highest abstraction possible Your strategic goal: Push as many workloads as technically feasible to the top of the platform hierarchy
  • 37. Functions ● Focus on business problems, not plumbing problems ● Terminate the container ● A fractional cost per request ● Operational efficiencies ● Serverless ops? Is that a thing ? think Value line ● Use it for the right workload
  • 38. The Journey to the Cloud Where do I start ? ● Access your inventory ● Focus on the outcomes ● Tools to Access apps ○ Extract Tech characteristics ■ Stack ■ Version ■ Users ■ Load ■ Speed ( and expected ) ■ Dependencies ■ Integrations ■ Data Access ■ CI/CD ? ■ Test coverage ■ Refactoring Effort
  • 39. The Journey to the Cloud ● Look for certain Red Flags ○ Vendor dependencies ○ Writing to and reading from the file system ○ Long Startup or shutdown times ○ Non HTTP protocols ○ Hard coded configs ○ Container based shared state ○ Distributed transactions
  • 40. The Journey to the Cloud Scorecard based on the assessment of the state and effort for refactoring ● Remember is a Sliding Scale
  • 41. The Journey to the Cloud What is needed ● Application knowledge ● Clear path to end state ● Set amount of time per application ● Consider automation of analysis and reporting of the state of the application and scoring ● T-Shirt sizing instead of too much in depth analysis ● Focus on patterns to allow your to have better guess on the effort ● Business value articulation
  • 42. End state Need Cloud Native or Being in the cloud ● Handling of legacy app refactoring ● Forklift app into the cloud ?
  • 43. The Process ● Pilot Apps ● Ask the experts ● Center of excellence to help teams get enabled and migrate their Apps ● Clearly planned Roadmap ● App migration Grouping and dependency ● Lean migrations
  • 44. Your North Star Keep the Stakeholders Happy which intern means , you are happy !