SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Service-Level Objective for
Serverless Applications
Hai Duc Nguyen, Aleksander Slominski, and Lionel Villard
Background
Business objectives
- Market growth
- Maximize user
experiences
Feedback: Performance metrics, earning, etc.
Business improvement loop
Solution deployments
- Functionalities
- Latency
- Throughput
Encode business logics in terms of performance
indicators that can be measured and enforced by proper
system designs
- Software-level Agreements (SLA): performance
guarantee agreements defined by user and enforced
by the implementation
- Software-level Objective (SLO): key elements of SLA,
objectives that the implementation must achieve to
satisfy the SLA
2
SLO/SLA Example: Reefer Container Shipment
reference implementation*
*see https://ibm-cloud-architecture.github.io/refarch-kc/
• Business goal: customer
experience should not be
affected by delay
• Translate to SLA/SLO
- 99% of order placement < 2s
- No order placement lost
- Availability > 99.999%
- Capacity > 1M concurrent
orders
- Business logics change
- Market growth
- Response to competitors’
improvement
3
Can we translate the business goal to system
implementation fast?
Serverless (industry perspective)
• According to Cloud Native Computing Foundation*: “Serverless computing refers to the concept of
building and running applications that do not require server management. It describes a finer-
grained deployment model where applications, bundled as one or more functions, are uploaded to
a platform and then executed, scaled, and billed in response to the exact demand needed at the
moment”
* https://www.cncf.io/blog/2018/02/14/cncf-takes-first-step-towards-serverless-computing/
Time
Workload
Serverless
Allocation
Cost
- Autoscaling: dynamically add/remove
resources according to workload, scale-to-
zero
- Truly pay-as-you-go: only pay for function
execution time with fine-grain pricing (per
100ms)
- Detach resource management from
software development/maintenance
process
- Speed up software evolution
4
Serverless Implementation
Kubernetes is “an open-source system for automating
deployment, scaling, and management of containerized
applications”*
• Become the de facto standard platform for container orchestration.
• Market adoption is strong: 80% of companies used Kubernetes in
some forms in 2019, and the number is subjected to increase***
Knative is “an open source community project which adds
components for deploying, running, and managing serverless,
cloud native applications to Kubernetes”**.
* https://kubernetes.io
** https://www.redhat.com/en/topics/microservices/what-is-knative
*** Kubernetes Ecosystem, https://thenewstack.io/ebooks/kubernetes/state-of-kubernetes-ecosystem-second-edition-2020/
5
Example: handling a new shipment order
Preprocess
Find
container
Schedule
shipment
New order Response
𝑓
1. Submit
2. Establish
Knative
Kubernetes
4. Invoke
3. Subscribe
𝑓
5. Publish 6. Trigger
Container Container
𝑓 Kafka
Kafka
Container
6
Why Serverless SLO?
• In Serverless, it is order of magnitude faster to translate among
business logics and system designs
• Zero deployment/maintenance effort
• New way of utilizing resources
• Finer grain resource management  truly pay-as-you-go
• High flexibility  more rooms for resource management optimization
• Spatial: stateless
• Temporal: short execution time
 Potential way to quickly define and enforce SLOs
