SlideShare a Scribd company logo
Combining Cloud Native & PaaS: Building a Fully Managed Application Platform on Kubernetes
Steven Normore, Engineering Manager, App Platform @ DigitalOcean
DigitalOcean App Platform is a managed application PaaS that abstracts and
encodes best practices of building and operating cloud-native web
applications.
PaaS vs IaaS
Cloud-Native & 12Factor Apps
Principles
Benefits
DigitalOcean App Platform
Cloud-Native PaaS
Cloud-Native Technologies
Takeaways & Guidance
Outline
PaaS vs IaaS
Virtualization
Servers
Storage
Networking
IaaS PaaS
Applications
Data
Runtime
Operating Systems
Cloud-Native Applications
Continuous Delivery Containers Microservices DevOps
Continuous Delivery
Release quickly, reliably, and frequently, with less risk.
Containers
Lightweight virtualization offering efficiency and reproducibility, while
abstracting away the underlying operating system.
Microservices
Modular and loosely coupled services, communicating via API contracts,
that can be deployed and scaled independently.
DevOps
Collaboration between software developers and operations with the goal of
automating delivery of software and infrastructure changes.
Cloud-Native: Benefits
Faster time to market
More agility
Right-sized scale
Collaboration
Rapid recovery
12Factor Applications
Declarative specifications for setup automation.
Clean contract with the underlying operating system.
Suitable for deployment on modern cloud platforms.
Parity between development and production environments.
Scale up without significant changes.
12Factor Principles
Codebase
Dependencies
Config
Backing services
Build, release, run
Stateless processes
Port binding
Concurrency
Disposability
Dev/prod parity
Logs
Admin processes
Codebase
Tracked in a revision control system such as Git.
Deployments associated with specific code versions.
Deployments are automatic.
Dependencies
Explicitly declare dependencies via a manifest.
Isolate dependencies to avoid leaking implicit dependencies.
Config
Store config in the environment.
Use environment variables.
Backing Services
Backing services treated as attached resources.
Communicate through API contracts.
Decoupled from specific instances.
Build, Release, Run
Strictly separate build and run stages.
Ensures no changes can be made to code at runtime.
Ensures runtimes are identical as processes scale.
Stateless Processes
Execute apps as one or more stateless processes.
Data is persisted to a backing store.
Allows processes to scale without syncing state.
Port Binding
Self-contained web services.
Bind to the port passed into the environment variable $PORT.
Avoids reliance on runtime injection of a web server.
Concurrency
Scale up via the process model.
Prefer horizontal scaling over vertical scaling.
Encourage breaking apps into modular components.
Disposability
Robustness with fast startup and graceful shutdown.
Robustness against sudden crashes and failures.
Facilitates fast elastic scaling.
Rapid and robust code deployment and config changes.
Dev/Prod Parity
Keep development, staging, and production as similar as possible.
Minimize time between coding and deploying.
Code authors and deployers should be the same people.
Logs
Treat logs as event streams that you write to stdout.
Apps are not responsible for routing or storing its logs.
Facilitates self-contained apps and minimizes dependencies.
Admin Processes
Run admin and management tasks as one-off processes.
Run against a specific release in a specific runtime environment.
Admin code is shipped with application code.
12Factor Principles: Benefits
Minimizes time and cost for new developers joining the project.
Maximizes portability between execution environments.
Removes the need for servers and systems administration.
Enables continuous delivery.
Optimizes for agility.
Prioritizes performance and reliability.
DigitalOcean App Platform
Declarative app specification.
Deploy web services, static sites, background workers, and jobs.
Integrate directly with DO managed databases.
Continuous delivery from Git repositories.
Auto-build with Buildpacks or bring your own Dockerfile.
Built-in container health checks and zero-downtime deployments.
Built-in global CDN with SSL for all domains.
Built-in ingress with path-based routing.
Scale up and out easily.
Built-in monitoring, alerting, and logging.
App Platform is a Cloud-Native PaaS
Declarative app specification
Declarative spec defines the app desired state.
Clone, reuse, and share apps easily.
Parity between staging and production environments.
Deploy web services, static sites, background workers, and jobs
Combine components to make a full app.
Encourage modular and loosely coupled components.
Enable components to scale independently.
Support one-off admin and maintenance processes.
Continuous delivery from Git repositories
Build and deploy from a codebase with revision control.
Build, release, run — decoupled build and run stages.
Parity between environments through continuous delivery.
Encourage DevOps by abstracting away the CI/CD infrastructure.
Auto-build with Buildpacks or bring your own Dockerfile
Build and run stateless containers.
Encourage decoupled environment config.
Parity between environments through shared build strategies.
Get started quickly.
Built-in container health checks and zero-downtime deployments
Zero-downtime deployments using rolling updates.
Support continuous delivery.
Robustness against app failure and degradation.
Built-in global CDN with SSL for all domains
Global CDN for web services and static sites.
SSL for all domains as the default.
Bring your own custom domains.
DDoS protection built-in.
Built-in ingress with path-based routing
Route to app services based on URL path behind the same domain.
Load-balance across multiple instances of your services.
Supports breaking app into modular services.
Scale up and out easily
Scale vertically or horizontally as needed.
Scale components independently.
Zero-downtime scaling with health checks.
Built-in monitoring, alerting, and logging
Logs from container stdout and stderr available via API.
Insights and alerting for app containers and ingress.
Apps are not responsible for managing its logs or metrics.
App Platform is built on Cloud-Native technologies
Running on a fleet of multi-tenant Kubernetes DOKS clusters.
Workload isolation using gVisor.
Network isolation using Cilium.
Auto-build using Buildpacks and Kaniko.
Global CDN with SSL for all using Cloudflare.
Ingress with path-based routing using Istio and Envoy.
App monitoring and alerting using Prometheus.
App logging using Fluent Bit.
Takeaways & Guidance
Keep your app components stateless; local disk is ephemeral.
Break your app into modular components.
Inject config as environment variables.
Services can bind to $PORT.
Bring your own Dockerfile for more control.
Thanks!
Get in touch @snormore
Combining Cloud Native & PaaS: Building a Fully Managed Application Platform on Kubernetes
Combining Cloud Native & PaaS: Building a Fully Managed Application Platform on Kubernetes
Ad

