SlideShare a Scribd company logo
1 of 33
Download to read offline
Goingnew wayswith Interfaces
basedonOpenFaaS
Redefining Open Platform
Talks4Nerds
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Who am I ?
 Simon Pelczer
 Software Engineer @ LivePerson
 OpenFaaS Contributor
 Bachelor of Science (HS Mannheim)
 Distributed Applications
 Kubernetes / Docker
 Github:Templum
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Agenda
 What is this FaaS thingy ?
 What exactly is OpenFaaS ?
 Difference between OpenFaaS & AWS Lambda
 How does OpenFaaS work?
 OpenFaaS in Action
 Example Usecase: LivePerson FaaS
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
What is this FaaS thingy ?
Talks4Nerds
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
What is this
FaaS thingy ?
Hardware
Virtualization
OS
Runtime
Application
IaaS CaaS PaaS FaaS
Hardware
Virtualization
OS
Runtime
Application
Hardware
Virtualization
OS
Hardware
Virtualization
OS
Code
Code
Container
Runtime
Application
Code
Container
Runtime
Application
Functions
Container
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
FaaS in a
Nutshell
Function Trigger Stateless Scalable
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
What isOpenFaaS ?
Talks4Nerds
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
OpenFaaS is …
 A FaaS Framework that runs on
top of Docker Swarm or
Kubernetes
 Founded by Alex Ellis (Started in
December 2016)
 Written in Golang
 Licensed under MIT
Configuration Code
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Talks4Nerds
AWS Lambda OpenFaaS
Differences
between
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Criteria /Aspects
Supported
Programming
Languages
Usage of 3. Party
libraries within
the function
Limitation /
Particularities
Pricing Model
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
AWS
Lambda
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Supported
Programming
Languages
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Limitation /
Particularities
 The amount of parallel running lambda instances is limited
 Per Account
 Per Zone
 There are limits for code and environment variables
 Max execution time is 5 minutes
 It‘s not possible to debug the application locally in an environment
that matches the later production environment
 For the invoking side, there is a difference between async / sync
Lambda when approaching the limit
 Sync: Caller has to perform the retry and receives 429
 Async:Amazon will perform retries up to 6 hours
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Pricing Model
 Based on Memory +
ComputationTime
 CPU is indirectly based
on RAM := More RAM
=> More CPU
 Hidden Cost of AWS Lambda
Source: https://medium.com/@amiram_26122/the-hidden-costs-of-serverless-6ced7844780b
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
OpenFaaS
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Supported
Programming
Languages
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Limitation /
Particularities
 Auto Scaling works default based on the number of incoming
requests
 You can replace the built-in autoscaling by native implemantation
 Maintenance on Open FaaS has to be done manually including
protection
 Out of the box in comes with basic auth
 Root Filesystem for Functions is available but not the default
 Using the HTTP basedWatchdog you can hold connection pools,
reducing the impact on your database
 Supports both Kubernetes and Docker Swarm
 It‘s possible to test the function locally in a similar environment
 Existing Monitoring Setups can be reused
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Pricing Model
On-Premise:
 Costs are based on hardware costs (as expected)
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
How doesOpenFaaS
work?
Talks4Nerds
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Deployment
of an
Function
OpenFaaS
CLI
OpenFaaS
UI
OpenFaaS
Rest API
OpenFaaS
Gateway
Faas-
Netes
KubernetesCluster
Deployment
Service
Deployment of a Function in a Kubernetes Setup
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Invocation
of an
Function
OpenFaaS
CLI
OpenFaaS
UI
OpenFaaS
Rest API
OpenFaaS
Gateway
Faas-
Netes
Function A
Function B
2. If direct_functions = true
1. If direct_functions = false
Using
DNS Name
Invocation of Functions in a Kubernetes Setup
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
STDIO
vs
HTTP
as
Function mode
Watchdog
HTTP 8080
Function
Handler
Watchdog
HTTP 8080
Function
Handler
Forked
Process
STDINSTDOUT Forward
Caller Caller
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Autoscaling
Prometheus
OpenFaaS
Gateway
Alertmanager
Function A
OpenFaaS
UI
Invoking
Forwarding
Polling Invocations
for Function A Trigger Scaling
Alert Rule
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Autoscaling
 ConfigurationOptions on Function-Level:
 com.openfaas.scale.min (default 1)
 com.openfaas.scale.max (default 20)
 com.openfaas.scale.factor (default 20) [0-100]
 ConfigurationOptions on OpenFaaS-Level:
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
OpenFaaS
Demo
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
ExampleUsecase:
LivePerson FaaS
Talks4Nerds
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Whatdoes
LivePerson
do?
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Theneedto
adaptthe
platform
The customer wants to move fast and enhance the platform with own
customizations
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
What is the
problem?
 Change Requests from customers rise faster then R&D can deliver
 The process for an Enhancement Request is complicated and not