7
Experiment setup for serverless sequence*
100ms 100ms 100ms
…
- Periodic bursts
- Constant ramp-up, 4 orders per sec2
- Limited rate, up to 120 orders per sec
Workload (Input)
Preprocess
Find
container
Schedule
shipment
New order Response
forward-1 Kafka Kafkaforward-2 forward-3 Output
System specs:
- Knative v0.15.1 over Kubernetes v1.18.2 supported by KinD**
- Events are transmitted through Kafka v2.5.0
- 12 CPU, 48 GB Memory and 256GB SSD
*Script available at https://github.com/ngduchai/event-driven-apps
**KinD helps deploying Kubernetes cluster over local computer, see https://kind.sigs.k8s.io
8
Invocation Overhead of forward-1
• Scaling delay: Serverless framework need time to detect workload changes and
schedule resources accordingly
• Cold start: It takes time to allocate and initialize new function sandboxes
Latency distributionDemand vs. System capacity9
Autoscaler behaviors over the Sequence
Scale-up delay propagation Latency delay propagation
- Serverless platform is not aware of the sequence topology
- The overhead is amplified as computation propagates over the topology
10
Problem and Approach
• Can we leverage the serverless model to define and enforce a new set
of SLA/SLO to support fast translation from business logic to
application solutions?
SLO EnforcerBusiness + Application
Logics
Application + SLO
Description
Workload
1. Define 2. Deploy
5. Config
3. Run
4. Feedback
with perf.
metrics
6. Evaluate
11
Application Description: Open Application
Model (OAM)
• “Open Application Model (OAM) is a runtime-agnostic specification for defining
cloud native applications and enable building application-centric platforms by
natural. Focused on application rather than container or orchestrator, Open
Application Model brings modular, extensible, and portable design for building
application centric platforms on any runtime systems like Kubernetes, cloud, or
IoT devices.” *
• Provide for translating business goals to application design and application description,
including
• Computation components (e.g. Micro-services)
• Topology
• Deployment environment
• We extend OAM for defining and enforcing SLO by
• Adding serverless (Knative deployment) description support
• Adding SLO description
*OAM see https://github.com/oam-dev/spec
12
SLO Description
• As long as
• input rate < 100 rps:
• Ramp-up < 10 req/sec*sec
• Guarantee:
• 95th latency < 1000ms
• 400ms <= Mean latency <= 600ms
• Stddev latency <= 200
input output
Per-request Pricing
End-to-end Latency Earning ($)
< 600 0.00002
< 1000 0.00001
Otherwise 0
Translate to SLO
Add to Blueprint
(slodesc.yaml)
13
Control Invocation Overhead with Knative
• Cold start: multiplex
multiple invocation into big
pods (e.g. containers) to
reduce # cold starts
• Scaling delay: reserve extra
resource to buy time when
workload surges
14
Note: 400m+1 = use pod size of 400m with
reservation = 400m (1 pod)
Topology Awareness Configuration with
Knative
• Select the right pod size • Select the right reservation
Increasing pod size doesn’t always
improve concurrency significantly
Increasing workflow size increases the
per-component deployment cost
15
Demonstration
• Naïve serverless vs. Serverless + SLO enforcement
• Reuse the previous workload, application logics, and system setup
• SLO: as long as input rate < 120 order per sec:
• 95th of end-to-end latency < 1500ms
• Recorded Videos
• LINK TO BE ADDED
16
Highlights (forward-3)
17
Serverless Serverless +
SLO enforcement
Results: Latency distribution
Serverless deployment Serverless + SLO enforcer deployment
Extremely high latency due to scaling lag
and topology unawareness
18
SLO Enforcer successfully meet SLO
requirements by choosing right pod size
and reservation
Results: Earning
• Cost is calculated based on IBM
container pricing*, with 0.000034
USD/Second/Core
* https://cloud.ibm.com/kubernetes/catalog/about
Per-request Icome
End-to-end Latency Income ($)
< 500 0.0000012
< 1000 0.0000011
< 1500 0.000001
Otherwise 0
19
SLO Enforcer meet the SLO at reasonably low
cost, thereby creates high earning, satisfying
the business goal.
Related Work
• Handling invocation overhead
• Cold start: SAND (ATC18), SOCK (ATC18), Catalyzer (ASPLOS20)
• Scaling: Shadrad et. al. (ATC’20)
• Per-function optimization, no topology support
• Topology-aware Deployment for Serverless: IBM Composer, AWS Step
Function
• Simple topology (sequence + parallel), no performance guarantee
• Performance Guarantee for Serverless: Real-time Serverless (WoSC19)
• Rate guarantee but no topology support
20
Conclusion and Future Vision
• Serverless opens opportunities to quickly build and adjust software
solution to business goals. But many challenges arise
• Scaling overhead
• Lack of topology awareness
• We propose an SLO Serverless interface to describe and enforce
business goals in terms of SLOs
• Long-term vision
• Support more complicated workload topologies
• Efficient SLO enforcement (smarter metrics selection, ML approaches, etc.)
• Generic mechanism for all serverless platforms (not just Knative)
21
Coming soon…
• Will be available soon
• Blog post
• Demonstration scripts
• … and slides, demo recording and talk recording posted later after the
talk
22
Thank you!
23
Backup slides
24
𝑓
𝑓
𝑓
𝑓
𝑓
𝑓
𝑓
…
New orders
Valid?
Yes
No
ReturnInspect
Find voyages
Find container
Workload
Generator
Order 𝑓
AllocatedOrder
RejectedOrder
Workload
Observer
Find containers
for an order
Supply chain from manufacturer to retailer
The Reality
25
Workload
Generator
Order 𝑓
AllocatedOrder
RejectedOrder
Workload
Observer
Find containers
for an order
Workload
Generator
Order 𝑓
Workload
Generator
𝑓
Workload
Generator
Empty
26