More Related Content

What's hot (17)

GoSF Jan 2016 - Go Write a Plugin for Snap!
GoSF Jan 2016 - Go Write a Plugin for Snap!GoSF Jan 2016 - Go Write a Plugin for Snap!
GoSF Jan 2016 - Go Write a Plugin for Snap!
Matthew Broberg
 
DISTRIBUTED PERFORMANCE ANALYSIS USING INFLUXDB AND THE LINUX EBPF VIRTUAL MA...
DISTRIBUTED PERFORMANCE ANALYSIS USING INFLUXDB AND THE LINUX EBPF VIRTUAL MA...DISTRIBUTED PERFORMANCE ANALYSIS USING INFLUXDB AND THE LINUX EBPF VIRTUAL MA...
DISTRIBUTED PERFORMANCE ANALYSIS USING INFLUXDB AND THE LINUX EBPF VIRTUAL MA...
InfluxData
 
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
InfluxData
 
eBPF Powered Distributed Kubernetes Performance Analysis - Lorenzo Fontana, I...
eBPF Powered Distributed Kubernetes Performance Analysis - Lorenzo Fontana, I...eBPF Powered Distributed Kubernetes Performance Analysis - Lorenzo Fontana, I...
eBPF Powered Distributed Kubernetes Performance Analysis - Lorenzo Fontana, I...
InfluxData
 
Writing Rust Command Line Applications
Writing Rust Command Line ApplicationsWriting Rust Command Line Applications
Writing Rust Command Line Applications
All Things Open
 
InfluxDB & Kubernetes
InfluxDB & KubernetesInfluxDB & Kubernetes
InfluxDB & Kubernetes
InfluxData
 
Smart Testing: Catching More Bugs with Less Code Through Topology Shuffler
Smart Testing: Catching More Bugs with Less Code Through Topology ShufflerSmart Testing: Catching More Bugs with Less Code Through Topology Shuffler
Smart Testing: Catching More Bugs with Less Code Through Topology Shuffler
OPNFV
 
Deploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
Deploy Prometheus - Grafana and EFK stack on Kubic k8s ClustersDeploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
Deploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
Syah Dwi Prihatmoko
 
Intro to open source telemetry linux con 2016
Intro to open source telemetry   linux con 2016Intro to open source telemetry   linux con 2016
Intro to open source telemetry linux con 2016
Matthew Broberg
 
Serverless stream processing of Debezium data change events with Knative | De...
Serverless stream processing of Debezium data change events with Knative | De...Serverless stream processing of Debezium data change events with Knative | De...
Serverless stream processing of Debezium data change events with Knative | De...
Red Hat Developers
 
Scaling ingest pipelines with high performance computing principles - Rajiv K...
Scaling ingest pipelines with high performance computing principles - Rajiv K...Scaling ingest pipelines with high performance computing principles - Rajiv K...
Scaling ingest pipelines with high performance computing principles - Rajiv K...
SignalFx
 
SignalFx: Making Cassandra Perform as a Time Series Database
SignalFx: Making Cassandra Perform as a Time Series DatabaseSignalFx: Making Cassandra Perform as a Time Series Database
SignalFx: Making Cassandra Perform as a Time Series Database
DataStax Academy
 
Monitoring Kubernetes with Prometheus (Kubernetes Ireland, 2016)
Monitoring Kubernetes with Prometheus (Kubernetes Ireland, 2016)Monitoring Kubernetes with Prometheus (Kubernetes Ireland, 2016)
Monitoring Kubernetes with Prometheus (Kubernetes Ireland, 2016)
Brian Brazil
 
Monitoring kubernetes with prometheus
Monitoring kubernetes with prometheusMonitoring kubernetes with prometheus
Monitoring kubernetes with prometheus
Brice Fernandes
 
Flink Forward Berlin 2017: Aljoscha Krettek - Talk Python to me: Stream Proce...
Flink Forward Berlin 2017: Aljoscha Krettek - Talk Python to me: Stream Proce...Flink Forward Berlin 2017: Aljoscha Krettek - Talk Python to me: Stream Proce...
Flink Forward Berlin 2017: Aljoscha Krettek - Talk Python to me: Stream Proce...
Flink Forward
 
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Red Hat Developers
 
Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
 Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
Redis Labs
 