straight forward
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
What do we
want to
achieve?
 Reduce the time to market for a customization
 Reduce the complexity of enhancing the platform
 Provide a platform which can also be used internally
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
How do we
achieve it?
 A (web-based) UI that allows the creation of functions for selected
events within Live Engage
 Building & Deployment of functions powered by Docker &
OpenFaaS
 Execution of functions on OpenFaaS
 Isolated
 Limited Ressources
 Limited FS / User Privileges
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Architecture
Legend:
Orange = Deployment
Red = Sync Invocation
Blue= Async Inovcation
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018
Thank you for your
attention
Talks4Nerds
Simon Pelczer | Software Engineer @ LivePerson 12.11.2018

More Related Content

What's hot

What's hot (20)

AWS Fargate AWS UG Dormund 2019 Kazulkin Jung
AWS Fargate AWS UG Dormund 2019 Kazulkin JungAWS Fargate AWS UG Dormund 2019 Kazulkin Jung
AWS Fargate AWS UG Dormund 2019 Kazulkin Jung
 
Killing technical debt and reducing costs with Docker
Killing technical debt and reducing costs with DockerKilling technical debt and reducing costs with Docker
Killing technical debt and reducing costs with Docker
 
(DEV309) From Asgard to Zuul: How Netflix’s Proven Open Source Tools Can Help...
(DEV309) From Asgard to Zuul: How Netflix’s Proven Open Source Tools Can Help...(DEV309) From Asgard to Zuul: How Netflix’s Proven Open Source Tools Can Help...
(DEV309) From Asgard to Zuul: How Netflix’s Proven Open Source Tools Can Help...
 
(PFC304) Effective Interprocess Communications in the Cloud: The Pros and Con...
(PFC304) Effective Interprocess Communications in the Cloud: The Pros and Con...(PFC304) Effective Interprocess Communications in the Cloud: The Pros and Con...
(PFC304) Effective Interprocess Communications in the Cloud: The Pros and Con...
 
Automation at the Edge
Automation at the EdgeAutomation at the Edge
Automation at the Edge
 
JCConf 2020 Observing in Microservices
JCConf 2020 Observing in MicroservicesJCConf 2020 Observing in Microservices
JCConf 2020 Observing in Microservices
 
The Ultimate Dependency Manager Shootout (QCon NY 2014)
The Ultimate Dependency Manager Shootout (QCon NY 2014)The Ultimate Dependency Manager Shootout (QCon NY 2014)
The Ultimate Dependency Manager Shootout (QCon NY 2014)
 
Kubernetes Networking in Amazon EKS (CON412) - AWS re:Invent 2018
Kubernetes Networking in Amazon EKS (CON412) - AWS re:Invent 2018Kubernetes Networking in Amazon EKS (CON412) - AWS re:Invent 2018
Kubernetes Networking in Amazon EKS (CON412) - AWS re:Invent 2018
 
Meet Akka gRPC
Meet Akka gRPCMeet Akka gRPC
Meet Akka gRPC
 
Reacting to an Event-Driven World (Kate Stanley & Grace Jansen, IBM) Kafka Su...
Reacting to an Event-Driven World (Kate Stanley & Grace Jansen, IBM) Kafka Su...Reacting to an Event-Driven World (Kate Stanley & Grace Jansen, IBM) Kafka Su...
Reacting to an Event-Driven World (Kate Stanley & Grace Jansen, IBM) Kafka Su...
 
Hystrix
HystrixHystrix
Hystrix
 
