SlideShare a Scribd company logo
Adopting a PaaS
Mario Mendoza
Solution Architect
marmendo@redhat.com
I. Codebase
One codebase tracked in revision control, The codebase
is the same across all 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
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
Fast startup and graceful shutdown
X. Dev/prod parity
Keep development, staging, and production as
similar as possible
XI. Logs
Treat logs as event streams
XII. Admin processes
Run management tasks as one-off processes
Twelve Factor
I. Codebase
One codebase tracked in revision control, The codebase
is the same across all 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
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
Fast startup and graceful shutdown
X. Dev/prod parity
Keep development, staging, and production as
similar as possible
XI. Logs
Treat logs as event streams
XII. Admin processes
Run management tasks as one-off processes
Twelve Factor
What about
my current
applications ?
REFACTOR
● Legacy is totally replaced
● New interfaces and data
● Use OCP as platform
● Some data and features can
be re-wrapped, but most are
refactored.
PATTERNS IN MODERNIZING WORKLOADS
3 MAIN PATTERNS
REHOST
● Containerize existing
workloads
● Deploy them on OCP
● Keep external integrations
and data on legacy
● Focus on smaller or frozen
apps
REPLATFORM
● Legacy remains intact
● New layer - new capabilities
● Deploy on OCP
● New integration points
between legacy and new
layers (Need for Agile
Integration)
Not our target
APPLICATION MODERNIZATION
Application
Portfolio
Rehost (lift/shift)
Replatform (lift/reshape)
Repurchase
Refactor (rewrite, decouple apps)
Review
Analyze
Prioritize
Retire
Retain as is (for now)
How much
work required ?
Highly scaled and high
rate of change apps
are candidates
Smaller or frozen apps
are candidates here
Identify services
and applications
portfolio
Red Hat Services for
APPLICATIONS MIGRATION AND MODERNIZATION
Explore Analyze Prove Pilot
Migrate in
Iterations
Discovery
Session
Discuss Options
Define Migration Strategy,
Prove Technology and Business Case
Scale &
Execute
Plan
Migrate to a container based PaaS
● WebSphere/WebLogic JBoss EAP
● Tibco, JCAPS JBoss Fuse Integration Services
● IBM/MQ JBoss A-MQ
● IBM WODM JBoss BRMS
I. Codebase
One codebase tracked in revision control, The codebase
is the same across all 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
VI. Processes
Execute the app as one or more stateless processes
TWELVE FACTOR for cloud ready applications
VII. Port binding
Export services via port binding
VIII. Concurrency
Scale out via the process model
IX. Disposability
Fast startup and graceful shutdown
X. Dev/prod parity
Keep development, staging, and production as
similar as possible
XI. Logs
Treat logs as event streams
XII. Admin processes
Run management tasks as one-off processes
VII. Port binding
Export services via port binding
VIII. Concurrency
Scale out via the process model
IX. Disposability
Fast startup and graceful shutdown
X. Dev/prod parity
Keep development, staging, and production as
similar as possible
XI. Logs
Treat logs as event streams
XII. Admin processes
Run management tasks as one-off processes
I. Codebase
One codebase tracked in revision control, The codebase
is the same across all 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
VI. Processes
Execute the app as one or more stateless processes
TWELVE FACTOR for cloud ready applications
VII. Port binding
Export services via port binding
VIII. Concurrency
Scale out via the process model
IX. Disposability
Fast startup and graceful shutdown
X. Dev/prod parity
Keep development, staging, and production as
similar as possible
XI. Logs
Treat logs as event streams
XII. Admin processes
Run management tasks as one-off processes
I. Codebase
One codebase tracked in revision control, The codebase
is the same across all 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
VI. Processes
Execute the app as one or more stateless processes
TWELVE FACTOR for cloud ready applications
VII. Port binding
Export services via port binding
VIII. Concurrency
Scale out via the process model
IX. Disposability
Fast startup and graceful shutdown
X. Dev/prod parity
Keep development, staging, and production as
similar as possible
XI. Logs
Treat logs as event streams
XII. Admin processes
Run management tasks as one-off processes
I. Codebase
One codebase tracked in revision control, The codebase
is the same across all 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
VI. Processes
Execute the app as one or more stateless processes
TWELVE FACTOR for cloud ready applications
VII. Port binding
Export services via port binding
VIII. Concurrency
Scale out via the process model
IX. Disposability
Fast startup and graceful shutdown
X. Dev/prod parity
Keep development, staging, and production as
similar as possible
XI. Logs
Treat logs as event streams
XII. Admin processes
Run management tasks as one-off processes
I. Codebase
One codebase tracked in revision control, The codebase
is the same across all 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
VI. Processes
Execute the app as one or more stateless processes
TWELVE FACTOR for cloud ready applications
VII. Port binding
Export services via port binding
VIII. Concurrency
Scale out via the process model
IX. Disposability
Fast startup and graceful shutdown
X. Dev/prod parity
Keep development, staging, and production as
similar as possible
XI. Logs
Treat logs as event streams
XII. Admin processes
Run management tasks as one-off processes
I. Codebase
One codebase tracked in revision control, The codebase
is the same across all 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
VI. Processes
Execute the app as one or more stateless processes
TWELVE FACTOR for cloud ready applications
VII. Port binding
Export services via port binding
VIII. Concurrency
Scale out via the process model
IX. Disposability
Fast startup and graceful shutdown
X. Dev/prod parity
Keep development, staging, and production as
similar as possible
XI. Logs
Treat logs as event streams
XII. Admin processes
Run management tasks as one-off processes
I. Codebase
One codebase tracked in revision control, The codebase
is the same across all 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
VI. Processes
Execute the app as one or more stateless processes
TWELVE FACTOR for cloud ready applications
VII. Port binding
Export services via port binding
VIII. Concurrency
Scale out via the process model
IX. Disposability
Fast startup and graceful shutdown
X. Dev/prod parity
Keep development, staging, and production as
similar as possible
XI. Logs
Treat logs as event streams
XII. Admin processes
Run management tasks as one-off processes
I. Codebase
One codebase tracked in revision control, The codebase
is the same across all 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
VI. Processes
Execute the app as one or more stateless processes
TWELVE FACTOR for cloud ready applications
Adopting a PaaS Solution (Part 2) - Red Hat DevOps & Microservices Conference 2017
Adopting a PaaS
Mario MENDOZA
Solution Architect
marmendo@redhat.com

