SlideShare a Scribd company logo
Continuous Delivery of Applications
with Kubernetes in Prod
Dan Garfield
Chief Evangelist
Codefresh
Eric Han
Product Manager
Portworx
Sta l
^
April 25, 2018
Dan Garfield
Chief Evangelist, Codefresh
Customers
Over 3.5 million images built
3© 2018 PORTWORX with CODEFRESH
Eric Han
Product Management, Portworx
Customers
Trusted in production by Fortune Global
500 and other leading companies.
What we’ll
cover today
● Intro to Stateful Apps
● Best Practices
● Functional Testing w/ Data
● Continuous Delivery w/ Data
● Demos + Q&A!
5© 2018 PORTWORX with CODEFRESH
Every application requires Stateful containers
Linux
distros
NoSQL
RDBMS
Content &
Builds
Analytics &
Processing
Web
Stateful Stateless
6© 2018 PORTWORX with CODEFRESH
Before Containers
Single application per server
Manual CI/CD processes are common
array
x86x86x86
Business
Tier
Ridgid deployments, scales poorly
High costs per application
7© 2018 PORTWORX with CODEFRESH
With Containers
Dynamic app demand / mix
Dense (20+) apps per server
x86x86x86
Deployment, mgmt becomes automated
Lower costs per application
Sta l
^
8© 2018 PORTWORX with CODEFRESH
Persistence + Portability
Storage Class
Highly Available
Persistent Volume
postgres production
Persistent Volume Claim
postgres prod volume
Pod
mongo
Storage Class
encrypted + HA
Persistent Volume
postgres staging
Portable applications + leveraging infrastructure
9© 2018 PORTWORX with CODEFRESH
Pod to Persistent Volume
kind: StorageClass
metadata:
name: px-ha
provisioner: portworx
parameters:
fs: “ext4”
io_priority: “high”
repl: “3”
Storage Class
kind: PersistentVolume
metadata:
name: px-disk-1
spec:
capacity:
storage: 8Gi
Persistent Volume
kind: PersistentVolumeClaim
metadata:
name: seeking-volume
spec:
resources:
requests:
storage: 8Gi
storageClassName: px-ha
selector:
matchLabels:
release: stable
Persistent Volume Claim
kind: Pod
metadata:
name: mypod
spec:
containers:
- name: database
image:postgres
volumeMounts:
- mountPath: /var/lib/pg/data
volumes:
- name: pg-data
persistentVolumeClaim:
claimName: seeking-volume
Pod
1 4
2
Portable applications + leveraging infrastructure
10© 2018 PORTWORX with CODEFRESH
Top Problems with Stateful Containers in Production
1. Stuck without HA: app wants to failover to new server but
data is stuck/mounted to EBS/drive on the old server
2. Data protection: snapshot, back-up, and encryption are at
the VM-level and not at the app level
3. No Performance Control: running multiple containers per
server = poor performance
EBSEBS EBS
x86x86x86
11© 2018 PORTWORX with CODEFRESH
More complexity is not the answer
▪ Stateful containers?
▪ Persistent Volumes Claims?
▪ Servers with dozens of apps?
12© 2018 PORTWORX with CODEFRESH
Portworx is a container Software-Defined-Storage …
x86x86x86 x86
▪ Elasticity: aggregate storage capacity and enables storage-less servers to participate
▪ Container-granular HA: each storage volume is per container; Portworx replicates to a quorum
▪ Control: unifies storage control of 1000 servers on-prem and in-cloud
SSD
HDD
SSD
HDD
SSD
HDD
SSD
HDD
… 1000 servers
13© 2018 PORTWORX with CODEFRESH
that orchestrates scheduling with storage …
x86x86x86 x86
▪ Placement: ensures optimal compute scheduling with storage
▪ Seamless: integrates the user experience with schedulers
(data placement, rack info,
media health)
14© 2018 PORTWORX with CODEFRESH
and manages the full data lifecycle.
x86x86x86 x86
▪ BYOK Encryption: integrates with Vault, AWS KMS, and others to
protect data in-flight and at rest
▪ Backup/Restore: to another cluster or off-prem object storage
S3
object
store
Snap
Restore
15© 2018 PORTWORX with CODEFRESH
Codefresh and Portworx
Continuous Delivery
ID1
triggered
snapshot
ID2
Portworx
Codefresh pipeline
Production cluster
prod staging
Example Stateful Application
https://github.com/todaywasawesome/example-voting-app
Example Stateful Application
https://github.com/todaywasawesome/example-voting-app
Example Stateful Application
https://github.com/todaywasawesome/example-voting-app
Continuous Delivery Pipeline w/Live Data
Commit Build
images/Chart
Deploy to one-off
environment
Clone live data
Functional Tests Deploy to
Production
Remove one-off
env
Demotime!
Try Portworx on GKE
Contact us at:
portworx.com
Schedule a 1:1 with us
Get in touch at:
Codefresh.io
Q T !