Virtual Flink Forward 2020: Apache Flink Worst Wractices - Konstantin Knauf
Virtual Flink Forward 2020: Apache Flink Worst Wractices - Konstantin KnaufVirtual Flink Forward 2020: Apache Flink Worst Wractices - Konstantin Knauf
Virtual Flink Forward 2020: Apache Flink Worst Wractices - Konstantin Knauf
 
JakartaJS: Serverless in production
JakartaJS: Serverless in productionJakartaJS: Serverless in production
JakartaJS: Serverless in production
 
Testing on AWS - AWS IL meetup
Testing on AWS - AWS IL meetupTesting on AWS - AWS IL meetup
Testing on AWS - AWS IL meetup
 
Streaming the platform with Confluent (Apache Kafka)
Streaming the platform with Confluent (Apache Kafka)Streaming the platform with Confluent (Apache Kafka)
Streaming the platform with Confluent (Apache Kafka)
 
Flexible, hybrid API-led software architectures with Kong
Flexible, hybrid API-led software architectures with KongFlexible, hybrid API-led software architectures with Kong
Flexible, hybrid API-led software architectures with Kong
 
Build a RESTful API with the Serverless Framework
Build a RESTful API with the Serverless FrameworkBuild a RESTful API with the Serverless Framework
Build a RESTful API with the Serverless Framework
 
Open-source vs. public cloud in the Big Data landscape. Friends or Foes?
Open-source vs. public cloud in the Big Data landscape. Friends or Foes?Open-source vs. public cloud in the Big Data landscape. Friends or Foes?
Open-source vs. public cloud in the Big Data landscape. Friends or Foes?
 
Max Körbächer - AWS EKS and beyond – master your Kubernetes deployment on AWS...
Max Körbächer - AWS EKS and beyond – master your Kubernetes deployment on AWS...Max Körbächer - AWS EKS and beyond – master your Kubernetes deployment on AWS...
Max Körbächer - AWS EKS and beyond – master your Kubernetes deployment on AWS...
 
Kubernetes Operators - the next frontier in application automation - Ádám Sándor
Kubernetes Operators - the next frontier in application automation - Ádám SándorKubernetes Operators - the next frontier in application automation - Ádám Sándor
Kubernetes Operators - the next frontier in application automation - Ádám Sándor
 

Similar to Redefining Plattform "Openness" with OpenFaaS

PaaS on Openstack
PaaS on OpenstackPaaS on Openstack
PaaS on Openstack
Open Stack
 

Similar to Redefining Plattform "Openness" with OpenFaaS (20)

Breaking the Monolith
Breaking the MonolithBreaking the Monolith
Breaking the Monolith
 
F5 Meetup presentation automation 2017
F5 Meetup presentation automation 2017F5 Meetup presentation automation 2017
F5 Meetup presentation automation 2017
 
IoT Edge Data Processing with NVidia Jetson Nano oct 3 2019
IoT  Edge Data Processing with NVidia Jetson Nano oct 3 2019IoT  Edge Data Processing with NVidia Jetson Nano oct 3 2019
IoT Edge Data Processing with NVidia Jetson Nano oct 3 2019
 
Build and Manage Serverless APIs (APIDays Nordic, May 19th 2016)
Build and Manage Serverless APIs (APIDays Nordic, May 19th 2016)Build and Manage Serverless APIs (APIDays Nordic, May 19th 2016)
Build and Manage Serverless APIs (APIDays Nordic, May 19th 2016)
 
Building an MLOps Stack for Companies at Reasonable Scale
Building an MLOps Stack for Companies at Reasonable ScaleBuilding an MLOps Stack for Companies at Reasonable Scale
Building an MLOps Stack for Companies at Reasonable Scale
 
Going FaaSter, Functions as a Service at Netflix
Going FaaSter, Functions as a Service at NetflixGoing FaaSter, Functions as a Service at Netflix
Going FaaSter, Functions as a Service at Netflix
 
Flink in action
Flink in actionFlink in action
Flink in action
 
PaaS on Openstack
PaaS on OpenstackPaaS on Openstack
PaaS on Openstack
 
Devops on serverless
Devops on serverlessDevops on serverless
Devops on serverless
 