More Related Content

PDF
Adopting a PaaS Solution (Part 1) - Red Hat DevOps & Microservices Conference...
PDF
The twelve factor app
PPT
Dissecting The PaaS Landscape
PDF
Building A Cloud Platform
PDF
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the Cloud
PDF
Platform as a Service (PaaS) - A cloud service for Developers
PDF
VMware Private Clouds: Charting a path to success
PPTX
Got Shadow IT? How to Win-Win with a Private Cloud.
Adopting a PaaS Solution (Part 1) - Red Hat DevOps & Microservices Conference...
The twelve factor app
Dissecting The PaaS Landscape
Building A Cloud Platform
MongoDB World 2018: MongoDB and Cloud Foundry – A Match Made for the Cloud
Platform as a Service (PaaS) - A cloud service for Developers
VMware Private Clouds: Charting a path to success
Got Shadow IT? How to Win-Win with a Private Cloud.

What's hot (20)

PDF
Managing vSphere Across Multiple Regions and Multiple vCenters
PDF
Introduction to docker - Paolo Foletto - Codemotion Tech Meetup Tour 2015 - P...
PDF
Jelastic Cluster Admin Panel Overview
PDF
Jelastic DevOps Platform Product Overview for Service Providers
PDF
Think BIG, Spend Small A Look at how WSO2 Can Help Scale Up with Less Cost
PDF
Webinar: OpenStack Benefits for KVM
PDF
Buiding and Deploying SaaS with WSO2 as as-a-Service
PPT
Scalable Architectures, Enterprise Solutions with Opensource and Free Software
PDF
WSO2 Product Release Webinar: WSO2 Governance Registry 5.1
PDF
Platform as a Service - Cloud Foundry and IBM Bluemix
PDF
Command central 9.7: Features Overview
PPTX
V mware v realize orchestrator 6.0 knowledge transfer kit
KEY
Introduction to Cloud Computing part 3
PDF
Enterprise Integration with the WSO2 ESB
PDF
PaaS Solutions Comparison
PPTX
Platform as a Service - CloudFoundry and IBM Bluemix - Developer South Coast
PDF
Creating Microservices Application with IBM Cloud Private (ICP) - Container a...
PDF
Keynote-Service Orientation – Why is it good for your business
PDF
VMworld 2013: Moving Beyond Infrastructure: Meeting Demands on App Lifecycle ...
PDF
Cloud foundry
Managing vSphere Across Multiple Regions and Multiple vCenters
Introduction to docker - Paolo Foletto - Codemotion Tech Meetup Tour 2015 - P...
Jelastic Cluster Admin Panel Overview
Jelastic DevOps Platform Product Overview for Service Providers
Think BIG, Spend Small A Look at how WSO2 Can Help Scale Up with Less Cost
Webinar: OpenStack Benefits for KVM
Buiding and Deploying SaaS with WSO2 as as-a-Service
Scalable Architectures, Enterprise Solutions with Opensource and Free Software
WSO2 Product Release Webinar: WSO2 Governance Registry 5.1
Platform as a Service - Cloud Foundry and IBM Bluemix
Command central 9.7: Features Overview
V mware v realize orchestrator 6.0 knowledge transfer kit
Introduction to Cloud Computing part 3
Enterprise Integration with the WSO2 ESB
PaaS Solutions Comparison
Platform as a Service - CloudFoundry and IBM Bluemix - Developer South Coast
Creating Microservices Application with IBM Cloud Private (ICP) - Container a...
Keynote-Service Orientation – Why is it good for your business
VMworld 2013: Moving Beyond Infrastructure: Meeting Demands on App Lifecycle ...
Cloud foundry
Ad