GoSF Jan 2016 - Go Write a Plugin for Snap!
GoSF Jan 2016 - Go Write a Plugin for Snap!GoSF Jan 2016 - Go Write a Plugin for Snap!
GoSF Jan 2016 - Go Write a Plugin for Snap!
Matthew Broberg
 
DISTRIBUTED PERFORMANCE ANALYSIS USING INFLUXDB AND THE LINUX EBPF VIRTUAL MA...
DISTRIBUTED PERFORMANCE ANALYSIS USING INFLUXDB AND THE LINUX EBPF VIRTUAL MA...DISTRIBUTED PERFORMANCE ANALYSIS USING INFLUXDB AND THE LINUX EBPF VIRTUAL MA...
DISTRIBUTED PERFORMANCE ANALYSIS USING INFLUXDB AND THE LINUX EBPF VIRTUAL MA...
InfluxData
 
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
Scaling Prometheus Metrics in Kubernetes with Telegraf | Chris Goller | Influ...
InfluxData
 
eBPF Powered Distributed Kubernetes Performance Analysis - Lorenzo Fontana, I...
eBPF Powered Distributed Kubernetes Performance Analysis - Lorenzo Fontana, I...eBPF Powered Distributed Kubernetes Performance Analysis - Lorenzo Fontana, I...
eBPF Powered Distributed Kubernetes Performance Analysis - Lorenzo Fontana, I...
InfluxData
 
Writing Rust Command Line Applications
Writing Rust Command Line ApplicationsWriting Rust Command Line Applications
Writing Rust Command Line Applications
All Things Open
 
InfluxDB & Kubernetes
InfluxDB & KubernetesInfluxDB & Kubernetes
InfluxDB & Kubernetes
InfluxData
 
Smart Testing: Catching More Bugs with Less Code Through Topology Shuffler
Smart Testing: Catching More Bugs with Less Code Through Topology ShufflerSmart Testing: Catching More Bugs with Less Code Through Topology Shuffler
Smart Testing: Catching More Bugs with Less Code Through Topology Shuffler
OPNFV
 
Deploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
Deploy Prometheus - Grafana and EFK stack on Kubic k8s ClustersDeploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
Deploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
Syah Dwi Prihatmoko
 
Intro to open source telemetry linux con 2016
Intro to open source telemetry   linux con 2016Intro to open source telemetry   linux con 2016
Intro to open source telemetry linux con 2016
Matthew Broberg
 
Serverless stream processing of Debezium data change events with Knative | De...
Serverless stream processing of Debezium data change events with Knative | De...Serverless stream processing of Debezium data change events with Knative | De...
Serverless stream processing of Debezium data change events with Knative | De...
Red Hat Developers
 
Scaling ingest pipelines with high performance computing principles - Rajiv K...
Scaling ingest pipelines with high performance computing principles - Rajiv K...Scaling ingest pipelines with high performance computing principles - Rajiv K...
Scaling ingest pipelines with high performance computing principles - Rajiv K...
SignalFx
 
SignalFx: Making Cassandra Perform as a Time Series Database
SignalFx: Making Cassandra Perform as a Time Series DatabaseSignalFx: Making Cassandra Perform as a Time Series Database
SignalFx: Making Cassandra Perform as a Time Series Database
DataStax Academy
 
Monitoring Kubernetes with Prometheus (Kubernetes Ireland, 2016)
Monitoring Kubernetes with Prometheus (Kubernetes Ireland, 2016)Monitoring Kubernetes with Prometheus (Kubernetes Ireland, 2016)
Monitoring Kubernetes with Prometheus (Kubernetes Ireland, 2016)
Brian Brazil
 
Monitoring kubernetes with prometheus
Monitoring kubernetes with prometheusMonitoring kubernetes with prometheus
Monitoring kubernetes with prometheus
Brice Fernandes
 
Flink Forward Berlin 2017: Aljoscha Krettek - Talk Python to me: Stream Proce...
Flink Forward Berlin 2017: Aljoscha Krettek - Talk Python to me: Stream Proce...Flink Forward Berlin 2017: Aljoscha Krettek - Talk Python to me: Stream Proce...
Flink Forward Berlin 2017: Aljoscha Krettek - Talk Python to me: Stream Proce...
Flink Forward
 
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Serverless Workflow: New approach to Kubernetes service orchestration | DevNa...
Red Hat Developers
 
Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
 Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
Monitoring and Scaling Redis at DataDog - Ilan Rabinovitch, DataDog
Redis Labs
 

Similar to Combining Cloud Native & PaaS: Building a Fully Managed Application Platform on Kubernetes (20)

Enhancing DevOps With Cloud-Based Solutions.pdf
Enhancing DevOps With Cloud-Based Solutions.pdfEnhancing DevOps With Cloud-Based Solutions.pdf
Enhancing DevOps With Cloud-Based Solutions.pdf
flufftailshop
 
Enhancing DevOps With Cloud-Based Solutions.pdf
Enhancing DevOps With Cloud-Based Solutions.pdfEnhancing DevOps With Cloud-Based Solutions.pdf
Enhancing DevOps With Cloud-Based Solutions.pdf
kalichargn70th171
 
SoCal DevOps Meetup 1/26/2017 - Habitat by Chef
SoCal DevOps Meetup 1/26/2017 - Habitat by ChefSoCal DevOps Meetup 1/26/2017 - Habitat by Chef
SoCal DevOps Meetup 1/26/2017 - Habitat by Chef
Trevor Hess
 