Introduction to Apache NiFi 1.11.4
Introduction to Apache NiFi 1.11.4Introduction to Apache NiFi 1.11.4
Introduction to Apache NiFi 1.11.4
 
Accelerating Software Development with NetApp's P4flex
Accelerating Software Development with NetApp's P4flexAccelerating Software Development with NetApp's P4flex
Accelerating Software Development with NetApp's P4flex
 
apidays LIVE Singapore 2021 - REST the Events - REST APIs for Event-Driven Ar...
apidays LIVE Singapore 2021 - REST the Events - REST APIs for Event-Driven Ar...apidays LIVE Singapore 2021 - REST the Events - REST APIs for Event-Driven Ar...
apidays LIVE Singapore 2021 - REST the Events - REST APIs for Event-Driven Ar...
 
Spring and Pivotal Application Service - SpringOne Tour - Boston
Spring and Pivotal Application Service - SpringOne Tour - BostonSpring and Pivotal Application Service - SpringOne Tour - Boston
Spring and Pivotal Application Service - SpringOne Tour - Boston
 
Google Cloud Next '22 Recap: Serverless & Data edition
Google Cloud Next '22 Recap: Serverless & Data editionGoogle Cloud Next '22 Recap: Serverless & Data edition
Google Cloud Next '22 Recap: Serverless & Data edition
 
Cowboy dating with big data, Борис Трофімов
Cowboy dating with big data, Борис ТрофімовCowboy dating with big data, Борис Трофімов
Cowboy dating with big data, Борис Трофімов
 
Building Advanced Serverless Workflows with AWS Step Functions | AWS Floor28
Building Advanced Serverless Workflows with AWS Step Functions | AWS Floor28Building Advanced Serverless Workflows with AWS Step Functions | AWS Floor28
Building Advanced Serverless Workflows with AWS Step Functions | AWS Floor28
 
apidays LIVE India - REST the Events - REST APIs for Event-Driven Architectur...
apidays LIVE India - REST the Events - REST APIs for Event-Driven Architectur...apidays LIVE India - REST the Events - REST APIs for Event-Driven Architectur...
apidays LIVE India - REST the Events - REST APIs for Event-Driven Architectur...
 
Spring Boot & Spring Cloud on Pivotal Application Service - Alexandre Roman
Spring Boot & Spring Cloud on Pivotal Application Service - Alexandre RomanSpring Boot & Spring Cloud on Pivotal Application Service - Alexandre Roman
Spring Boot & Spring Cloud on Pivotal Application Service - Alexandre Roman
 
Spring Boot & Spring Cloud on Pivotal Application Service
Spring Boot & Spring Cloud on Pivotal Application ServiceSpring Boot & Spring Cloud on Pivotal Application Service
Spring Boot & Spring Cloud on Pivotal Application Service
 
Spring and Pivotal Application Service - SpringOne Tour Dallas
Spring and Pivotal Application Service - SpringOne Tour DallasSpring and Pivotal Application Service - SpringOne Tour Dallas
Spring and Pivotal Application Service - SpringOne Tour Dallas
 

Recently uploaded

Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
David Celestin
 
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven CuriosityUnlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
Hung Le
 
Artificial_intelligence_in_cctv_survelliance FINAL.pptx
Artificial_intelligence_in_cctv_survelliance FINAL.pptxArtificial_intelligence_in_cctv_survelliance FINAL.pptx
Artificial_intelligence_in_cctv_survelliance FINAL.pptx
hariprasad279825
 

Recently uploaded (20)