Weitere ähnliche Inhalte

Was ist angesagt?

Deploying to and Configuring WebSphere Application Server with UrbanCode Deploy
Deploying to and Configuring WebSphere Application Server with UrbanCode DeployDeploying to and Configuring WebSphere Application Server with UrbanCode Deploy
Deploying to and Configuring WebSphere Application Server with UrbanCode DeployClaudia Ring
 
IBM InterConnect 2015 - IIB in the Cloud
IBM InterConnect 2015 - IIB in the CloudIBM InterConnect 2015 - IIB in the Cloud
IBM InterConnect 2015 - IIB in the CloudAndrew Coleman
 
DevOps & Continuous Test for IIB and IBM MQ
DevOps & Continuous Test for IIB and IBM MQDevOps & Continuous Test for IIB and IBM MQ
DevOps & Continuous Test for IIB and IBM MQStuart Feasey
 
Delivering Cloud Native Batch Solutions - Dodd Pfeffer
Delivering Cloud Native Batch Solutions - Dodd PfefferDelivering Cloud Native Batch Solutions - Dodd Pfeffer
Delivering Cloud Native Batch Solutions - Dodd PfefferVMware Tanzu
 
Creating Microservices Application with IBM Cloud Private (ICP) - ICP Archite...
Creating Microservices Application with IBM Cloud Private (ICP) - ICP Archite...Creating Microservices Application with IBM Cloud Private (ICP) - ICP Archite...
Creating Microservices Application with IBM Cloud Private (ICP) - ICP Archite...PT Datacomm Diangraha
 
IBM Datapower Gateways - Devops with UrbanCode Deploy
IBM Datapower Gateways - Devops with UrbanCode DeployIBM Datapower Gateways - Devops with UrbanCode Deploy
IBM Datapower Gateways - Devops with UrbanCode DeployJared Putman
 
SaaS company in north america
SaaS company in north americaSaaS company in north america
SaaS company in north americaGabe Akisanmi
 
SAP Host Agent x509 authentication
SAP Host Agent x509 authenticationSAP Host Agent x509 authentication
SAP Host Agent x509 authenticationAliter Consulting
 
Building a PaaS Platform like Bluemix on OpenStack
Building a PaaS Platform like Bluemix on OpenStackBuilding a PaaS Platform like Bluemix on OpenStack
Building a PaaS Platform like Bluemix on OpenStackAnimesh Singh
 
Summit 2013 spring rob hirschfeld migrations v1
Summit 2013 spring rob hirschfeld migrations v1Summit 2013 spring rob hirschfeld migrations v1
Summit 2013 spring rob hirschfeld migrations v1rhirschfeld
 
Patterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to KubernetesPatterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to KubernetesJosef Adersberger
 
TechTalk_Cloud Performance Testing_0.6
TechTalk_Cloud Performance Testing_0.6TechTalk_Cloud Performance Testing_0.6
TechTalk_Cloud Performance Testing_0.6Sravanthi N
 
SAP TechEd 2013 session Tec118 managing your-environment
SAP TechEd 2013 session Tec118 managing your-environmentSAP TechEd 2013 session Tec118 managing your-environment
SAP TechEd 2013 session Tec118 managing your-environmentChris Kernaghan
 
VMworld 2015: Day to Day Automation of VMware Products to Increase Productivi...
VMworld 2015: Day to Day Automation of VMware Products to Increase Productivi...VMworld 2015: Day to Day Automation of VMware Products to Increase Productivi...
VMworld 2015: Day to Day Automation of VMware Products to Increase Productivi...VMworld
 