REAN Cloud DevOps Accelerators
REAN Cloud DevOps AcceleratorsREAN Cloud DevOps Accelerators
REAN Cloud DevOps Accelerators
REAN Cloud
 
Devops lifecycle with Kabanero Appsody, Codewind, Tekton
Devops lifecycle with Kabanero Appsody, Codewind, TektonDevops lifecycle with Kabanero Appsody, Codewind, Tekton
Devops lifecycle with Kabanero Appsody, Codewind, Tekton
Winton Winton
 
Accelerating software delivery with AWS
Accelerating software delivery with AWSAccelerating software delivery with AWS
Accelerating software delivery with AWS
Rob Greenwood
 
Continuous Delivery for cloud - scenarios and scope
Continuous Delivery for cloud  - scenarios and scopeContinuous Delivery for cloud  - scenarios and scope
Continuous Delivery for cloud - scenarios and scope
Sanjeev Sharma
 
App Modernisation with Microsoft Azure
App Modernisation with Microsoft AzureApp Modernisation with Microsoft Azure
App Modernisation with Microsoft Azure
Adam Stephensen
 
Cloud Native Ninja - kickoff.pdf
Cloud Native Ninja - kickoff.pdfCloud Native Ninja - kickoff.pdf
Cloud Native Ninja - kickoff.pdf
Nilesh Gule
 
A Developer's Guide to Using Cloud Technologies in Software Projects
A Developer's Guide to Using Cloud Technologies in Software ProjectsA Developer's Guide to Using Cloud Technologies in Software Projects
A Developer's Guide to Using Cloud Technologies in Software Projects
AtliQ Technologies
 
cloudtoolsandcomputingwithcloudsssss.pptx
cloudtoolsandcomputingwithcloudsssss.pptxcloudtoolsandcomputingwithcloudsssss.pptx
cloudtoolsandcomputingwithcloudsssss.pptx
asraniyashika11
 
POV - Practical Containerization
POV - Practical ContainerizationPOV - Practical Containerization
POV - Practical Containerization
Robert Greiner
 
Top devops solution providers
Top devops solution providersTop devops solution providers
Top devops solution providers
ayush gupta
 
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
 
WaveMaker
WaveMakerWaveMaker
WaveMaker
Shabeer Ali
 
Connect Ops and Security with Flexible Web App and API Protection
Connect Ops and Security with Flexible Web App and API ProtectionConnect Ops and Security with Flexible Web App and API Protection
Connect Ops and Security with Flexible Web App and API Protection
DevOps.com
 
Using cloud native development to achieve digital transformation
Using cloud native development to achieve digital transformationUsing cloud native development to achieve digital transformation
Using cloud native development to achieve digital transformation
Uni Systems S.M.S.A.
 
DevOps and BigData Analytics
DevOps and BigData Analytics DevOps and BigData Analytics
DevOps and BigData Analytics
sbbabu
 
Let's banish "it works on my machine"
Let's banish "it works on my machine"Let's banish "it works on my machine"
Let's banish "it works on my machine"
Stephanie Locke
 
Cloud Native Application Development Guide – 2023
Cloud Native Application Development Guide – 2023Cloud Native Application Development Guide – 2023
Cloud Native Application Development Guide – 2023
Lucy Zeniffer
 
Enhancing DevOps With Cloud-Based Solutions.pdf
Enhancing DevOps With Cloud-Based Solutions.pdfEnhancing DevOps With Cloud-Based Solutions.pdf
Enhancing DevOps With Cloud-Based Solutions.pdf
flufftailshop
 
Enhancing DevOps With Cloud-Based Solutions.pdf
Enhancing DevOps With Cloud-Based Solutions.pdfEnhancing DevOps With Cloud-Based Solutions.pdf
Enhancing DevOps With Cloud-Based Solutions.pdf
kalichargn70th171
 
SoCal DevOps Meetup 1/26/2017 - Habitat by Chef
SoCal DevOps Meetup 1/26/2017 - Habitat by ChefSoCal DevOps Meetup 1/26/2017 - Habitat by Chef
SoCal DevOps Meetup 1/26/2017 - Habitat by Chef
Trevor Hess
 
REAN Cloud DevOps Accelerators
REAN Cloud DevOps AcceleratorsREAN Cloud DevOps Accelerators
REAN Cloud DevOps Accelerators
REAN Cloud
 
Devops lifecycle with Kabanero Appsody, Codewind, Tekton
Devops lifecycle with Kabanero Appsody, Codewind, TektonDevops lifecycle with Kabanero Appsody, Codewind, Tekton
Devops lifecycle with Kabanero Appsody, Codewind, Tekton
Winton Winton
 
Accelerating software delivery with AWS
Accelerating software delivery with AWSAccelerating software delivery with AWS
Accelerating software delivery with AWS
Rob Greenwood
 
Continuous Delivery for cloud - scenarios and scope
Continuous Delivery for cloud  - scenarios and scopeContinuous Delivery for cloud  - scenarios and scope
Continuous Delivery for cloud - scenarios and scope
Sanjeev Sharma
 