More Related Content

What's hot (20)

PPT
Containerized Storage
Red_Hat_Storage
 
PPTX
Hedvig & Docker Datacenter
Eric Carter
 
PDF
It's Prime Time for OpenStack--What Are You Waiting For?
Veritas Technologies LLC
 
PDF
Red Hat Storage Day New York - Welcome Remarks
Red_Hat_Storage
 
PPTX
Why Software-Defined Storage Matters
Red_Hat_Storage
 
PDF
Citrix VDI on FlexPod with Microsoft Private Cloud
NetApp
 
PPTX
Red Hat Storage Day LA - Performance and Sizing Software Defined Storage
Red_Hat_Storage
 
PDF
Elastic on a Hyper-Converged Infrastructure for Operational Log Analytics
Elasticsearch
 
PDF
AWSome Insider's View of NetBackup 8.1
Veritas Technologies LLC
 
PPTX
Maplelabs scalable-field-device-cloud-native
Ganeshkumar Sundararajan
 
PDF
Red Hat Storage Day Atlanta - Persistent Storage for Linux Containers
Red_Hat_Storage
 
PDF
NetBackup CloudCatalyst: Efficient, Cost-Effective Deduplication to the Cloud
Veritas Technologies LLC
 
PDF
Stop compromising your data in the cloud with Veritas CloudPoint
Veritas Technologies LLC
 
PPT
Introducing Cach Efx Jan 08[Go]
gear6
 
PPTX
Atempo Big Data protection at ISC 2018 - June 2018
MarketingTeamAtempo
 
PDF
Red Hat Storage Day Boston - Persistent Storage for Containers
Red_Hat_Storage
 
PPTX
FlexPod-Fall-Announcement
Michael Harding
 
PDF
Technical Best Practices for Veritas and Microsoft Azure Using a Detailed Ref...
Veritas Technologies LLC
 
PPTX
Why Software-Defined Storage Matters
Red_Hat_Storage
 
PDF
OpenEBS CAS SDC India - 2018
OpenEBS
 
Containerized Storage
Red_Hat_Storage
 
Hedvig & Docker Datacenter
Eric Carter
 
It's Prime Time for OpenStack--What Are You Waiting For?
Veritas Technologies LLC
 
Red Hat Storage Day New York - Welcome Remarks
Red_Hat_Storage
 
Why Software-Defined Storage Matters
Red_Hat_Storage
 
Citrix VDI on FlexPod with Microsoft Private Cloud
NetApp
 
Red Hat Storage Day LA - Performance and Sizing Software Defined Storage
Red_Hat_Storage
 
Elastic on a Hyper-Converged Infrastructure for Operational Log Analytics
Elasticsearch
 
AWSome Insider's View of NetBackup 8.1
Veritas Technologies LLC
 
Maplelabs scalable-field-device-cloud-native
Ganeshkumar Sundararajan
 
Red Hat Storage Day Atlanta - Persistent Storage for Linux Containers
Red_Hat_Storage
 
NetBackup CloudCatalyst: Efficient, Cost-Effective Deduplication to the Cloud
Veritas Technologies LLC
 
Stop compromising your data in the cloud with Veritas CloudPoint
Veritas Technologies LLC
 
Introducing Cach Efx Jan 08[Go]
gear6
 
