SlideShare a Scribd company logo
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

More Related Content

What's hot

Keeping Latency Low and Throughput High with Application-level Priority Manag...
Keeping Latency Low and Throughput High with Application-level Priority Manag...Keeping Latency Low and Throughput High with Application-level Priority Manag...
Keeping Latency Low and Throughput High with Application-level Priority Manag...
ScyllaDB
 
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
 

What's hot (18)

Keeping Latency Low and Throughput High with Application-level Priority Manag...
Keeping Latency Low and Throughput High with Application-level Priority Manag...Keeping Latency Low and Throughput High with Application-level Priority Manag...
Keeping Latency Low and Throughput High with Application-level Priority Manag...
 
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!
 
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...
 
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...
 
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...
 
Writing Rust Command Line Applications
Writing Rust Command Line ApplicationsWriting Rust Command Line Applications
Writing Rust Command Line Applications
 
InfluxDB & Kubernetes
InfluxDB & KubernetesInfluxDB & Kubernetes
InfluxDB & Kubernetes
 
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
 
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
 
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
 
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...
 
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: 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
 
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)
 
Monitoring kubernetes with prometheus
Monitoring kubernetes with prometheusMonitoring kubernetes with prometheus
Monitoring kubernetes with prometheus
 
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...
 
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...
 
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
 

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

ClearScale: Continuous Automation with Docker on AWS
ClearScale: Continuous Automation with Docker on AWSClearScale: Continuous Automation with Docker on AWS
ClearScale: Continuous Automation with Docker on AWS
Amazon Web Services
 
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
 
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
 
Adopting DevOps at Scale on AWS with VirtusaPolaris
Adopting DevOps at Scale on AWS with VirtusaPolarisAdopting DevOps at Scale on AWS with VirtusaPolaris
Adopting DevOps at Scale on AWS with VirtusaPolaris
Amazon Web Services
 
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
 
DCSF 19 Developing Apps with Containers, Functions and Cloud Services
DCSF 19 Developing Apps with Containers, Functions and Cloud ServicesDCSF 19 Developing Apps with Containers, Functions and Cloud Services
DCSF 19 Developing Apps with Containers, Functions and Cloud Services
Docker, Inc.
 

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

ClearScale: Continuous Automation with Docker on AWS
ClearScale: Continuous Automation with Docker on AWSClearScale: Continuous Automation with Docker on AWS
ClearScale: Continuous Automation with Docker on AWS
 
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
 
REAN Cloud DevOps Accelerators
REAN Cloud DevOps AcceleratorsREAN Cloud DevOps Accelerators
REAN Cloud DevOps Accelerators
 
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
 
Accelerating software delivery with AWS
Accelerating software delivery with AWSAccelerating software delivery with AWS
Accelerating software delivery with AWS
 
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
 
App Modernisation with Microsoft Azure
App Modernisation with Microsoft AzureApp Modernisation with Microsoft Azure
App Modernisation with Microsoft Azure
 
Cloud Native Ninja - kickoff.pdf
Cloud Native Ninja - kickoff.pdfCloud Native Ninja - kickoff.pdf
Cloud Native Ninja - kickoff.pdf
 
cloudtoolsandcomputingwithcloudsssss.pptx
cloudtoolsandcomputingwithcloudsssss.pptxcloudtoolsandcomputingwithcloudsssss.pptx
cloudtoolsandcomputingwithcloudsssss.pptx
 
POV - Practical Containerization
POV - Practical ContainerizationPOV - Practical Containerization
POV - Practical Containerization
 
Top devops solution providers
Top devops solution providersTop devops solution providers
Top devops solution providers
 
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...
 
WaveMaker
WaveMakerWaveMaker
WaveMaker
 
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
 
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
 
DevOps and BigData Analytics
DevOps and BigData Analytics DevOps and BigData Analytics
DevOps and BigData Analytics
 
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"
 
Adopting DevOps at Scale on AWS with VirtusaPolaris
Adopting DevOps at Scale on AWS with VirtusaPolarisAdopting DevOps at Scale on AWS with VirtusaPolaris
Adopting DevOps at Scale on AWS with VirtusaPolaris
 
Cloud Native Application Development Guide – 2023
Cloud Native Application Development Guide – 2023Cloud Native Application Development Guide – 2023
Cloud Native Application Development Guide – 2023
 
DCSF 19 Developing Apps with Containers, Functions and Cloud Services
DCSF 19 Developing Apps with Containers, Functions and Cloud ServicesDCSF 19 Developing Apps with Containers, Functions and Cloud Services
DCSF 19 Developing Apps with Containers, Functions and Cloud Services
 

More from 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
 

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
 
Benefits of Managed Databases
Benefits of Managed DatabasesBenefits of Managed Databases
Benefits of Managed Databases
 
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
 
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
 
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
 
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
 
Headless E-commerce That People Love
Headless E-commerce That People LoveHeadless E-commerce That People Love
Headless E-commerce That People Love
 
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
 
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
 
Effective Kubernetes Onboarding
Effective Kubernetes OnboardingEffective Kubernetes Onboarding
Effective Kubernetes Onboarding
 
Creating Inclusive Learning Experiences
Creating Inclusive Learning ExperiencesCreating Inclusive Learning Experiences
Creating Inclusive Learning Experiences
 
Kubernetes for Beginners
Kubernetes for BeginnersKubernetes for Beginners
Kubernetes for Beginners
 
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
 
Kubernetes: Beyond Baby Steps
Kubernetes: Beyond Baby StepsKubernetes: Beyond Baby Steps
Kubernetes: Beyond Baby Steps
 
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
 
Secrets to Building & Scaling SRE Teams
Secrets to Building & Scaling SRE TeamsSecrets to Building & Scaling SRE Teams
Secrets to Building & Scaling SRE Teams
 
Deploying to DigitalOcean With GitHub Actions
Deploying to DigitalOcean With GitHub ActionsDeploying to DigitalOcean With GitHub Actions
Deploying to DigitalOcean With GitHub Actions
 
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
 
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...
 
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
 

Recently uploaded

Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
AMB-Review
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
Globus
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
vrstrong314
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
Globus
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Natan Silnitsky
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus
 
Graphic Design Crash Course for beginners
Graphic Design Crash Course for beginnersGraphic Design Crash Course for beginners
Graphic Design Crash Course for beginners
e20449
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
informapgpstrackings
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
Ortus Solutions, Corp
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
Cyanic lab
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
Fermin Galan
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
Globus
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
Tendenci - The Open Source AMS (Association Management Software)
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
WSO2
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 

Recently uploaded (20)

Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdfDominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
Dominate Social Media with TubeTrivia AI’s Addictive Quiz Videos.pdf
 
How to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good PracticesHow to Position Your Globus Data Portal for Success Ten Good Practices
How to Position Your Globus Data Portal for Success Ten Good Practices
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.ILBeyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
Beyond Event Sourcing - Embracing CRUD for Wix Platform - Java.IL
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
Graphic Design Crash Course for beginners
Graphic Design Crash Course for beginnersGraphic Design Crash Course for beginners
Graphic Design Crash Course for beginners
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
Field Employee Tracking System| MiTrack App| Best Employee Tracking Solution|...
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604Orion Context Broker introduction 20240604
Orion Context Broker introduction 20240604
 
GlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote sessionGlobusWorld 2024 Opening Keynote session
GlobusWorld 2024 Opening Keynote session
 
Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024Globus Compute wth IRI Workflows - GlobusWorld 2024
Globus Compute wth IRI Workflows - GlobusWorld 2024
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 

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

  • 1.
  • 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