App Modernisation with Microsoft Azure
App Modernisation with Microsoft AzureApp Modernisation with Microsoft Azure
App Modernisation with Microsoft Azure
Adam Stephensen
 
Cloud Native Ninja - kickoff.pdf
Cloud Native Ninja - kickoff.pdfCloud Native Ninja - kickoff.pdf
Cloud Native Ninja - kickoff.pdf
Nilesh Gule
 
A Developer's Guide to Using Cloud Technologies in Software Projects
A Developer's Guide to Using Cloud Technologies in Software ProjectsA Developer's Guide to Using Cloud Technologies in Software Projects
A Developer's Guide to Using Cloud Technologies in Software Projects
AtliQ Technologies
 
cloudtoolsandcomputingwithcloudsssss.pptx
cloudtoolsandcomputingwithcloudsssss.pptxcloudtoolsandcomputingwithcloudsssss.pptx
cloudtoolsandcomputingwithcloudsssss.pptx
asraniyashika11
 
POV - Practical Containerization
POV - Practical ContainerizationPOV - Practical Containerization
POV - Practical Containerization
Robert Greiner
 
Top devops solution providers
Top devops solution providersTop devops solution providers
Top devops solution providers
ayush gupta
 
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
 
Connect Ops and Security with Flexible Web App and API Protection
Connect Ops and Security with Flexible Web App and API ProtectionConnect Ops and Security with Flexible Web App and API Protection
Connect Ops and Security with Flexible Web App and API Protection
DevOps.com
 
Using cloud native development to achieve digital transformation
Using cloud native development to achieve digital transformationUsing cloud native development to achieve digital transformation
Using cloud native development to achieve digital transformation
Uni Systems S.M.S.A.
 
DevOps and BigData Analytics
DevOps and BigData Analytics DevOps and BigData Analytics
DevOps and BigData Analytics
sbbabu
 
Let's banish "it works on my machine"
Let's banish "it works on my machine"Let's banish "it works on my machine"
Let's banish "it works on my machine"
Stephanie Locke
 
Cloud Native Application Development Guide – 2023
Cloud Native Application Development Guide – 2023Cloud Native Application Development Guide – 2023
Cloud Native Application Development Guide – 2023
Lucy Zeniffer
 
Ad

More from DigitalOcean (20)

Build Cloud Native Apps With DigitalOcean Kubernetes
Build Cloud Native Apps With DigitalOcean KubernetesBuild Cloud Native Apps With DigitalOcean Kubernetes
Build Cloud Native Apps With DigitalOcean Kubernetes
DigitalOcean
 
Benefits of Managed Databases
Benefits of Managed DatabasesBenefits of Managed Databases
Benefits of Managed Databases
DigitalOcean
 
Increase App Confidence Using CI/CD and Infrastructure As Code
Increase App Confidence Using CI/CD and Infrastructure As CodeIncrease App Confidence Using CI/CD and Infrastructure As Code
Increase App Confidence Using CI/CD and Infrastructure As Code
DigitalOcean
 
Build a Tech Brand During Covid in Emerging Tech Ecosystems
Build a Tech Brand During Covid in Emerging Tech EcosystemsBuild a Tech Brand During Covid in Emerging Tech Ecosystems
Build a Tech Brand During Covid in Emerging Tech Ecosystems
DigitalOcean
 
Sailing Through a Sea of CMS: Build and Extend APIs Faster With Strapi
Sailing Through a Sea of CMS: Build and Extend APIs Faster With StrapiSailing Through a Sea of CMS: Build and Extend APIs Faster With Strapi
Sailing Through a Sea of CMS: Build and Extend APIs Faster With Strapi
DigitalOcean
 
Doing E-commerce Right – Magento on DigitalOcean
Doing E-commerce Right – Magento on DigitalOceanDoing E-commerce Right – Magento on DigitalOcean
Doing E-commerce Right – Magento on DigitalOcean
DigitalOcean
 
Headless E-commerce That People Love
Headless E-commerce That People LoveHeadless E-commerce That People Love
Headless E-commerce That People Love
DigitalOcean
 
The Cloud Hosting Revolution Creates Opportunities for Your Business
The Cloud Hosting Revolution Creates Opportunities for Your BusinessThe Cloud Hosting Revolution Creates Opportunities for Your Business
The Cloud Hosting Revolution Creates Opportunities for Your Business
DigitalOcean
 
Build, Deploy, and Scale Your First Web App Using DigitalOcean App Platform
Build, Deploy, and Scale Your First Web App Using DigitalOcean App PlatformBuild, Deploy, and Scale Your First Web App Using DigitalOcean App Platform
Build, Deploy, and Scale Your First Web App Using DigitalOcean App Platform
DigitalOcean
 
Effective Kubernetes Onboarding
Effective Kubernetes OnboardingEffective Kubernetes Onboarding
Effective Kubernetes Onboarding
DigitalOcean
 
Creating Inclusive Learning Experiences
Creating Inclusive Learning ExperiencesCreating Inclusive Learning Experiences
Creating Inclusive Learning Experiences
DigitalOcean
 
Kubernetes for Beginners
Kubernetes for BeginnersKubernetes for Beginners
Kubernetes for Beginners
DigitalOcean
 
Command-line Your Way to PaaS Productivity With DigitalOcean App Platform
Command-line Your Way to PaaS Productivity With DigitalOcean App PlatformCommand-line Your Way to PaaS Productivity With DigitalOcean App Platform
Command-line Your Way to PaaS Productivity With DigitalOcean App Platform
DigitalOcean
 