Similar to Adopting a PaaS Solution (Part 2) - Red Hat DevOps & Microservices Conference 2017 (20)

PPTX
The Twelve-Factor App
PPTX
The twelve factor app
PDF
12 Ways to Supercharge Your Connect Add-on
PDF
Heresey in the church of 12 factors
PDF
12 FACTOR APP WITH DOCKER
PDF
Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...
PDF
12 Steps to DevOps Nirvana
PPTX
PaaS Ecosystem Overview
PPTX
Introduction to Microservices and Cloud Native Application Architecture
PDF
Pycon9 - Paas per tutti i gusti con Dokku and Kubernetes
PDF
Twelve-Factor App: Software Application Architecture
PPTX
Docker12 factor
PDF
Cloud Native Development
PDF
Java Microservices HJUG
PPTX
DevoxxBelgium_StatefulCloud.pptx
PPTX
Cloud Foundry: Hands-on Deployment Workshop
PPTX
UtrechtJUG_Exploring statefulmicroservices in a cloud-native world.pptx
PPTX
A Connector, A Container and an API Walk into a Bar… Microservices Edition
PPTX
A Connector, A Container and an API Walk into a Bar… Microservices Edition
PDF
.NET Cloud-Native Bootcamp
The Twelve-Factor App
The twelve factor app
12 Ways to Supercharge Your Connect Add-on
Heresey in the church of 12 factors
12 FACTOR APP WITH DOCKER
Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...
12 Steps to DevOps Nirvana
PaaS Ecosystem Overview
Introduction to Microservices and Cloud Native Application Architecture
Pycon9 - Paas per tutti i gusti con Dokku and Kubernetes
Twelve-Factor App: Software Application Architecture
Docker12 factor
Cloud Native Development
Java Microservices HJUG
DevoxxBelgium_StatefulCloud.pptx
Cloud Foundry: Hands-on Deployment Workshop
UtrechtJUG_Exploring statefulmicroservices in a cloud-native world.pptx
A Connector, A Container and an API Walk into a Bar… Microservices Edition
A Connector, A Container and an API Walk into a Bar… Microservices Edition
.NET Cloud-Native Bootcamp
Ad

More from Xpand IT (20)