Whats New in Integration What's New in IBM Integration Bus and IIB on Cloud
Whats New in Integration What's New in IBM Integration Bus and IIB on Cloud Whats New in Integration What's New in IBM Integration Bus and IIB on Cloud
Whats New in Integration What's New in IBM Integration Bus and IIB on Cloud Rob Convery
 
[NGINX Webinar Forum] Tune health check parameter to reduce app down time slide
[NGINX Webinar Forum] Tune health check parameter to reduce app down time slide[NGINX Webinar Forum] Tune health check parameter to reduce app down time slide
[NGINX Webinar Forum] Tune health check parameter to reduce app down time slideSupachai Jaturaprom
 
Introduction to Microservices and Cloud Native Application Architecture
Introduction to Microservices and Cloud Native Application ArchitectureIntroduction to Microservices and Cloud Native Application Architecture
Introduction to Microservices and Cloud Native Application ArchitectureDavid Currie
 
Serena Mainframe VUG: What's new in ChangeMan ZMF 8.1
Serena Mainframe VUG: What's new in ChangeMan ZMF 8.1Serena Mainframe VUG: What's new in ChangeMan ZMF 8.1
Serena Mainframe VUG: What's new in ChangeMan ZMF 8.1Serena Software
 

Was ist angesagt? (20)

Deploying to and Configuring WebSphere Application Server with UrbanCode Deploy
Deploying to and Configuring WebSphere Application Server with UrbanCode DeployDeploying to and Configuring WebSphere Application Server with UrbanCode Deploy
Deploying to and Configuring WebSphere Application Server with UrbanCode Deploy
 
IBM InterConnect 2015 - IIB in the Cloud
IBM InterConnect 2015 - IIB in the CloudIBM InterConnect 2015 - IIB in the Cloud
IBM InterConnect 2015 - IIB in the Cloud
 
DevOps & Continuous Test for IIB and IBM MQ
DevOps & Continuous Test for IIB and IBM MQDevOps & Continuous Test for IIB and IBM MQ
DevOps & Continuous Test for IIB and IBM MQ
 
Delivering Cloud Native Batch Solutions - Dodd Pfeffer
Delivering Cloud Native Batch Solutions - Dodd PfefferDelivering Cloud Native Batch Solutions - Dodd Pfeffer
Delivering Cloud Native Batch Solutions - Dodd Pfeffer
 
Creating Microservices Application with IBM Cloud Private (ICP) - ICP Archite...
Creating Microservices Application with IBM Cloud Private (ICP) - ICP Archite...Creating Microservices Application with IBM Cloud Private (ICP) - ICP Archite...
Creating Microservices Application with IBM Cloud Private (ICP) - ICP Archite...
 
IBM Datapower Gateways - Devops with UrbanCode Deploy
IBM Datapower Gateways - Devops with UrbanCode DeployIBM Datapower Gateways - Devops with UrbanCode Deploy
IBM Datapower Gateways - Devops with UrbanCode Deploy
 
SaaS company in north america
SaaS company in north americaSaaS company in north america
SaaS company in north america
 
SAP Host Agent x509 authentication
SAP Host Agent x509 authenticationSAP Host Agent x509 authentication
SAP Host Agent x509 authentication
 
Building a PaaS Platform like Bluemix on OpenStack
Building a PaaS Platform like Bluemix on OpenStackBuilding a PaaS Platform like Bluemix on OpenStack
Building a PaaS Platform like Bluemix on OpenStack
 
Summit 2013 spring rob hirschfeld migrations v1
Summit 2013 spring rob hirschfeld migrations v1Summit 2013 spring rob hirschfeld migrations v1
Summit 2013 spring rob hirschfeld migrations v1
 
Patterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to KubernetesPatterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to Kubernetes
 
TechTalk_Cloud Performance Testing_0.6
TechTalk_Cloud Performance Testing_0.6TechTalk_Cloud Performance Testing_0.6
TechTalk_Cloud Performance Testing_0.6
 
SAP TechEd 2013 session Tec118 managing your-environment
SAP TechEd 2013 session Tec118 managing your-environmentSAP TechEd 2013 session Tec118 managing your-environment
SAP TechEd 2013 session Tec118 managing your-environment
 