Atempo Big Data protection at ISC 2018 - June 2018
MarketingTeamAtempo
 
Red Hat Storage Day Boston - Persistent Storage for Containers
Red_Hat_Storage
 
FlexPod-Fall-Announcement
Michael Harding
 
Technical Best Practices for Veritas and Microsoft Azure Using a Detailed Ref...
Veritas Technologies LLC
 
Why Software-Defined Storage Matters
Red_Hat_Storage
 
OpenEBS CAS SDC India - 2018
OpenEBS
 

Similar to Continuous Delivery of Stateful Applications with Kubernetes (in Production) (20)

PPTX
Continous delivery at docker age
Adrien Blind
 
PPTX
Orchestrating Stateful Applications with PKS and Portworx
Carlos Andrés García
 
PPTX
Orchestrating stateful applications with PKS and Portworx
VMware Tanzu
 
PDF
Continuous delivery and DevOps with CloudFoundry
Johannes Rudolph
 
PDF
ContainerDays NYC 2016: "State of the Persistence Art: Present Best Practices...
DynamicInfraDays
 
PDF
Impact of CD, Clean Code, ... on Team Performance
Fredrik Wendt
 
PDF
Autopilot : Securing Cloud Native Storage
SF Bay Cloud Native Open Infra Meetup
 
PPTX
Cloud Foundry Platform Operations - CF Summit 2015
cornelia davis
 
PDF
Containers, microservices and serverless for realists
Karthik Gaekwad
 
PPTX
Docker & aPaaS: Enterprise Innovation and Trends for 2015
WaveMaker, Inc.
 
PPTX
DevOps 101
Donnie Berkholz
 
PPTX
Continuous Deployment with Containers
David Papp
 
PDF
Docker in Production: How RightScale Delivers Cloud Applications
RightScale
 
PDF
Pivotal CloudFoundry on Google cloud platform
Ronak Banka
 
PDF
Continuous Delivery for Python Developers – PyCon Otto
Peter Bittner
 
PPTX
Arch9 - A cloud based continuous delivery implementation
Pavel Chunyayev
 
PPTX
{code} and Containers - Open Source Infrastructure within Dell Technologies
The {code} Team
 
PPTX
DevOps and Continuous Delivery reference architectures for Docker
Sonatype
 
PPTX
{code} and containers
{code} by Dell EMC
 
PPTX
The world of Docker and Kubernetes
vty
 
Continous delivery at docker age
Adrien Blind
 
Orchestrating Stateful Applications with PKS and Portworx
Carlos Andrés García
 
Orchestrating stateful applications with PKS and Portworx
VMware Tanzu
 
Continuous delivery and DevOps with CloudFoundry
Johannes Rudolph
 
ContainerDays NYC 2016: "State of the Persistence Art: Present Best Practices...
DynamicInfraDays
 
Impact of CD, Clean Code, ... on Team Performance
Fredrik Wendt
 
Autopilot : Securing Cloud Native Storage
SF Bay Cloud Native Open Infra Meetup
 
Cloud Foundry Platform Operations - CF Summit 2015
cornelia davis
 
Containers, microservices and serverless for realists
Karthik Gaekwad
 
Docker & aPaaS: Enterprise Innovation and Trends for 2015
WaveMaker, Inc.
 
DevOps 101
Donnie Berkholz
 
Continuous Deployment with Containers
David Papp
 
Docker in Production: How RightScale Delivers Cloud Applications
RightScale
 
Pivotal CloudFoundry on Google cloud platform
Ronak Banka
 
Continuous Delivery for Python Developers – PyCon Otto
Peter Bittner
 
Arch9 - A cloud based continuous delivery implementation
Pavel Chunyayev
 
{code} and Containers - Open Source Infrastructure within Dell Technologies
The {code} Team
 
DevOps and Continuous Delivery reference architectures for Docker
Sonatype
 
{code} and containers
{code} by Dell EMC
 
The world of Docker and Kubernetes
vty
 
Ad

More from Codefresh (20)

PDF
Detect, debug, deploy with Codefresh and Lightstep
Codefresh
 