Kubernetes: Beyond Baby Steps
Kubernetes: Beyond Baby StepsKubernetes: Beyond Baby Steps
Kubernetes: Beyond Baby Steps
DigitalOcean
 
How to Leverage Go for Your Networking Needs
How to Leverage Go for Your Networking NeedsHow to Leverage Go for Your Networking Needs
How to Leverage Go for Your Networking Needs
DigitalOcean
 
Secrets to Building & Scaling SRE Teams
Secrets to Building & Scaling SRE TeamsSecrets to Building & Scaling SRE Teams
Secrets to Building & Scaling SRE Teams
DigitalOcean
 
Deploying to DigitalOcean With GitHub Actions
Deploying to DigitalOcean With GitHub ActionsDeploying to DigitalOcean With GitHub Actions
Deploying to DigitalOcean With GitHub Actions
DigitalOcean
 
Building an Observability Platform in 389 Difficult Steps
Building an Observability Platform in 389 Difficult StepsBuilding an Observability Platform in 389 Difficult Steps
Building an Observability Platform in 389 Difficult Steps
DigitalOcean
 
Doing This Cloud Thing Right – a Lap Around DigitalOcean Products and a Roadm...
Doing This Cloud Thing Right – a Lap Around DigitalOcean Products and a Roadm...Doing This Cloud Thing Right – a Lap Around DigitalOcean Products and a Roadm...
Doing This Cloud Thing Right – a Lap Around DigitalOcean Products and a Roadm...
DigitalOcean
 
Developer Burnout: Yes, You Can Improve Your Team's Wellness
Developer Burnout: Yes, You Can Improve Your Team's WellnessDeveloper Burnout: Yes, You Can Improve Your Team's Wellness
Developer Burnout: Yes, You Can Improve Your Team's Wellness
DigitalOcean
 
Build Cloud Native Apps With DigitalOcean Kubernetes
Build Cloud Native Apps With DigitalOcean KubernetesBuild Cloud Native Apps With DigitalOcean Kubernetes
Build Cloud Native Apps With DigitalOcean Kubernetes
DigitalOcean
 
Benefits of Managed Databases
Benefits of Managed DatabasesBenefits of Managed Databases
Benefits of Managed Databases
DigitalOcean
 
Increase App Confidence Using CI/CD and Infrastructure As Code
Increase App Confidence Using CI/CD and Infrastructure As CodeIncrease App Confidence Using CI/CD and Infrastructure As Code
Increase App Confidence Using CI/CD and Infrastructure As Code
DigitalOcean
 
Build a Tech Brand During Covid in Emerging Tech Ecosystems
Build a Tech Brand During Covid in Emerging Tech EcosystemsBuild a Tech Brand During Covid in Emerging Tech Ecosystems
Build a Tech Brand During Covid in Emerging Tech Ecosystems
DigitalOcean
 
Sailing Through a Sea of CMS: Build and Extend APIs Faster With Strapi
Sailing Through a Sea of CMS: Build and Extend APIs Faster With StrapiSailing Through a Sea of CMS: Build and Extend APIs Faster With Strapi
Sailing Through a Sea of CMS: Build and Extend APIs Faster With Strapi
DigitalOcean
 
Doing E-commerce Right – Magento on DigitalOcean
Doing E-commerce Right – Magento on DigitalOceanDoing E-commerce Right – Magento on DigitalOcean
Doing E-commerce Right – Magento on DigitalOcean
DigitalOcean
 
Headless E-commerce That People Love
Headless E-commerce That People LoveHeadless E-commerce That People Love
Headless E-commerce That People Love
DigitalOcean
 
The Cloud Hosting Revolution Creates Opportunities for Your Business
The Cloud Hosting Revolution Creates Opportunities for Your BusinessThe Cloud Hosting Revolution Creates Opportunities for Your Business
The Cloud Hosting Revolution Creates Opportunities for Your Business
DigitalOcean
 
Build, Deploy, and Scale Your First Web App Using DigitalOcean App Platform
Build, Deploy, and Scale Your First Web App Using DigitalOcean App PlatformBuild, Deploy, and Scale Your First Web App Using DigitalOcean App Platform
Build, Deploy, and Scale Your First Web App Using DigitalOcean App Platform
DigitalOcean
 
Effective Kubernetes Onboarding
Effective Kubernetes OnboardingEffective Kubernetes Onboarding
Effective Kubernetes Onboarding
DigitalOcean
 
Creating Inclusive Learning Experiences
Creating Inclusive Learning ExperiencesCreating Inclusive Learning Experiences
Creating Inclusive Learning Experiences
DigitalOcean
 
Kubernetes for Beginners
Kubernetes for BeginnersKubernetes for Beginners
Kubernetes for Beginners
DigitalOcean
 
Command-line Your Way to PaaS Productivity With DigitalOcean App Platform
Command-line Your Way to PaaS Productivity With DigitalOcean App PlatformCommand-line Your Way to PaaS Productivity With DigitalOcean App Platform
Command-line Your Way to PaaS Productivity With DigitalOcean App Platform
DigitalOcean
 