VMworld 2015: Day to Day Automation of VMware Products to Increase Productivi...
VMworld 2015: Day to Day Automation of VMware Products to Increase Productivi...VMworld 2015: Day to Day Automation of VMware Products to Increase Productivi...
VMworld 2015: Day to Day Automation of VMware Products to Increase Productivi...
 
Serverless design with Fn project
Serverless design with Fn projectServerless design with Fn project
Serverless design with Fn project
 
Whats New in Integration What's New in IBM Integration Bus and IIB on Cloud
Whats New in Integration What's New in IBM Integration Bus and IIB on Cloud Whats New in Integration What's New in IBM Integration Bus and IIB on Cloud
Whats New in Integration What's New in IBM Integration Bus and IIB on Cloud
 
Measure() or die()
Measure() or die()Measure() or die()
Measure() or die()
 
[NGINX Webinar Forum] Tune health check parameter to reduce app down time slide
[NGINX Webinar Forum] Tune health check parameter to reduce app down time slide[NGINX Webinar Forum] Tune health check parameter to reduce app down time slide
[NGINX Webinar Forum] Tune health check parameter to reduce app down time slide
 
Introduction to Microservices and Cloud Native Application Architecture
Introduction to Microservices and Cloud Native Application ArchitectureIntroduction to Microservices and Cloud Native Application Architecture
Introduction to Microservices and Cloud Native Application Architecture
 
Serena Mainframe VUG: What's new in ChangeMan ZMF 8.1
Serena Mainframe VUG: What's new in ChangeMan ZMF 8.1Serena Mainframe VUG: What's new in ChangeMan ZMF 8.1
Serena Mainframe VUG: What's new in ChangeMan ZMF 8.1
 

Ähnlich wie Service-Level Objective for Serverless Applications

Java Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the CloudJava Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the CloudMongoDB
 
VMWorld 2004 - Justifying the transition from Physical to Virtual
VMWorld 2004 - Justifying the transition from Physical to VirtualVMWorld 2004 - Justifying the transition from Physical to Virtual
VMWorld 2004 - Justifying the transition from Physical to VirtualDavid Kent
 
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
Edge 2016 Session 1886  Building your own docker container cloud on ibm power...Edge 2016 Session 1886  Building your own docker container cloud on ibm power...
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...Yong Feng
 
Cloudify 4.6 highlights webinar
Cloudify 4.6 highlights webinarCloudify 4.6 highlights webinar
Cloudify 4.6 highlights webinarCloudify Community
 
Cortex v5: Re-designed Re-engineered Re-launched
Cortex v5: Re-designed Re-engineered Re-launchedCortex v5: Re-designed Re-engineered Re-launched
Cortex v5: Re-designed Re-engineered Re-launchedCortex
 
Patterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to KubernetesPatterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to KubernetesQAware GmbH
 
OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...NETWAYS
 
IBM BPM off prem options
IBM BPM off prem options IBM BPM off prem options
IBM BPM off prem options sflynn073
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKSPhil Reay
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKSPhil Reay
 
Serverless: Market Overview and Investment Opportunities
Serverless: Market Overview and Investment OpportunitiesServerless: Market Overview and Investment Opportunities
Serverless: Market Overview and Investment OpportunitiesUnderscore VC
 
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...VMware Tanzu
 
How Automation And Intelligence Can Simplify Your High Availability
How Automation And Intelligence Can Simplify Your High AvailabilityHow Automation And Intelligence Can Simplify Your High Availability
How Automation And Intelligence Can Simplify Your High AvailabilityPrecisely
 
Developing scalable enterprise serverless applications on azure with .net
Developing scalable enterprise serverless applications on azure with .netDeveloping scalable enterprise serverless applications on azure with .net
Developing scalable enterprise serverless applications on azure with .netCallon Campbell
 
FInal Project - USMx CC605x Cloud Computing for Enterprises - Hugo Aquino
FInal Project - USMx CC605x Cloud Computing for Enterprises - Hugo AquinoFInal Project - USMx CC605x Cloud Computing for Enterprises - Hugo Aquino
FInal Project - USMx CC605x Cloud Computing for Enterprises - Hugo AquinoHugo Aquino
 
Perth DevOps Meetup - Introducing the IBM Innovation Lab - 12112015
Perth DevOps Meetup - Introducing the IBM Innovation Lab - 12112015Perth DevOps Meetup - Introducing the IBM Innovation Lab - 12112015
Perth DevOps Meetup - Introducing the IBM Innovation Lab - 12112015Christophe Lucas
 