PDF
CICD Pipelines for Microservices: Lessons from the Trenches
Codefresh
 
PDF
Simplify Your Code with Helmfile
Codefresh
 
PDF
Making the Most of Helm 3 with Codefresh
Codefresh
 
PDF
5 Simple Tips for Troubleshooting Your Kubernetes Pods
Codefresh
 
PDF
Best Practices for Microservice CI/CD: Lessons from Expedia and Codefresh
Codefresh
 
PDF
Hybrid CI/CD with Kubernetes & Codefresh
Codefresh
 
PDF
VM vs Docker-Based Pipelines
Codefresh
 
PDF
Why You Should be Using Multi-stage Docker Builds in 2019
Codefresh
 
PPTX
Deploy Secure Cloud-Native Apps Fast
Codefresh
 
PDF
CICD Pipelines for Microservices Best Practices
Codefresh
 
PDF
Codefresh CICD New Features Launch! May 2019
Codefresh
 
PDF
Terraform GitOps on Codefresh
Codefresh
 
PDF
Adding Container Image Scanning to Your Codefresh Pipelines with Anchore
Codefresh
 
PDF
Image scanning using Clair
Codefresh
 
PDF
Updating Kubernetes With Helm Charts: Build, Test, Deploy with Codefresh and...
Codefresh
 
PDF
Docker based-Pipelines with Codefresh
Codefresh
 
PDF
Automated Serverless Pipelines with #GitOps on Codefresh
Codefresh
 
PDF
Discovering and Fixing Dependency Vulnerabilities for Kubernetes apps with Sn...
Codefresh
 
PDF
Net Pipeline on Windows Kubernetes
Codefresh
 
Detect, debug, deploy with Codefresh and Lightstep
Codefresh
 
CICD Pipelines for Microservices: Lessons from the Trenches
Codefresh
 
Simplify Your Code with Helmfile
Codefresh
 
Making the Most of Helm 3 with Codefresh
Codefresh
 
5 Simple Tips for Troubleshooting Your Kubernetes Pods
Codefresh
 
Best Practices for Microservice CI/CD: Lessons from Expedia and Codefresh
Codefresh
 
Hybrid CI/CD with Kubernetes & Codefresh
Codefresh
 
VM vs Docker-Based Pipelines
Codefresh
 
Why You Should be Using Multi-stage Docker Builds in 2019
Codefresh
 
Deploy Secure Cloud-Native Apps Fast
Codefresh
 
CICD Pipelines for Microservices Best Practices
Codefresh
 
Codefresh CICD New Features Launch! May 2019
Codefresh
 
Terraform GitOps on Codefresh
Codefresh
 
Adding Container Image Scanning to Your Codefresh Pipelines with Anchore
Codefresh
 
Image scanning using Clair
Codefresh
 
Updating Kubernetes With Helm Charts: Build, Test, Deploy with Codefresh and...
Codefresh
 
Docker based-Pipelines with Codefresh
Codefresh
 
Automated Serverless Pipelines with #GitOps on Codefresh
Codefresh
 
Discovering and Fixing Dependency Vulnerabilities for Kubernetes apps with Sn...
Codefresh
 
Net Pipeline on Windows Kubernetes
Codefresh
 
Ad

Recently uploaded (20)

PDF
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
PPTX
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PDF
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
Advancing WebDriver BiDi support in WebKit
Igalia
 
PDF
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
PPTX
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
PPTX
Designing Production-Ready AI Agents
Kunal Rai
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
DOCX
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
PPTX
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
Advancing WebDriver BiDi support in WebKit
Igalia
 
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
Designing Production-Ready AI Agents
Kunal Rai
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 