Kubernetes: Beyond Baby Steps
Kubernetes: Beyond Baby StepsKubernetes: Beyond Baby Steps
Kubernetes: Beyond Baby Steps
DigitalOcean
 
How to Leverage Go for Your Networking Needs
How to Leverage Go for Your Networking NeedsHow to Leverage Go for Your Networking Needs
How to Leverage Go for Your Networking Needs
DigitalOcean
 
Secrets to Building & Scaling SRE Teams
Secrets to Building & Scaling SRE TeamsSecrets to Building & Scaling SRE Teams
Secrets to Building & Scaling SRE Teams
DigitalOcean
 
Deploying to DigitalOcean With GitHub Actions
Deploying to DigitalOcean With GitHub ActionsDeploying to DigitalOcean With GitHub Actions
Deploying to DigitalOcean With GitHub Actions
DigitalOcean
 
Building an Observability Platform in 389 Difficult Steps
Building an Observability Platform in 389 Difficult StepsBuilding an Observability Platform in 389 Difficult Steps
Building an Observability Platform in 389 Difficult Steps
DigitalOcean
 
Doing This Cloud Thing Right – a Lap Around DigitalOcean Products and a Roadm...
Doing This Cloud Thing Right – a Lap Around DigitalOcean Products and a Roadm...Doing This Cloud Thing Right – a Lap Around DigitalOcean Products and a Roadm...
Doing This Cloud Thing Right – a Lap Around DigitalOcean Products and a Roadm...
DigitalOcean
 
Developer Burnout: Yes, You Can Improve Your Team's Wellness
Developer Burnout: Yes, You Can Improve Your Team's WellnessDeveloper Burnout: Yes, You Can Improve Your Team's Wellness
Developer Burnout: Yes, You Can Improve Your Team's Wellness
DigitalOcean
 
Ad

Recently uploaded (20)

Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AIScaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
danshalev
 
Expand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchangeExpand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchange
Fexle Services Pvt. Ltd.
 
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Lionel Briand
 
Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)
Allon Mureinik
 
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
 
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
 
Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025
kashifyounis067
 
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
 
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdfMicrosoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
TechSoup
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Andre Hora
 
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
 
Solidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license codeSolidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license code
aneelaramzan63
 
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Ranjan Baisak
 
FL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full VersionFL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full Version
tahirabibi60507
 
Automation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath CertificateAutomation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath Certificate
VICTOR MAESTRE RAMIREZ
 
Douwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License codeDouwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License code
aneelaramzan63
 
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software DevelopmentSecure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Shubham Joshi
 
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
 
Revolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptxRevolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptx
nidhisingh691197
 
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AIScaling GraphRAG:  Efficient Knowledge Retrieval for Enterprise AI
Scaling GraphRAG: Efficient Knowledge Retrieval for Enterprise AI
danshalev
 
Expand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchangeExpand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchange
Fexle Services Pvt. Ltd.
 
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Requirements in Engineering AI- Enabled Systems: Open Problems and Safe AI Sy...
Lionel Briand
 
Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)Who Watches the Watchmen (SciFiDevCon 2025)
Who Watches the Watchmen (SciFiDevCon 2025)
Allon Mureinik
 
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
 
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
 
Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025Adobe Master Collection CC Crack Advance Version 2025
Adobe Master Collection CC Crack Advance Version 2025
kashifyounis067
 
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
 
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdfMicrosoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
Microsoft AI Nonprofit Use Cases and Live Demo_2025.04.30.pdf
TechSoup
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Exceptional Behaviors: How Frequently Are They Tested? (AST 2025)
Andre Hora
 
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
 
Solidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license codeSolidworks Crack 2025 latest new + license code
Solidworks Crack 2025 latest new + license code
aneelaramzan63
 
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Proactive Vulnerability Detection in Source Code Using Graph Neural Networks:...
Ranjan Baisak
 
FL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full VersionFL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full Version
tahirabibi60507
 
Automation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath CertificateAutomation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath Certificate
VICTOR MAESTRE RAMIREZ
 
Douwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License codeDouwan Crack 2025 new verson+ License code
Douwan Crack 2025 new verson+ License code
aneelaramzan63
 
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software DevelopmentSecure Test Infrastructure: The Backbone of Trustworthy Software Development
Secure Test Infrastructure: The Backbone of Trustworthy Software Development
Shubham Joshi
 
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
 
Revolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptxRevolutionizing Residential Wi-Fi PPT.pptx
Revolutionizing Residential Wi-Fi PPT.pptx
nidhisingh691197
 