PDF
Xray & Xporter were in Austria: Jira & Confluence Solutions Day 2018
PDF
Using Xamarin for your Mobile+ Apps – Xamarin Experience London 2017
PPTX
Xporter for Jira - Overview
PPTX
Xray for Jira - How to automate your QA process
PPTX
Xpand Addons - Addon Discovery Day 2017
PPTX
Xray for Jira 3.0 - What's New?
PPTX
Xray for Jira - Overview
PPTX
Xporter for Jira - Advanced topics
PDF
Keynote - Xamarin Experience London 2017
PPTX
Welcome & Introduction – Xamarin Experience London 2017
PDF
Gathering Customer Insights with Sitecore - Xamarin Experience London 2017
PPTX
Why Speed Matters in Mobile Apps – Xamarin Experience London 2017
PDF
Mobile & Cognitive Services | Harnessing the Power of IoT – Xamarin Experienc...
PDF
Atlassian Tools in Practice: A Customer Success Story – Xpand IT & Atlassian ...
PDF
The Secret Sauce of Successful Teams - Xpand IT & Atlassian JAM Sessions 2017
PPTX
Quality Assurance Made Easy in JIRA - Xpand IT & Atlassian JAM Sessions 2017
PDF
Improved Reporting with JIRA Add-ons - Xpand IT & Atlassian JAM Sessions 2017
PPTX
How our Team Collaborates with Atlassian Tools - Xpand IT & Atlassian JAM Ses...
PPTX
Welcome & Introduction - Xpand IT & Atlassian JAM Sessions 2017
PDF
The Real World with OpenShift - Red Hat DevOps & Microservices Conference 2017
Xray & Xporter were in Austria: Jira & Confluence Solutions Day 2018
Using Xamarin for your Mobile+ Apps – Xamarin Experience London 2017
Xporter for Jira - Overview
Xray for Jira - How to automate your QA process
Xpand Addons - Addon Discovery Day 2017
Xray for Jira 3.0 - What's New?
Xray for Jira - Overview
Xporter for Jira - Advanced topics
Keynote - Xamarin Experience London 2017
Welcome & Introduction – Xamarin Experience London 2017
Gathering Customer Insights with Sitecore - Xamarin Experience London 2017
Why Speed Matters in Mobile Apps – Xamarin Experience London 2017
Mobile & Cognitive Services | Harnessing the Power of IoT – Xamarin Experienc...
Atlassian Tools in Practice: A Customer Success Story – Xpand IT & Atlassian ...
The Secret Sauce of Successful Teams - Xpand IT & Atlassian JAM Sessions 2017
Quality Assurance Made Easy in JIRA - Xpand IT & Atlassian JAM Sessions 2017
Improved Reporting with JIRA Add-ons - Xpand IT & Atlassian JAM Sessions 2017
How our Team Collaborates with Atlassian Tools - Xpand IT & Atlassian JAM Ses...
Welcome & Introduction - Xpand IT & Atlassian JAM Sessions 2017
The Real World with OpenShift - Red Hat DevOps & Microservices Conference 2017

Recently uploaded (20)

PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
cuic standard and advanced reporting.pdf
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Machine learning based COVID-19 study performance prediction
PDF
KodekX | Application Modernization Development
PPTX
Spectroscopy.pptx food analysis technology
PPTX
Cloud computing and distributed systems.
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Programs and apps: productivity, graphics, security and other tools
Building Integrated photovoltaic BIPV_UPV.pdf
cuic standard and advanced reporting.pdf
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
NewMind AI Weekly Chronicles - August'25 Week I
Mobile App Security Testing_ A Comprehensive Guide.pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
The AUB Centre for AI in Media Proposal.docx
Machine learning based COVID-19 study performance prediction
KodekX | Application Modernization Development
Spectroscopy.pptx food analysis technology
Cloud computing and distributed systems.
Chapter 3 Spatial Domain Image Processing.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
Dropbox Q2 2025 Financial Results & Investor Presentation
Understanding_Digital_Forensics_Presentation.pptx
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Network Security Unit 5.pdf for BCA BBA.
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf

Adopting a PaaS Solution (Part 2) - Red Hat DevOps & Microservices Conference 2017

  • 1. Adopting a PaaS Mario Mendoza Solution Architect marmendo@redhat.com
  • 2. I. Codebase One codebase tracked in revision control, The codebase is the same across all 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 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 Fast startup and graceful shutdown X. Dev/prod parity Keep development, staging, and production as similar as possible XI. Logs Treat logs as event streams XII. Admin processes Run management tasks as one-off processes Twelve Factor
  • 3. I. Codebase One codebase tracked in revision control, The codebase is the same across all 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 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 Fast startup and graceful shutdown X. Dev/prod parity Keep development, staging, and production as similar as possible XI. Logs Treat logs as event streams XII. Admin processes Run management tasks as one-off processes Twelve Factor What about my current applications ?
  • 4. REFACTOR ● Legacy is totally replaced ● New interfaces and data ● Use OCP as platform ● Some data and features can be re-wrapped, but most are refactored. PATTERNS IN MODERNIZING WORKLOADS 3 MAIN PATTERNS REHOST ● Containerize existing workloads ● Deploy them on OCP ● Keep external integrations and data on legacy ● Focus on smaller or frozen apps REPLATFORM ● Legacy remains intact ● New layer - new capabilities ● Deploy on OCP ● New integration points between legacy and new layers (Need for Agile Integration)
  • 5. Not our target APPLICATION MODERNIZATION Application Portfolio Rehost (lift/shift) Replatform (lift/reshape) Repurchase Refactor (rewrite, decouple apps) Review Analyze Prioritize Retire Retain as is (for now) How much work required ? Highly scaled and high rate of change apps are candidates Smaller or frozen apps are candidates here Identify services and applications portfolio
  • 6. Red Hat Services for APPLICATIONS MIGRATION AND MODERNIZATION Explore Analyze Prove Pilot Migrate in Iterations Discovery Session Discuss Options Define Migration Strategy, Prove Technology and Business Case Scale & Execute Plan Migrate to a container based PaaS ● WebSphere/WebLogic JBoss EAP ● Tibco, JCAPS JBoss Fuse Integration Services ● IBM/MQ JBoss A-MQ ● IBM WODM JBoss BRMS
  • 7. I. Codebase One codebase tracked in revision control, The codebase is the same across all 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 VI. Processes Execute the app as one or more stateless processes TWELVE FACTOR for cloud ready applications VII. Port binding Export services via port binding VIII. Concurrency Scale out via the process model IX. Disposability Fast startup and graceful shutdown X. Dev/prod parity Keep development, staging, and production as similar as possible XI. Logs Treat logs as event streams XII. Admin processes Run management tasks as one-off processes
  • 8. VII. Port binding Export services via port binding VIII. Concurrency Scale out via the process model IX. Disposability Fast startup and graceful shutdown X. Dev/prod parity Keep development, staging, and production as similar as possible XI. Logs Treat logs as event streams XII. Admin processes Run management tasks as one-off processes I. Codebase One codebase tracked in revision control, The codebase is the same across all 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 VI. Processes Execute the app as one or more stateless processes TWELVE FACTOR for cloud ready applications
  • 9. VII. Port binding Export services via port binding VIII. Concurrency Scale out via the process model IX. Disposability Fast startup and graceful shutdown X. Dev/prod parity Keep development, staging, and production as similar as possible XI. Logs Treat logs as event streams XII. Admin processes Run management tasks as one-off processes I. Codebase One codebase tracked in revision control, The codebase is the same across all 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 VI. Processes Execute the app as one or more stateless processes TWELVE FACTOR for cloud ready applications
  • 10. VII. Port binding Export services via port binding VIII. Concurrency Scale out via the process model IX. Disposability Fast startup and graceful shutdown X. Dev/prod parity Keep development, staging, and production as similar as possible XI. Logs Treat logs as event streams XII. Admin processes Run management tasks as one-off processes I. Codebase One codebase tracked in revision control, The codebase is the same across all 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 VI. Processes Execute the app as one or more stateless processes TWELVE FACTOR for cloud ready applications
  • 11. VII. Port binding Export services via port binding VIII. Concurrency Scale out via the process model IX. Disposability Fast startup and graceful shutdown X. Dev/prod parity Keep development, staging, and production as similar as possible XI. Logs Treat logs as event streams XII. Admin processes Run management tasks as one-off processes I. Codebase One codebase tracked in revision control, The codebase is the same across all 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 VI. Processes Execute the app as one or more stateless processes TWELVE FACTOR for cloud ready applications
  • 12. VII. Port binding Export services via port binding VIII. Concurrency Scale out via the process model IX. Disposability Fast startup and graceful shutdown X. Dev/prod parity Keep development, staging, and production as similar as possible XI. Logs Treat logs as event streams XII. Admin processes Run management tasks as one-off processes I. Codebase One codebase tracked in revision control, The codebase is the same across all 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 VI. Processes Execute the app as one or more stateless processes TWELVE FACTOR for cloud ready applications
  • 13. VII. Port binding Export services via port binding VIII. Concurrency Scale out via the process model IX. Disposability Fast startup and graceful shutdown X. Dev/prod parity Keep development, staging, and production as similar as possible XI. Logs Treat logs as event streams XII. Admin processes Run management tasks as one-off processes I. Codebase One codebase tracked in revision control, The codebase is the same across all 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 VI. Processes Execute the app as one or more stateless processes TWELVE FACTOR for cloud ready applications
  • 14. VII. Port binding Export services via port binding VIII. Concurrency Scale out via the process model IX. Disposability Fast startup and graceful shutdown X. Dev/prod parity Keep development, staging, and production as similar as possible XI. Logs Treat logs as event streams XII. Admin processes Run management tasks as one-off processes I. Codebase One codebase tracked in revision control, The codebase is the same across all 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 VI. Processes Execute the app as one or more stateless processes TWELVE FACTOR for cloud ready applications
  • 16. Adopting a PaaS Mario MENDOZA Solution Architect marmendo@redhat.com