Continuous Delivery of Stateful Applications with Kubernetes (in Production)

  • 1. Continuous Delivery of Applications with Kubernetes in Prod Dan Garfield Chief Evangelist Codefresh Eric Han Product Manager Portworx Sta l ^ April 25, 2018
  • 2. Dan Garfield Chief Evangelist, Codefresh Customers Over 3.5 million images built
  • 3. 3© 2018 PORTWORX with CODEFRESH Eric Han Product Management, Portworx Customers Trusted in production by Fortune Global 500 and other leading companies.
  • 4. What we’ll cover today ● Intro to Stateful Apps ● Best Practices ● Functional Testing w/ Data ● Continuous Delivery w/ Data ● Demos + Q&A!
  • 5. 5© 2018 PORTWORX with CODEFRESH Every application requires Stateful containers Linux distros NoSQL RDBMS Content & Builds Analytics & Processing Web Stateful Stateless
  • 6. 6© 2018 PORTWORX with CODEFRESH Before Containers Single application per server Manual CI/CD processes are common array x86x86x86 Business Tier Ridgid deployments, scales poorly High costs per application
  • 7. 7© 2018 PORTWORX with CODEFRESH With Containers Dynamic app demand / mix Dense (20+) apps per server x86x86x86 Deployment, mgmt becomes automated Lower costs per application Sta l ^
  • 8. 8© 2018 PORTWORX with CODEFRESH Persistence + Portability Storage Class Highly Available Persistent Volume postgres production Persistent Volume Claim postgres prod volume Pod mongo Storage Class encrypted + HA Persistent Volume postgres staging Portable applications + leveraging infrastructure
  • 9. 9© 2018 PORTWORX with CODEFRESH Pod to Persistent Volume kind: StorageClass metadata: name: px-ha provisioner: portworx parameters: fs: “ext4” io_priority: “high” repl: “3” Storage Class kind: PersistentVolume metadata: name: px-disk-1 spec: capacity: storage: 8Gi Persistent Volume kind: PersistentVolumeClaim metadata: name: seeking-volume spec: resources: requests: storage: 8Gi storageClassName: px-ha selector: matchLabels: release: stable Persistent Volume Claim kind: Pod metadata: name: mypod spec: containers: - name: database image:postgres volumeMounts: - mountPath: /var/lib/pg/data volumes: - name: pg-data persistentVolumeClaim: claimName: seeking-volume Pod 1 4 2 Portable applications + leveraging infrastructure
  • 10. 10© 2018 PORTWORX with CODEFRESH Top Problems with Stateful Containers in Production 1. Stuck without HA: app wants to failover to new server but data is stuck/mounted to EBS/drive on the old server 2. Data protection: snapshot, back-up, and encryption are at the VM-level and not at the app level 3. No Performance Control: running multiple containers per server = poor performance EBSEBS EBS x86x86x86
  • 11. 11© 2018 PORTWORX with CODEFRESH More complexity is not the answer ▪ Stateful containers? ▪ Persistent Volumes Claims? ▪ Servers with dozens of apps?
  • 12. 12© 2018 PORTWORX with CODEFRESH Portworx is a container Software-Defined-Storage … x86x86x86 x86 ▪ Elasticity: aggregate storage capacity and enables storage-less servers to participate ▪ Container-granular HA: each storage volume is per container; Portworx replicates to a quorum ▪ Control: unifies storage control of 1000 servers on-prem and in-cloud SSD HDD SSD HDD SSD HDD SSD HDD … 1000 servers
  • 13. 13© 2018 PORTWORX with CODEFRESH that orchestrates scheduling with storage … x86x86x86 x86 ▪ Placement: ensures optimal compute scheduling with storage ▪ Seamless: integrates the user experience with schedulers (data placement, rack info, media health)
  • 14. 14© 2018 PORTWORX with CODEFRESH and manages the full data lifecycle. x86x86x86 x86 ▪ BYOK Encryption: integrates with Vault, AWS KMS, and others to protect data in-flight and at rest ▪ Backup/Restore: to another cluster or off-prem object storage S3 object store Snap Restore
  • 15. 15© 2018 PORTWORX with CODEFRESH Codefresh and Portworx Continuous Delivery ID1 triggered snapshot ID2 Portworx Codefresh pipeline Production cluster prod staging
  • 19. Continuous Delivery Pipeline w/Live Data Commit Build images/Chart Deploy to one-off environment Clone live data Functional Tests Deploy to Production Remove one-off env
  • 21. Try Portworx on GKE Contact us at: portworx.com Schedule a 1:1 with us Get in touch at: Codefresh.io Q T !