SlideShare a Scribd company logo
Learn how to Leverage
Kubernetes to Support 12
Factor for Enterprise Apps
Dr.	Brad	Topol
IBM	Distinguished	Engineer
@bradtopol
Michael	Elder
IBM	Distinguished	Engineer
@mdelder
Let’s deploy
our apps on
the cloud!
2© 2019 IBM Corporation
Why?
3© 2019 IBM Corporation
1.Cloud has evolved as a strategy for
disruption driven by continuous
delivery.
2.Cloud elasticity enables microservices
architectures to scale out quickly, but
also roll new updates out at immense
speeds.
3.Data becomes the fuel for business
innovation.
4.AI becomes the catalyst to turn data
into brilliant user experiences.
5.Profit! Or really, reduce overall cost.
4
What is a
12-factor
app?
https://12factor.net/
• “12-Factor” is a software
methodology for building
scalable microservice
applications
• Originally created by Heroku
• Best practices designed to
enable applications to be built
with portability, resilience,
and scalability when deployed
to the web
5
I. Codebase
One codebase tracked in revision control,manydeploys
II. Dependencies
Explicitlydeclare and isolate dependencies
III. Config
Store config in the environment
IV. Backing services
Treat backing services as attached resources
V. Build, release, run
Strictlyseparate 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
Maximize robustness with 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 admin/management tasks as one-off processes
Why
12 factor
apps?
https://12factor.net/
• Make it easier to run, scale, and
deploy applications
• Keep parity between development
and production
• Provide strict separation between
build, release, and run stages
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
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. Parity between dev & prod
Keep development, staging,
and production as similar as
possible
XI. Logs
Treat logs as event streams
XII. Admin processes
Run admin/management tasks
as one-off processes
Code Deploy Operate
7
I. Codebase
One codebase tracked in
revision control, many deploys
V. Build, release, run
Strictly separate build and run
stages
X. Parity between dev & prod
Keep development, staging,
and production as similar as
possible
Code Factors Mapped to Kubernetes
Container images built from
Dockerfiles + Kubernetes
Declarative YAML based
deployment
Using same container images
and Kubernetes YAML objects
in both dev and production
Continuous Delivery and
leveraging Kubernetes support
for deploying updates
8
II. Dependencies
Explicitly declare and isolate
dependencies
III. Config
Store config in the environment
IV. Backing services
Treat backing services as
attached resources
VI. Processes
Execute the app as one or more
stateless processes
VII. Port binding
Export services via port binding
Deploy Factors Mapped to Kubernetes
Container
Secret
Service
ConfigMap
Persistent
Volume
Pod
IX. Disposability (Pods)
Maximize robustness with fast
startup and graceful shutdown
Common Services
(logging, monitoring,
audit, etc)
VIII. Concurrency
Scale out via the process model
XI. Logs
Treat logs as event streams
XII. Admin processes
Run admin/management tasks
as one-off processes
Operate Factors Mapped to Kubernetes
Deployment
(ReplicaSet)
Stateles
s
Stateless
StatefulSet
Stateful
Job
Batch
DaemonSet
System
Job
Batch
An
app
to
talk
about
10
Code factors for our app
11
# Application to deploy
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: watson-conversation-app
spec:
replicas: 2 # tells deployment to run 2 pods matching the
template
template: # create pods using pod definition in this template
metadata:
labels:
app: watson-conversation-app
tier: frontend
spec:
containers:
- name: watson-conversation-app
image: mycluster.icp:8500/default/conversation-
simple:alt
resources:
requests:
cpu: 100m
memory: 100Mi
env:
- name: WORKSPACE_ID
valueFrom:
configMapKeyRef:
name: car-dashboard-config
key: workspace_id
- name: CONVERSATION_SERVICE_CAR
valueFrom:
secretKeyRef:
name: binding-conversation-service-car
key: binding
1.Container Images are built
from Dockerfiles. Kubernetes
Deployments, etc are
managed as YAML (Factor #I)
2.Having a strong artifact-driven
model makes it easier to follow
a Continuous Delivery lifecycle
(Factor #V)
3.Using the same images and
YAML objects make it easier for
dev teams to match what’s
running in production
(Factor #X)
Deploy factors for our app
12
1.ConfigMaps and Secrets can be
managed in source repositories or
built dynamically via commands
(Factor #III)
2.Our container image runs as a
container process in a Pod with other
containers (Factor #VI)
3.A collection of Pods can expose or
consume Services via port bindings
(Factor #IV & Factor #VII)
Pod
(SingleIP Address)
Volume
Volume
container
container
container
Volume
Secret
ConfigMap
Operate factors for our app
1.A Deployment includes a
ReplicaSet which declares the
desired availability policy(Factor
#VIII)
2.If a Pod fails, Kubernetes will
attempt to recover it via
restarting the Pod or scheduling
it to a new node (Factor #IX)
3.Running our app as a container
makes it possible to capture all
logs, metrics, and other
management functions in a
consistent way (Factor #XII)
Great, but 95%
of my workloads
do not fit 12-
factor! 14
Code factors for middleware
15
1.Helm Charts are an open way
to package 12-factor apps, but
also middleware like IBM MQ
Series (F#I)
2.Providing a catalog of Helm
Charts either from the
community or your internal
teams makes it easier to build
production-like environments
(F#V)
3.Just like apps, build these into
Continuous Delivery pipelines
for canary testing your
upgrades of critical supporting
services
• IBM MQ Series is a leading
provider of messaging services
for enterprise apps;
• Great example of a critical
component that isn’t 12-factor
Deploy factors for middleware
16
1.Secrets used to configure credentials
and TLS certificates (F#III)
2.MQ built as a container image that
runs as a container process in a Pod
(F#VI)
3.Admin console, app messaging ports,
and metrics ports exposed via
Services with port bindings (F#IV &
F#VII)
MQ
(SingleIP Address)
Volume
mq
Secret
Service
Operate factors for middleware
1.A StatefulSetthat declares the
desired availability policyfor MQ;
a database might scale out
replicas or prepare
primary/secondary failover
(F#VIII)
2.Recovered Pods re-mount the
same PersistentVolumes (F#IX)
3.All Pods can have logs, metrics,
or other management details
captured automatically by your
Kubernetes provider (F#XII)
Continuous Integration & Delivery
18
1.Exposing all of your datacenter via
container images with a Kubernetes
orchestrator will take time for full
maturity
2.Potential to dramaticallysimplify
delivery of services and ongoing
operations with built-in control
planes for running containers
3.Start NOW to leverage these same
features designed for 12-factor apps
to expose more production-like
environments (F#V) for your
devs/LOBs
Enough
talking,
let’s see it
LIVE! 19
Leverage the IBM Cloud Garage
Method to change how you work.
20
Provides an in-depth collectionof
practices, tutorials, and
architectures to help you on this
journey.
Completely open forum for learning
at your own pace.
We offer hands-onguidance and
services, if needed.
Defined
Practices
Business
Benefits
Technical
Benefits
ibm.com/cloud/garage>
Find IBM Cloud Garages worldwide
21
AUSTIN COPENHAGEN DUBAI LONDON MELBOURNE
MUNICH NEW YORK NICE SANFRANCISCO SÃOPAULO
SINGAPORE TOKYO TORONTO
Get your hands in the code
22
developer.ibm.com/patterns>
232323
Free Community
Edition
Try Kubernetes with
IBM Cloud Private
ibm.biz/Try-IBMCloudPrivate>
24
Learn
more in
our new
book!
Now available
online
compliments of
IBM (see
above)!
Come see us to
get it signed!
ibm.biz/BdYA4i>
25
Get a
copy of
these
slides
26
Ad

More Related Content

What's hot (20)

remote-method-guesser - BHUSA2021 Arsenal
remote-method-guesser - BHUSA2021 Arsenal remote-method-guesser - BHUSA2021 Arsenal
remote-method-guesser - BHUSA2021 Arsenal
Tobias Neitzel
 
Office 365 Incident Response 2019 B-Sides Orlando
Office 365 Incident Response 2019 B-Sides OrlandoOffice 365 Incident Response 2019 B-Sides Orlando
Office 365 Incident Response 2019 B-Sides Orlando
Alex Parsons
 
Version Control with Git
Version Control with GitVersion Control with Git
Version Control with Git
Luigi De Russis
 
Red Hat Satellite 6 - Automation with Puppet
Red Hat Satellite 6 - Automation with PuppetRed Hat Satellite 6 - Automation with Puppet
Red Hat Satellite 6 - Automation with Puppet
Michael Lessard
 
How OpenShift SDN helps to automate
How OpenShift SDN helps to automateHow OpenShift SDN helps to automate
How OpenShift SDN helps to automate
Ilkka Tengvall
 
Manejo de packages en Kubernetes con Helm
Manejo de packages en Kubernetes con HelmManejo de packages en Kubernetes con Helm
Manejo de packages en Kubernetes con Helm
Mario IC
 
Open ebs 101
Open ebs 101Open ebs 101
Open ebs 101
LibbySchulze
 
Burp plugin development for java n00bs (44 con)
Burp plugin development for java n00bs (44 con)Burp plugin development for java n00bs (44 con)
Burp plugin development for java n00bs (44 con)
Marc Wickenden
 
Secret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on KubernetesSecret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on Kubernetes
An Nguyen
 
Curso Kubernetes CodeURJC
Curso Kubernetes CodeURJCCurso Kubernetes CodeURJC
Curso Kubernetes CodeURJC
Micael Gallego
 
Nodejs Session01
Nodejs Session01Nodejs Session01
Nodejs Session01
Jainul Musani
 
NA Adabas & Natural User Group Meeting April 2023
NA Adabas & Natural User Group Meeting April 2023NA Adabas & Natural User Group Meeting April 2023
NA Adabas & Natural User Group Meeting April 2023
Software AG
 
Chapitre 3 Bilans des bioréacteurs.pptx
Chapitre 3 Bilans des bioréacteurs.pptxChapitre 3 Bilans des bioréacteurs.pptx
Chapitre 3 Bilans des bioréacteurs.pptx
bouldjedjrima
 
food borne infection.clostridium .pptx
food borne infection.clostridium .pptxfood borne infection.clostridium .pptx
food borne infection.clostridium .pptx
ApoorvaUdayashankara
 
Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...
Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...
Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...
Monica Beckwith
 
Label based Mandatory Access Control on PostgreSQL
Label based Mandatory Access Control on PostgreSQLLabel based Mandatory Access Control on PostgreSQL
Label based Mandatory Access Control on PostgreSQL
Kohei KaiGai
 
Docker on AWS - the Right Way
Docker on AWS - the Right WayDocker on AWS - the Right Way
Docker on AWS - the Right Way
AllCloud
 
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
QAware GmbH
 
MIC204 (Food Microbiology) - Chapter 4 : FACTORS THAT INFLUENCE MICROBIAL ACT...
MIC204 (Food Microbiology) - Chapter 4 : FACTORS THAT INFLUENCE MICROBIAL ACT...MIC204 (Food Microbiology) - Chapter 4 : FACTORS THAT INFLUENCE MICROBIAL ACT...
MIC204 (Food Microbiology) - Chapter 4 : FACTORS THAT INFLUENCE MICROBIAL ACT...
Alia Najiha
 
Container Security Deep Dive & Kubernetes
Container Security Deep Dive & Kubernetes Container Security Deep Dive & Kubernetes
Container Security Deep Dive & Kubernetes
Aqua Security
 
remote-method-guesser - BHUSA2021 Arsenal
remote-method-guesser - BHUSA2021 Arsenal remote-method-guesser - BHUSA2021 Arsenal
remote-method-guesser - BHUSA2021 Arsenal
Tobias Neitzel
 
Office 365 Incident Response 2019 B-Sides Orlando
Office 365 Incident Response 2019 B-Sides OrlandoOffice 365 Incident Response 2019 B-Sides Orlando
Office 365 Incident Response 2019 B-Sides Orlando
Alex Parsons
 
Version Control with Git
Version Control with GitVersion Control with Git
Version Control with Git
Luigi De Russis
 
Red Hat Satellite 6 - Automation with Puppet
Red Hat Satellite 6 - Automation with PuppetRed Hat Satellite 6 - Automation with Puppet
Red Hat Satellite 6 - Automation with Puppet
Michael Lessard
 
How OpenShift SDN helps to automate
How OpenShift SDN helps to automateHow OpenShift SDN helps to automate
How OpenShift SDN helps to automate
Ilkka Tengvall
 
Manejo de packages en Kubernetes con Helm
Manejo de packages en Kubernetes con HelmManejo de packages en Kubernetes con Helm
Manejo de packages en Kubernetes con Helm
Mario IC
 
Burp plugin development for java n00bs (44 con)
Burp plugin development for java n00bs (44 con)Burp plugin development for java n00bs (44 con)
Burp plugin development for java n00bs (44 con)
Marc Wickenden
 
Secret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on KubernetesSecret Management with Hashicorp Vault and Consul on Kubernetes
Secret Management with Hashicorp Vault and Consul on Kubernetes
An Nguyen
 
Curso Kubernetes CodeURJC
Curso Kubernetes CodeURJCCurso Kubernetes CodeURJC
Curso Kubernetes CodeURJC
Micael Gallego
 
NA Adabas & Natural User Group Meeting April 2023
NA Adabas & Natural User Group Meeting April 2023NA Adabas & Natural User Group Meeting April 2023
NA Adabas & Natural User Group Meeting April 2023
Software AG
 
Chapitre 3 Bilans des bioréacteurs.pptx
Chapitre 3 Bilans des bioréacteurs.pptxChapitre 3 Bilans des bioréacteurs.pptx
Chapitre 3 Bilans des bioréacteurs.pptx
bouldjedjrima
 
food borne infection.clostridium .pptx
food borne infection.clostridium .pptxfood borne infection.clostridium .pptx
food borne infection.clostridium .pptx
ApoorvaUdayashankara
 
Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...
Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...
Garbage First Garbage Collector (G1 GC): Current and Future Adaptability and ...
Monica Beckwith
 
Label based Mandatory Access Control on PostgreSQL
Label based Mandatory Access Control on PostgreSQLLabel based Mandatory Access Control on PostgreSQL
Label based Mandatory Access Control on PostgreSQL
Kohei KaiGai
 
Docker on AWS - the Right Way
Docker on AWS - the Right WayDocker on AWS - the Right Way
Docker on AWS - the Right Way
AllCloud
 
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
QAware GmbH
 
MIC204 (Food Microbiology) - Chapter 4 : FACTORS THAT INFLUENCE MICROBIAL ACT...
MIC204 (Food Microbiology) - Chapter 4 : FACTORS THAT INFLUENCE MICROBIAL ACT...MIC204 (Food Microbiology) - Chapter 4 : FACTORS THAT INFLUENCE MICROBIAL ACT...
MIC204 (Food Microbiology) - Chapter 4 : FACTORS THAT INFLUENCE MICROBIAL ACT...
Alia Najiha
 
Container Security Deep Dive & Kubernetes
Container Security Deep Dive & Kubernetes Container Security Deep Dive & Kubernetes
Container Security Deep Dive & Kubernetes
Aqua Security
 

Similar to Learn how to Leverage Kubernetes to Support 12 Factor for Enterprise Apps (20)

An architect’s guide to leveraging your incumbency
An architect’s guide to leveraging your incumbencyAn architect’s guide to leveraging your incumbency
An architect’s guide to leveraging your incumbency
Michael Elder
 
IBM Cloud Paks - IBM Cloud
IBM Cloud Paks - IBM CloudIBM Cloud Paks - IBM Cloud
IBM Cloud Paks - IBM Cloud
AniaPaplaCardenal
 
Elevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling CloudsElevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling Clouds
Michael Elder
 
D-DAY 2015 Hybrid Cloud IBM
D-DAY 2015 Hybrid Cloud IBMD-DAY 2015 Hybrid Cloud IBM
D-DAY 2015 Hybrid Cloud IBM
DEVOPS D-DAY
 
Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?
Phil Estes
 
IBM Cloud UCC Talk, 22nd November 2017
IBM Cloud UCC Talk, 22nd November 2017IBM Cloud UCC Talk, 22nd November 2017
IBM Cloud UCC Talk, 22nd November 2017
Michael O'Sullivan
 
IBM Cloud Paris Meetup - 20180628 - IBM Cloud Private
IBM Cloud Paris Meetup - 20180628 - IBM Cloud PrivateIBM Cloud Paris Meetup - 20180628 - IBM Cloud Private
IBM Cloud Paris Meetup - 20180628 - IBM Cloud Private
IBM France Lab
 
Accelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud PrivateAccelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud Private
Michael Elder
 
Docker12 factor
Docker12 factorDocker12 factor
Docker12 factor
John Zaccone
 
Build12 factorappusingmp
Build12 factorappusingmpBuild12 factorappusingmp
Build12 factorappusingmp
Emily Jiang
 
The twelve factor app
The twelve factor appThe twelve factor app
The twelve factor app
Ravi Okade
 
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
VMware Tanzu
 
How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?
Michael Elder
 
fiu-cloud-hackathon-lec1-v6
fiu-cloud-hackathon-lec1-v6fiu-cloud-hackathon-lec1-v6
fiu-cloud-hackathon-lec1-v6
Kirill Osipov
 
Docker Datacenter - CaaS
Docker Datacenter - CaaSDocker Datacenter - CaaS
Docker Datacenter - CaaS
Harish Jayakumar
 
Platform as a Service - CloudFoundry and IBM Bluemix - Developer South Coast
Platform as a Service - CloudFoundry and IBM Bluemix - Developer South CoastPlatform as a Service - CloudFoundry and IBM Bluemix - Developer South Coast
Platform as a Service - CloudFoundry and IBM Bluemix - Developer South Coast
Robert Nicholson
 
Platform as a Service - Cloud Foundry and IBM Bluemix
Platform as a Service - Cloud Foundry and IBM BluemixPlatform as a Service - Cloud Foundry and IBM Bluemix
Platform as a Service - Cloud Foundry and IBM Bluemix
David Currie
 
Pivotal Cloud Foundry and its usage in ecosystem
Pivotal Cloud Foundry and its usage in ecosystemPivotal Cloud Foundry and its usage in ecosystem
Pivotal Cloud Foundry and its usage in ecosystem
KarthikeyanSambandam2
 
Developing and Deploying Microservices to IBM Cloud Private
Developing and Deploying Microservices to IBM Cloud PrivateDeveloping and Deploying Microservices to IBM Cloud Private
Developing and Deploying Microservices to IBM Cloud Private
Shikha Srivastava
 
Java Development on Bluemix
Java Development on BluemixJava Development on Bluemix
Java Development on Bluemix
Ram Vennam
 
An architect’s guide to leveraging your incumbency
An architect’s guide to leveraging your incumbencyAn architect’s guide to leveraging your incumbency
An architect’s guide to leveraging your incumbency
Michael Elder
 
Elevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling CloudsElevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling Clouds
Michael Elder
 
D-DAY 2015 Hybrid Cloud IBM
D-DAY 2015 Hybrid Cloud IBMD-DAY 2015 Hybrid Cloud IBM
D-DAY 2015 Hybrid Cloud IBM
DEVOPS D-DAY
 
Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?Containerize, PaaS, or Go Serverless!?
Containerize, PaaS, or Go Serverless!?
Phil Estes
 
IBM Cloud UCC Talk, 22nd November 2017
IBM Cloud UCC Talk, 22nd November 2017IBM Cloud UCC Talk, 22nd November 2017
IBM Cloud UCC Talk, 22nd November 2017
Michael O'Sullivan
 
IBM Cloud Paris Meetup - 20180628 - IBM Cloud Private
IBM Cloud Paris Meetup - 20180628 - IBM Cloud PrivateIBM Cloud Paris Meetup - 20180628 - IBM Cloud Private
IBM Cloud Paris Meetup - 20180628 - IBM Cloud Private
IBM France Lab
 
Accelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud PrivateAccelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud Private
Michael Elder
 
Build12 factorappusingmp
Build12 factorappusingmpBuild12 factorappusingmp
Build12 factorappusingmp
Emily Jiang
 
The twelve factor app
The twelve factor appThe twelve factor app
The twelve factor app
Ravi Okade
 
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
VMware Tanzu
 
How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?
Michael Elder
 
fiu-cloud-hackathon-lec1-v6
fiu-cloud-hackathon-lec1-v6fiu-cloud-hackathon-lec1-v6
fiu-cloud-hackathon-lec1-v6
Kirill Osipov
 
Platform as a Service - CloudFoundry and IBM Bluemix - Developer South Coast
Platform as a Service - CloudFoundry and IBM Bluemix - Developer South CoastPlatform as a Service - CloudFoundry and IBM Bluemix - Developer South Coast
Platform as a Service - CloudFoundry and IBM Bluemix - Developer South Coast
Robert Nicholson
 
Platform as a Service - Cloud Foundry and IBM Bluemix
Platform as a Service - Cloud Foundry and IBM BluemixPlatform as a Service - Cloud Foundry and IBM Bluemix
Platform as a Service - Cloud Foundry and IBM Bluemix
David Currie
 
Pivotal Cloud Foundry and its usage in ecosystem
Pivotal Cloud Foundry and its usage in ecosystemPivotal Cloud Foundry and its usage in ecosystem
Pivotal Cloud Foundry and its usage in ecosystem
KarthikeyanSambandam2
 
Developing and Deploying Microservices to IBM Cloud Private
Developing and Deploying Microservices to IBM Cloud PrivateDeveloping and Deploying Microservices to IBM Cloud Private
Developing and Deploying Microservices to IBM Cloud Private
Shikha Srivastava
 
Java Development on Bluemix
Java Development on BluemixJava Development on Bluemix
Java Development on Bluemix
Ram Vennam
 
Ad

More from Michael Elder (20)

Introducing github.com/open-cluster-management – How to deliver apps across c...
Introducing github.com/open-cluster-management – How to deliver apps across c...Introducing github.com/open-cluster-management – How to deliver apps across c...
Introducing github.com/open-cluster-management – How to deliver apps across c...
Michael Elder
 
IBM Multicloud Management on the OpenShift Container Platform
IBM Multicloud Management on theOpenShift Container PlatformIBM Multicloud Management on theOpenShift Container Platform
IBM Multicloud Management on the OpenShift Container Platform
Michael Elder
 
How IBM is helping developers win the race to innovate with next-gen cloud se...
How IBM is helping developers win the race to innovate with next-gen cloud se...How IBM is helping developers win the race to innovate with next-gen cloud se...
How IBM is helping developers win the race to innovate with next-gen cloud se...
Michael Elder
 
Portable Apps across IBM Kubernetes Service and IBM Cloud Private (#Think2019...
Portable Apps across IBM Kubernetes Service and IBM Cloud Private (#Think2019...Portable Apps across IBM Kubernetes Service and IBM Cloud Private (#Think2019...
Portable Apps across IBM Kubernetes Service and IBM Cloud Private (#Think2019...
Michael Elder
 
Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...
Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...
Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...
Michael Elder
 
Client Deployment of IBM Cloud Private (IBM #Think2019 #5964)
Client Deployment of IBM Cloud Private (IBM #Think2019 #5964)Client Deployment of IBM Cloud Private (IBM #Think2019 #5964)
Client Deployment of IBM Cloud Private (IBM #Think2019 #5964)
Michael Elder
 
Deploying Kubernetes in the Enterprise (IBM #Think2019 #7678 Tech Talk)
Deploying Kubernetes in the Enterprise (IBM #Think2019 #7678 Tech Talk)Deploying Kubernetes in the Enterprise (IBM #Think2019 #7678 Tech Talk)
Deploying Kubernetes in the Enterprise (IBM #Think2019 #7678 Tech Talk)
Michael Elder
 
Introduction to IBM Cloud Private - April 2018
Introduction to IBM Cloud Private - April 2018Introduction to IBM Cloud Private - April 2018
Introduction to IBM Cloud Private - April 2018
Michael Elder
 
#8311: Transform the Enterprise with IBM Cloud Private
#8311: Transform the Enterprise with IBM Cloud Private#8311: Transform the Enterprise with IBM Cloud Private
#8311: Transform the Enterprise with IBM Cloud Private
Michael Elder
 
Accelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud PrivateAccelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud Private
Michael Elder
 
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
Michael Elder
 
CTO Forum - Rethink Technology Agile Keynote
CTO Forum - Rethink Technology Agile KeynoteCTO Forum - Rethink Technology Agile Keynote
CTO Forum - Rethink Technology Agile Keynote
Michael Elder
 
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM CloudDevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
Michael Elder
 
How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?
Michael Elder
 
UrbanCode Deploy DevOps Best Practices
UrbanCode Deploy  DevOps Best PracticesUrbanCode Deploy  DevOps Best Practices
UrbanCode Deploy DevOps Best Practices
Michael Elder
 
DevOps for IBM Commerce
DevOps for IBM CommerceDevOps for IBM Commerce
DevOps for IBM Commerce
Michael Elder
 
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds - UrbanCod...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds - UrbanCod...Elevate Your Continuous Delivery Strategy Above the Rolling Clouds - UrbanCod...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds - UrbanCod...
Michael Elder
 
How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...
How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...
How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...
Michael Elder
 
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Michael Elder
 
Turning up the HEAT with IBM MobileFirst for iOS Apps (Interconnect 2016)
Turning up the HEAT with IBM MobileFirst for iOS Apps (Interconnect 2016)Turning up the HEAT with IBM MobileFirst for iOS Apps (Interconnect 2016)
Turning up the HEAT with IBM MobileFirst for iOS Apps (Interconnect 2016)
Michael Elder
 
Introducing github.com/open-cluster-management – How to deliver apps across c...
Introducing github.com/open-cluster-management – How to deliver apps across c...Introducing github.com/open-cluster-management – How to deliver apps across c...
Introducing github.com/open-cluster-management – How to deliver apps across c...
Michael Elder
 
IBM Multicloud Management on the OpenShift Container Platform
IBM Multicloud Management on theOpenShift Container PlatformIBM Multicloud Management on theOpenShift Container Platform
IBM Multicloud Management on the OpenShift Container Platform
Michael Elder
 
How IBM is helping developers win the race to innovate with next-gen cloud se...
How IBM is helping developers win the race to innovate with next-gen cloud se...How IBM is helping developers win the race to innovate with next-gen cloud se...
How IBM is helping developers win the race to innovate with next-gen cloud se...
Michael Elder
 
Portable Apps across IBM Kubernetes Service and IBM Cloud Private (#Think2019...
Portable Apps across IBM Kubernetes Service and IBM Cloud Private (#Think2019...Portable Apps across IBM Kubernetes Service and IBM Cloud Private (#Think2019...
Portable Apps across IBM Kubernetes Service and IBM Cloud Private (#Think2019...
Michael Elder
 
Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...
Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...
Creating Production-Ready, Secure and Scalable Applications in IBM Cloud Priv...
Michael Elder
 
Client Deployment of IBM Cloud Private (IBM #Think2019 #5964)
Client Deployment of IBM Cloud Private (IBM #Think2019 #5964)Client Deployment of IBM Cloud Private (IBM #Think2019 #5964)
Client Deployment of IBM Cloud Private (IBM #Think2019 #5964)
Michael Elder
 
Deploying Kubernetes in the Enterprise (IBM #Think2019 #7678 Tech Talk)
Deploying Kubernetes in the Enterprise (IBM #Think2019 #7678 Tech Talk)Deploying Kubernetes in the Enterprise (IBM #Think2019 #7678 Tech Talk)
Deploying Kubernetes in the Enterprise (IBM #Think2019 #7678 Tech Talk)
Michael Elder
 
Introduction to IBM Cloud Private - April 2018
Introduction to IBM Cloud Private - April 2018Introduction to IBM Cloud Private - April 2018
Introduction to IBM Cloud Private - April 2018
Michael Elder
 
#8311: Transform the Enterprise with IBM Cloud Private
#8311: Transform the Enterprise with IBM Cloud Private#8311: Transform the Enterprise with IBM Cloud Private
#8311: Transform the Enterprise with IBM Cloud Private
Michael Elder
 
Accelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud PrivateAccelerate Digital Transformation with IBM Cloud Private
Accelerate Digital Transformation with IBM Cloud Private
Michael Elder
 
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
Michael Elder
 
CTO Forum - Rethink Technology Agile Keynote
CTO Forum - Rethink Technology Agile KeynoteCTO Forum - Rethink Technology Agile Keynote
CTO Forum - Rethink Technology Agile Keynote
Michael Elder
 
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM CloudDevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
Michael Elder
 
How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?
Michael Elder
 
UrbanCode Deploy DevOps Best Practices
UrbanCode Deploy  DevOps Best PracticesUrbanCode Deploy  DevOps Best Practices
UrbanCode Deploy DevOps Best Practices
Michael Elder
 
DevOps for IBM Commerce
DevOps for IBM CommerceDevOps for IBM Commerce
DevOps for IBM Commerce
Michael Elder
 
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds - UrbanCod...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds - UrbanCod...Elevate Your Continuous Delivery Strategy Above the Rolling Clouds - UrbanCod...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds - UrbanCod...
Michael Elder
 
How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...
How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...
How to Adopt Docker Within Your Enterprise Using IBM UrbanCode Deploy (Interc...
Michael Elder
 
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Elevate Your Continuous Delivery Strategy Above the Rolling Clouds (Interconn...
Michael Elder
 
Turning up the HEAT with IBM MobileFirst for iOS Apps (Interconnect 2016)
Turning up the HEAT with IBM MobileFirst for iOS Apps (Interconnect 2016)Turning up the HEAT with IBM MobileFirst for iOS Apps (Interconnect 2016)
Turning up the HEAT with IBM MobileFirst for iOS Apps (Interconnect 2016)
Michael Elder
 
Ad

Recently uploaded (20)

Top 10 Data Cleansing Tools for 2025.pdf
Top 10 Data Cleansing Tools for 2025.pdfTop 10 Data Cleansing Tools for 2025.pdf
Top 10 Data Cleansing Tools for 2025.pdf
AffinityCore
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
saimabibi60507
 
Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
AxisTechnolabs
 
Creating Automated Tests with AI - Cory House - Applitools.pdf
Creating Automated Tests with AI - Cory House - Applitools.pdfCreating Automated Tests with AI - Cory House - Applitools.pdf
Creating Automated Tests with AI - Cory House - Applitools.pdf
Applitools
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game DevelopmentBest Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Juego Studios
 
FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...
FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...
FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...
Lionel Briand
 
How can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptxHow can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptx
laravinson24
 
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
Imma Valls Bernaus
 
Download YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full ActivatedDownload YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full Activated
saniamalik72555
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
Microsoft Excel Core Points Training.pptx
Microsoft Excel Core Points Training.pptxMicrosoft Excel Core Points Training.pptx
Microsoft Excel Core Points Training.pptx
Mekonnen
 
Full Cracked Resolume Arena Latest Version
Full Cracked Resolume Arena Latest VersionFull Cracked Resolume Arena Latest Version
Full Cracked Resolume Arena Latest Version
jonesmichealj2
 
Not So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java WebinarNot So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java Webinar
Tier1 app
 
Implementing promises with typescripts, step by step
Implementing promises with typescripts, step by stepImplementing promises with typescripts, step by step
Implementing promises with typescripts, step by step
Ran Wahle
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
Cryptocurrency Exchange Script like Binance.pptx
Cryptocurrency Exchange Script like Binance.pptxCryptocurrency Exchange Script like Binance.pptx
Cryptocurrency Exchange Script like Binance.pptx
riyageorge2024
 
Top 10 Data Cleansing Tools for 2025.pdf
Top 10 Data Cleansing Tools for 2025.pdfTop 10 Data Cleansing Tools for 2025.pdf
Top 10 Data Cleansing Tools for 2025.pdf
AffinityCore
 
Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025Avast Premium Security Crack FREE Latest Version 2025
Avast Premium Security Crack FREE Latest Version 2025
mu394968
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
saimabibi60507
 
Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
AxisTechnolabs
 
Creating Automated Tests with AI - Cory House - Applitools.pdf
Creating Automated Tests with AI - Cory House - Applitools.pdfCreating Automated Tests with AI - Cory House - Applitools.pdf
Creating Automated Tests with AI - Cory House - Applitools.pdf
Applitools
 
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
F-Secure Freedome VPN 2025 Crack Plus Activation  New VersionF-Secure Freedome VPN 2025 Crack Plus Activation  New Version
F-Secure Freedome VPN 2025 Crack Plus Activation New Version
saimabibi60507
 
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game DevelopmentBest Practices for Collaborating with 3D Artists in Mobile Game Development
Best Practices for Collaborating with 3D Artists in Mobile Game Development
Juego Studios
 
FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...
FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...
FlakyFix: Using Large Language Models for Predicting Flaky Test Fix Categorie...
Lionel Briand
 
How can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptxHow can one start with crypto wallet development.pptx
How can one start with crypto wallet development.pptx
laravinson24
 
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
🌱 Green Grafana 🌱 Essentials_ Data, Visualizations and Plugins.pdf
Imma Valls Bernaus
 
Download YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full ActivatedDownload YouTube By Click 2025 Free Full Activated
Download YouTube By Click 2025 Free Full Activated
saniamalik72555
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
Microsoft Excel Core Points Training.pptx
Microsoft Excel Core Points Training.pptxMicrosoft Excel Core Points Training.pptx
Microsoft Excel Core Points Training.pptx
Mekonnen
 
Full Cracked Resolume Arena Latest Version
Full Cracked Resolume Arena Latest VersionFull Cracked Resolume Arena Latest Version
Full Cracked Resolume Arena Latest Version
jonesmichealj2
 
Not So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java WebinarNot So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java Webinar
Tier1 app
 
Implementing promises with typescripts, step by step
Implementing promises with typescripts, step by stepImplementing promises with typescripts, step by step
Implementing promises with typescripts, step by step
Ran Wahle
 
The Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdfThe Significance of Hardware in Information Systems.pdf
The Significance of Hardware in Information Systems.pdf
drewplanas10
 
Cryptocurrency Exchange Script like Binance.pptx
Cryptocurrency Exchange Script like Binance.pptxCryptocurrency Exchange Script like Binance.pptx
Cryptocurrency Exchange Script like Binance.pptx
riyageorge2024
 

Learn how to Leverage Kubernetes to Support 12 Factor for Enterprise Apps

  • 1. Learn how to Leverage Kubernetes to Support 12 Factor for Enterprise Apps Dr. Brad Topol IBM Distinguished Engineer @bradtopol Michael Elder IBM Distinguished Engineer @mdelder
  • 2. Let’s deploy our apps on the cloud! 2© 2019 IBM Corporation
  • 3. Why? 3© 2019 IBM Corporation 1.Cloud has evolved as a strategy for disruption driven by continuous delivery. 2.Cloud elasticity enables microservices architectures to scale out quickly, but also roll new updates out at immense speeds. 3.Data becomes the fuel for business innovation. 4.AI becomes the catalyst to turn data into brilliant user experiences. 5.Profit! Or really, reduce overall cost.
  • 4. 4 What is a 12-factor app? https://12factor.net/ • “12-Factor” is a software methodology for building scalable microservice applications • Originally created by Heroku • Best practices designed to enable applications to be built with portability, resilience, and scalability when deployed to the web
  • 5. 5 I. Codebase One codebase tracked in revision control,manydeploys II. Dependencies Explicitlydeclare and isolate dependencies III. Config Store config in the environment IV. Backing services Treat backing services as attached resources V. Build, release, run Strictlyseparate 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 Maximize robustness with 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 admin/management tasks as one-off processes Why 12 factor apps? https://12factor.net/ • Make it easier to run, scale, and deploy applications • Keep parity between development and production • Provide strict separation between build, release, and run stages
  • 6. 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 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. Parity between dev & prod Keep development, staging, and production as similar as possible XI. Logs Treat logs as event streams XII. Admin processes Run admin/management tasks as one-off processes Code Deploy Operate
  • 7. 7 I. Codebase One codebase tracked in revision control, many deploys V. Build, release, run Strictly separate build and run stages X. Parity between dev & prod Keep development, staging, and production as similar as possible Code Factors Mapped to Kubernetes Container images built from Dockerfiles + Kubernetes Declarative YAML based deployment Using same container images and Kubernetes YAML objects in both dev and production Continuous Delivery and leveraging Kubernetes support for deploying updates
  • 8. 8 II. Dependencies Explicitly declare and isolate dependencies III. Config Store config in the environment IV. Backing services Treat backing services as attached resources VI. Processes Execute the app as one or more stateless processes VII. Port binding Export services via port binding Deploy Factors Mapped to Kubernetes Container Secret Service ConfigMap Persistent Volume Pod
  • 9. IX. Disposability (Pods) Maximize robustness with fast startup and graceful shutdown Common Services (logging, monitoring, audit, etc) VIII. Concurrency Scale out via the process model XI. Logs Treat logs as event streams XII. Admin processes Run admin/management tasks as one-off processes Operate Factors Mapped to Kubernetes Deployment (ReplicaSet) Stateles s Stateless StatefulSet Stateful Job Batch DaemonSet System Job Batch
  • 11. Code factors for our app 11 # Application to deploy apiVersion: extensions/v1beta1 kind: Deployment metadata: name: watson-conversation-app spec: replicas: 2 # tells deployment to run 2 pods matching the template template: # create pods using pod definition in this template metadata: labels: app: watson-conversation-app tier: frontend spec: containers: - name: watson-conversation-app image: mycluster.icp:8500/default/conversation- simple:alt resources: requests: cpu: 100m memory: 100Mi env: - name: WORKSPACE_ID valueFrom: configMapKeyRef: name: car-dashboard-config key: workspace_id - name: CONVERSATION_SERVICE_CAR valueFrom: secretKeyRef: name: binding-conversation-service-car key: binding 1.Container Images are built from Dockerfiles. Kubernetes Deployments, etc are managed as YAML (Factor #I) 2.Having a strong artifact-driven model makes it easier to follow a Continuous Delivery lifecycle (Factor #V) 3.Using the same images and YAML objects make it easier for dev teams to match what’s running in production (Factor #X)
  • 12. Deploy factors for our app 12 1.ConfigMaps and Secrets can be managed in source repositories or built dynamically via commands (Factor #III) 2.Our container image runs as a container process in a Pod with other containers (Factor #VI) 3.A collection of Pods can expose or consume Services via port bindings (Factor #IV & Factor #VII) Pod (SingleIP Address) Volume Volume container container container Volume Secret ConfigMap
  • 13. Operate factors for our app 1.A Deployment includes a ReplicaSet which declares the desired availability policy(Factor #VIII) 2.If a Pod fails, Kubernetes will attempt to recover it via restarting the Pod or scheduling it to a new node (Factor #IX) 3.Running our app as a container makes it possible to capture all logs, metrics, and other management functions in a consistent way (Factor #XII)
  • 14. Great, but 95% of my workloads do not fit 12- factor! 14
  • 15. Code factors for middleware 15 1.Helm Charts are an open way to package 12-factor apps, but also middleware like IBM MQ Series (F#I) 2.Providing a catalog of Helm Charts either from the community or your internal teams makes it easier to build production-like environments (F#V) 3.Just like apps, build these into Continuous Delivery pipelines for canary testing your upgrades of critical supporting services • IBM MQ Series is a leading provider of messaging services for enterprise apps; • Great example of a critical component that isn’t 12-factor
  • 16. Deploy factors for middleware 16 1.Secrets used to configure credentials and TLS certificates (F#III) 2.MQ built as a container image that runs as a container process in a Pod (F#VI) 3.Admin console, app messaging ports, and metrics ports exposed via Services with port bindings (F#IV & F#VII) MQ (SingleIP Address) Volume mq Secret Service
  • 17. Operate factors for middleware 1.A StatefulSetthat declares the desired availability policyfor MQ; a database might scale out replicas or prepare primary/secondary failover (F#VIII) 2.Recovered Pods re-mount the same PersistentVolumes (F#IX) 3.All Pods can have logs, metrics, or other management details captured automatically by your Kubernetes provider (F#XII)
  • 18. Continuous Integration & Delivery 18 1.Exposing all of your datacenter via container images with a Kubernetes orchestrator will take time for full maturity 2.Potential to dramaticallysimplify delivery of services and ongoing operations with built-in control planes for running containers 3.Start NOW to leverage these same features designed for 12-factor apps to expose more production-like environments (F#V) for your devs/LOBs
  • 20. Leverage the IBM Cloud Garage Method to change how you work. 20 Provides an in-depth collectionof practices, tutorials, and architectures to help you on this journey. Completely open forum for learning at your own pace. We offer hands-onguidance and services, if needed. Defined Practices Business Benefits Technical Benefits ibm.com/cloud/garage>
  • 21. Find IBM Cloud Garages worldwide 21 AUSTIN COPENHAGEN DUBAI LONDON MELBOURNE MUNICH NEW YORK NICE SANFRANCISCO SÃOPAULO SINGAPORE TOKYO TORONTO
  • 22. Get your hands in the code 22 developer.ibm.com/patterns>
  • 23. 232323 Free Community Edition Try Kubernetes with IBM Cloud Private ibm.biz/Try-IBMCloudPrivate>
  • 24. 24 Learn more in our new book! Now available online compliments of IBM (see above)! Come see us to get it signed! ibm.biz/BdYA4i>
  • 26. 26