BIG DEVELOPMENTS IN LESOTHO(DAMS & MINES
BIG DEVELOPMENTS IN LESOTHO(DAMS & MINESBIG DEVELOPMENTS IN LESOTHO(DAMS & MINES
BIG DEVELOPMENTS IN LESOTHO(DAMS & MINES
 
ECOLOGY OF FISHES.pptx full presentation
ECOLOGY OF FISHES.pptx full presentationECOLOGY OF FISHES.pptx full presentation
ECOLOGY OF FISHES.pptx full presentation
 
STM valmiusseminaari 26-04-2024 PUUMALAINEN Ajankohtaista kansainvälisestä yh...
STM valmiusseminaari 26-04-2024 PUUMALAINEN Ajankohtaista kansainvälisestä yh...STM valmiusseminaari 26-04-2024 PUUMALAINEN Ajankohtaista kansainvälisestä yh...
STM valmiusseminaari 26-04-2024 PUUMALAINEN Ajankohtaista kansainvälisestä yh...
 
in kuwait௹+918133066128....) @abortion pills for sale in Kuwait City
in kuwait௹+918133066128....) @abortion pills for sale in Kuwait Cityin kuwait௹+918133066128....) @abortion pills for sale in Kuwait City
in kuwait௹+918133066128....) @abortion pills for sale in Kuwait City
 
BEAUTIFUL PLACES TO VISIT IN LESOTHO.pptx
BEAUTIFUL PLACES TO VISIT IN LESOTHO.pptxBEAUTIFUL PLACES TO VISIT IN LESOTHO.pptx
BEAUTIFUL PLACES TO VISIT IN LESOTHO.pptx
 
The Concession of Asaba International Airport: Balancing Politics and Policy ...
The Concession of Asaba International Airport: Balancing Politics and Policy ...The Concession of Asaba International Airport: Balancing Politics and Policy ...
The Concession of Asaba International Airport: Balancing Politics and Policy ...
 
globalisation project report displayed overview
globalisation project report displayed overviewglobalisation project report displayed overview
globalisation project report displayed overview
 
2024 mega trends for the digital workplace - FINAL.pdf
2024 mega trends for the digital workplace - FINAL.pdf2024 mega trends for the digital workplace - FINAL.pdf
2024 mega trends for the digital workplace - FINAL.pdf
 
Using AI to boost productivity for developers
Using AI to boost productivity for developersUsing AI to boost productivity for developers
Using AI to boost productivity for developers
 
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdfSOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
 
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
 
History of Morena Moshoeshoe birth death
History of Morena Moshoeshoe birth deathHistory of Morena Moshoeshoe birth death
History of Morena Moshoeshoe birth death
 
Ready Set Go Children Sermon about Mark 16:15-20
Ready Set Go Children Sermon about Mark 16:15-20Ready Set Go Children Sermon about Mark 16:15-20
Ready Set Go Children Sermon about Mark 16:15-20
 
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven CuriosityUnlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
Unlocking Exploration: Self-Motivated Agents Thrive on Memory-Driven Curiosity
 
Artificial_intelligence_in_cctv_survelliance FINAL.pptx
Artificial_intelligence_in_cctv_survelliance FINAL.pptxArtificial_intelligence_in_cctv_survelliance FINAL.pptx
Artificial_intelligence_in_cctv_survelliance FINAL.pptx
 
LITTLE ABOUT LESOTHO FROM THE TIME MOSHOESHOE THE FIRST WAS BORN
LITTLE ABOUT LESOTHO FROM THE TIME MOSHOESHOE THE FIRST WAS BORNLITTLE ABOUT LESOTHO FROM THE TIME MOSHOESHOE THE FIRST WAS BORN
LITTLE ABOUT LESOTHO FROM THE TIME MOSHOESHOE THE FIRST WAS BORN
 
Introduction to Artificial intelligence.
Introduction to Artificial intelligence.Introduction to Artificial intelligence.
Introduction to Artificial intelligence.
 
Digital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of DrupalDigital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of Drupal
 
Abortion Pills Fahaheel ௹+918133066128💬@ Safe and Effective Mifepristion and ...
Abortion Pills Fahaheel ௹+918133066128💬@ Safe and Effective Mifepristion and ...Abortion Pills Fahaheel ௹+918133066128💬@ Safe and Effective Mifepristion and ...
Abortion Pills Fahaheel ௹+918133066128💬@ Safe and Effective Mifepristion and ...
 
BIG DEVELOPMENTS IN LESOTHO(DAMS & MINES
BIG DEVELOPMENTS IN LESOTHO(DAMS & MINESBIG DEVELOPMENTS IN LESOTHO(DAMS & MINES
BIG DEVELOPMENTS IN LESOTHO(DAMS & MINES
 

Redefining Plattform "Openness" with OpenFaaS