Combining Cloud Native & PaaS: Building a Fully Managed Application Platform on Kubernetes

  • 2. Steven Normore, Engineering Manager, App Platform @ DigitalOcean
  • 3. DigitalOcean App Platform is a managed application PaaS that abstracts and encodes best practices of building and operating cloud-native web applications.
  • 4. PaaS vs IaaS Cloud-Native & 12Factor Apps Principles Benefits DigitalOcean App Platform Cloud-Native PaaS Cloud-Native Technologies Takeaways & Guidance Outline
  • 5. PaaS vs IaaS Virtualization Servers Storage Networking IaaS PaaS Applications Data Runtime Operating Systems
  • 6. Cloud-Native Applications Continuous Delivery Containers Microservices DevOps
  • 7. Continuous Delivery Release quickly, reliably, and frequently, with less risk.
  • 8. Containers Lightweight virtualization offering efficiency and reproducibility, while abstracting away the underlying operating system.
  • 9. Microservices Modular and loosely coupled services, communicating via API contracts, that can be deployed and scaled independently.
  • 10. DevOps Collaboration between software developers and operations with the goal of automating delivery of software and infrastructure changes.
  • 11. Cloud-Native: Benefits Faster time to market More agility Right-sized scale Collaboration Rapid recovery
  • 12. 12Factor Applications Declarative specifications for setup automation. Clean contract with the underlying operating system. Suitable for deployment on modern cloud platforms. Parity between development and production environments. Scale up without significant changes.
  • 13. 12Factor Principles Codebase Dependencies Config Backing services Build, release, run Stateless processes Port binding Concurrency Disposability Dev/prod parity Logs Admin processes
  • 14. Codebase Tracked in a revision control system such as Git. Deployments associated with specific code versions. Deployments are automatic.
  • 15. Dependencies Explicitly declare dependencies via a manifest. Isolate dependencies to avoid leaking implicit dependencies.
  • 16. Config Store config in the environment. Use environment variables.
  • 17. Backing Services Backing services treated as attached resources. Communicate through API contracts. Decoupled from specific instances.
  • 18. Build, Release, Run Strictly separate build and run stages. Ensures no changes can be made to code at runtime. Ensures runtimes are identical as processes scale.
  • 19. Stateless Processes Execute apps as one or more stateless processes. Data is persisted to a backing store. Allows processes to scale without syncing state.
  • 20. Port Binding Self-contained web services. Bind to the port passed into the environment variable $PORT. Avoids reliance on runtime injection of a web server.
  • 21. Concurrency Scale up via the process model. Prefer horizontal scaling over vertical scaling. Encourage breaking apps into modular components.
  • 22. Disposability Robustness with fast startup and graceful shutdown. Robustness against sudden crashes and failures. Facilitates fast elastic scaling. Rapid and robust code deployment and config changes.
  • 23. Dev/Prod Parity Keep development, staging, and production as similar as possible. Minimize time between coding and deploying. Code authors and deployers should be the same people.
  • 24. Logs Treat logs as event streams that you write to stdout. Apps are not responsible for routing or storing its logs. Facilitates self-contained apps and minimizes dependencies.
  • 25. Admin Processes Run admin and management tasks as one-off processes. Run against a specific release in a specific runtime environment. Admin code is shipped with application code.
  • 26. 12Factor Principles: Benefits Minimizes time and cost for new developers joining the project. Maximizes portability between execution environments. Removes the need for servers and systems administration. Enables continuous delivery. Optimizes for agility. Prioritizes performance and reliability.
  • 28. Declarative app specification. Deploy web services, static sites, background workers, and jobs. Integrate directly with DO managed databases. Continuous delivery from Git repositories. Auto-build with Buildpacks or bring your own Dockerfile. Built-in container health checks and zero-downtime deployments. Built-in global CDN with SSL for all domains. Built-in ingress with path-based routing. Scale up and out easily. Built-in monitoring, alerting, and logging. App Platform is a Cloud-Native PaaS
  • 29. Declarative app specification Declarative spec defines the app desired state. Clone, reuse, and share apps easily. Parity between staging and production environments.
  • 30. Deploy web services, static sites, background workers, and jobs Combine components to make a full app. Encourage modular and loosely coupled components. Enable components to scale independently. Support one-off admin and maintenance processes.
  • 31. Continuous delivery from Git repositories Build and deploy from a codebase with revision control. Build, release, run — decoupled build and run stages. Parity between environments through continuous delivery. Encourage DevOps by abstracting away the CI/CD infrastructure.
  • 32. Auto-build with Buildpacks or bring your own Dockerfile Build and run stateless containers. Encourage decoupled environment config. Parity between environments through shared build strategies. Get started quickly.
  • 33. Built-in container health checks and zero-downtime deployments Zero-downtime deployments using rolling updates. Support continuous delivery. Robustness against app failure and degradation.
  • 34. Built-in global CDN with SSL for all domains Global CDN for web services and static sites. SSL for all domains as the default. Bring your own custom domains. DDoS protection built-in.
  • 35. Built-in ingress with path-based routing Route to app services based on URL path behind the same domain. Load-balance across multiple instances of your services. Supports breaking app into modular services.
  • 36. Scale up and out easily Scale vertically or horizontally as needed. Scale components independently. Zero-downtime scaling with health checks.
  • 37. Built-in monitoring, alerting, and logging Logs from container stdout and stderr available via API. Insights and alerting for app containers and ingress. Apps are not responsible for managing its logs or metrics.
  • 38. App Platform is built on Cloud-Native technologies Running on a fleet of multi-tenant Kubernetes DOKS clusters. Workload isolation using gVisor. Network isolation using Cilium. Auto-build using Buildpacks and Kaniko. Global CDN with SSL for all using Cloudflare. Ingress with path-based routing using Istio and Envoy. App monitoring and alerting using Prometheus. App logging using Fluent Bit.
  • 39. Takeaways & Guidance Keep your app components stateless; local disk is ephemeral. Break your app into modular components. Inject config as environment variables. Services can bind to $PORT. Bring your own Dockerfile for more control.
  • 40. Thanks! Get in touch @snormore