Migrating from a monolith to microservices – is it worth it?
Migrating from a monolith to microservices – is it worth it?Migrating from a monolith to microservices – is it worth it?
Migrating from a monolith to microservices – is it worth it?Katherine Golovinova
 
Resume_Achhar_Kalia
Resume_Achhar_KaliaResume_Achhar_Kalia
Resume_Achhar_KaliaAchhar Kalia
 

Ähnlich wie Service-Level Objective for Serverless Applications (20)

Java Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the CloudJava Agile ALM: OTAP and DevOps in the Cloud
Java Agile ALM: OTAP and DevOps in the Cloud
 
VMWorld 2004 - Justifying the transition from Physical to Virtual
VMWorld 2004 - Justifying the transition from Physical to VirtualVMWorld 2004 - Justifying the transition from Physical to Virtual
VMWorld 2004 - Justifying the transition from Physical to Virtual
 
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
 
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
Edge 2016 Session 1886  Building your own docker container cloud on ibm power...Edge 2016 Session 1886  Building your own docker container cloud on ibm power...
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
 
Cloudify 4.6 highlights webinar
Cloudify 4.6 highlights webinarCloudify 4.6 highlights webinar
Cloudify 4.6 highlights webinar
 
Cortex v5: Re-designed Re-engineered Re-launched
Cortex v5: Re-designed Re-engineered Re-launchedCortex v5: Re-designed Re-engineered Re-launched
Cortex v5: Re-designed Re-engineered Re-launched
 
Patterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to KubernetesPatterns and Pains of Migrating Legacy Applications to Kubernetes
Patterns and Pains of Migrating Legacy Applications to Kubernetes
 
OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...OSDC 2018 | Three years running containers with Kubernetes in Production by T...
OSDC 2018 | Three years running containers with Kubernetes in Production by T...
 
IBM BPM off prem options
IBM BPM off prem options IBM BPM off prem options
IBM BPM off prem options
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKS
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKS
 
Serverless: Market Overview and Investment Opportunities
Serverless: Market Overview and Investment OpportunitiesServerless: Market Overview and Investment Opportunities
Serverless: Market Overview and Investment Opportunities
 
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
 
How Automation And Intelligence Can Simplify Your High Availability
How Automation And Intelligence Can Simplify Your High AvailabilityHow Automation And Intelligence Can Simplify Your High Availability
How Automation And Intelligence Can Simplify Your High Availability
 
Cloud Native Application Development
Cloud Native Application DevelopmentCloud Native Application Development
Cloud Native Application Development
 
Developing scalable enterprise serverless applications on azure with .net
Developing scalable enterprise serverless applications on azure with .netDeveloping scalable enterprise serverless applications on azure with .net
Developing scalable enterprise serverless applications on azure with .net
 
FInal Project - USMx CC605x Cloud Computing for Enterprises - Hugo Aquino
FInal Project - USMx CC605x Cloud Computing for Enterprises - Hugo AquinoFInal Project - USMx CC605x Cloud Computing for Enterprises - Hugo Aquino
FInal Project - USMx CC605x Cloud Computing for Enterprises - Hugo Aquino
 
Perth DevOps Meetup - Introducing the IBM Innovation Lab - 12112015
Perth DevOps Meetup - Introducing the IBM Innovation Lab - 12112015Perth DevOps Meetup - Introducing the IBM Innovation Lab - 12112015
Perth DevOps Meetup - Introducing the IBM Innovation Lab - 12112015
 
Migrating from a monolith to microservices – is it worth it?
Migrating from a monolith to microservices – is it worth it?Migrating from a monolith to microservices – is it worth it?
Migrating from a monolith to microservices – is it worth it?
 
Resume_Achhar_Kalia
Resume_Achhar_KaliaResume_Achhar_Kalia
Resume_Achhar_Kalia
 

Kürzlich hochgeladen

W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 

Kürzlich hochgeladen (20)

W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 

Service-Level Objective for Serverless Applications

  • 1. Service-Level Objective for Serverless Applications Hai Duc Nguyen, Aleksander Slominski, and Lionel Villard
  • 2. Background Business objectives - Market growth - Maximize user experiences Feedback: Performance metrics, earning, etc. Business improvement loop Solution deployments - Functionalities - Latency - Throughput Encode business logics in terms of performance indicators that can be measured and enforced by proper system designs - Software-level Agreements (SLA): performance guarantee agreements defined by user and enforced by the implementation - Software-level Objective (SLO): key elements of SLA, objectives that the implementation must achieve to satisfy the SLA 2
  • 3. SLO/SLA Example: Reefer Container Shipment reference implementation* *see https://ibm-cloud-architecture.github.io/refarch-kc/ • Business goal: customer experience should not be affected by delay • Translate to SLA/SLO - 99% of order placement < 2s - No order placement lost - Availability > 99.999% - Capacity > 1M concurrent orders - Business logics change - Market growth - Response to competitors’ improvement 3 Can we translate the business goal to system implementation fast?
  • 4. Serverless (industry perspective) • According to Cloud Native Computing Foundation*: “Serverless computing refers to the concept of building and running applications that do not require server management. It describes a finer- grained deployment model where applications, bundled as one or more functions, are uploaded to a platform and then executed, scaled, and billed in response to the exact demand needed at the moment” * https://www.cncf.io/blog/2018/02/14/cncf-takes-first-step-towards-serverless-computing/ Time Workload Serverless Allocation Cost - Autoscaling: dynamically add/remove resources according to workload, scale-to- zero - Truly pay-as-you-go: only pay for function execution time with fine-grain pricing (per 100ms) - Detach resource management from software development/maintenance process - Speed up software evolution 4
  • 5. Serverless Implementation Kubernetes is “an open-source system for automating deployment, scaling, and management of containerized applications”* • Become the de facto standard platform for container orchestration. • Market adoption is strong: 80% of companies used Kubernetes in some forms in 2019, and the number is subjected to increase*** Knative is “an open source community project which adds components for deploying, running, and managing serverless, cloud native applications to Kubernetes”**. * https://kubernetes.io ** https://www.redhat.com/en/topics/microservices/what-is-knative *** Kubernetes Ecosystem, https://thenewstack.io/ebooks/kubernetes/state-of-kubernetes-ecosystem-second-edition-2020/ 5
  • 6. Example: handling a new shipment order Preprocess Find container Schedule shipment New order Response 𝑓 1. Submit 2. Establish Knative Kubernetes 4. Invoke 3. Subscribe 𝑓 5. Publish 6. Trigger Container Container 𝑓 Kafka Kafka Container 6
  • 7. Why Serverless SLO? • In Serverless, it is order of magnitude faster to translate among business logics and system designs • Zero deployment/maintenance effort • New way of utilizing resources • Finer grain resource management  truly pay-as-you-go • High flexibility  more rooms for resource management optimization • Spatial: stateless • Temporal: short execution time  Potential way to quickly define and enforce SLOs 7
  • 8. Experiment setup for serverless sequence* 100ms 100ms 100ms … - Periodic bursts - Constant ramp-up, 4 orders per sec2 - Limited rate, up to 120 orders per sec Workload (Input) Preprocess Find container Schedule shipment New order Response forward-1 Kafka Kafkaforward-2 forward-3 Output System specs: - Knative v0.15.1 over Kubernetes v1.18.2 supported by KinD** - Events are transmitted through Kafka v2.5.0 - 12 CPU, 48 GB Memory and 256GB SSD *Script available at https://github.com/ngduchai/event-driven-apps **KinD helps deploying Kubernetes cluster over local computer, see https://kind.sigs.k8s.io 8
  • 9. Invocation Overhead of forward-1 • Scaling delay: Serverless framework need time to detect workload changes and schedule resources accordingly • Cold start: It takes time to allocate and initialize new function sandboxes Latency distributionDemand vs. System capacity9
  • 10. Autoscaler behaviors over the Sequence Scale-up delay propagation Latency delay propagation - Serverless platform is not aware of the sequence topology - The overhead is amplified as computation propagates over the topology 10
  • 11. Problem and Approach • Can we leverage the serverless model to define and enforce a new set of SLA/SLO to support fast translation from business logic to application solutions? SLO EnforcerBusiness + Application Logics Application + SLO Description Workload 1. Define 2. Deploy 5. Config 3. Run 4. Feedback with perf. metrics 6. Evaluate 11
  • 12. Application Description: Open Application Model (OAM) • “Open Application Model (OAM) is a runtime-agnostic specification for defining cloud native applications and enable building application-centric platforms by natural. Focused on application rather than container or orchestrator, Open Application Model brings modular, extensible, and portable design for building application centric platforms on any runtime systems like Kubernetes, cloud, or IoT devices.” * • Provide for translating business goals to application design and application description, including • Computation components (e.g. Micro-services) • Topology • Deployment environment • We extend OAM for defining and enforcing SLO by • Adding serverless (Knative deployment) description support • Adding SLO description *OAM see https://github.com/oam-dev/spec 12
  • 13. SLO Description • As long as • input rate < 100 rps: • Ramp-up < 10 req/sec*sec • Guarantee: • 95th latency < 1000ms • 400ms <= Mean latency <= 600ms • Stddev latency <= 200 input output Per-request Pricing End-to-end Latency Earning ($) < 600 0.00002 < 1000 0.00001 Otherwise 0 Translate to SLO Add to Blueprint (slodesc.yaml) 13
  • 14. Control Invocation Overhead with Knative • Cold start: multiplex multiple invocation into big pods (e.g. containers) to reduce # cold starts • Scaling delay: reserve extra resource to buy time when workload surges 14 Note: 400m+1 = use pod size of 400m with reservation = 400m (1 pod)
  • 15. Topology Awareness Configuration with Knative • Select the right pod size • Select the right reservation Increasing pod size doesn’t always improve concurrency significantly Increasing workflow size increases the per-component deployment cost 15
  • 16. Demonstration • Naïve serverless vs. Serverless + SLO enforcement • Reuse the previous workload, application logics, and system setup • SLO: as long as input rate < 120 order per sec: • 95th of end-to-end latency < 1500ms • Recorded Videos • LINK TO BE ADDED 16
  • 18. Results: Latency distribution Serverless deployment Serverless + SLO enforcer deployment Extremely high latency due to scaling lag and topology unawareness 18 SLO Enforcer successfully meet SLO requirements by choosing right pod size and reservation
  • 19. Results: Earning • Cost is calculated based on IBM container pricing*, with 0.000034 USD/Second/Core * https://cloud.ibm.com/kubernetes/catalog/about Per-request Icome End-to-end Latency Income ($) < 500 0.0000012 < 1000 0.0000011 < 1500 0.000001 Otherwise 0 19 SLO Enforcer meet the SLO at reasonably low cost, thereby creates high earning, satisfying the business goal.
  • 20. Related Work • Handling invocation overhead • Cold start: SAND (ATC18), SOCK (ATC18), Catalyzer (ASPLOS20) • Scaling: Shadrad et. al. (ATC’20) • Per-function optimization, no topology support • Topology-aware Deployment for Serverless: IBM Composer, AWS Step Function • Simple topology (sequence + parallel), no performance guarantee • Performance Guarantee for Serverless: Real-time Serverless (WoSC19) • Rate guarantee but no topology support 20
  • 21. Conclusion and Future Vision • Serverless opens opportunities to quickly build and adjust software solution to business goals. But many challenges arise • Scaling overhead • Lack of topology awareness • We propose an SLO Serverless interface to describe and enforce business goals in terms of SLOs • Long-term vision • Support more complicated workload topologies • Efficient SLO enforcement (smarter metrics selection, ML approaches, etc.) • Generic mechanism for all serverless platforms (not just Knative) 21
  • 22. Coming soon… • Will be available soon • Blog post • Demonstration scripts • … and slides, demo recording and talk recording posted later after the talk 22
  • 25. 𝑓 𝑓 𝑓 𝑓 𝑓 𝑓 𝑓 … New orders Valid? Yes No ReturnInspect Find voyages Find container Workload Generator Order 𝑓 AllocatedOrder RejectedOrder Workload Observer Find containers for an order Supply chain from manufacturer to retailer The Reality 25
  • 26. Workload Generator Order 𝑓 AllocatedOrder RejectedOrder Workload Observer Find containers for an order Workload Generator Order 𝑓 Workload Generator 𝑓 Workload Generator Empty 26