SlideShare a Scribd company logo
Cloud Agnostic Serverless
with Fn Project
Todor Todorov | DevOps Evangelist | @totollygeek
|
Todor Todorov
@totollygeek
» .NET developer;
» clean code fanatic;
» DevOps evangelist;
» speaker;
» father of 3 boys;
» karaoke enthusiast;
@totollygeek
The serverless explained
Credits: Matthew Gilliard
DIY Bare Metal PaaS K8s-aaS Serverless
Hardware
OS
Hypervisor
Virtual OS
Container
Orchestration
Application
Code
@totollygeek
Cloud agnostic serverless with fn project
Monolith
Microservice
Microservice
Microservice
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
@totollygeek
Microservice
Monolith
Microservice
Microservice
Function
Function
Function
Function
Function
Function
Function
Function
Function
Function
@totollygeek
@totollygeek
❑ C#
❑ F#
❑ JavaScript
❑ Java (ver 2.x only)
❑ PowerShell (ver 2.x only)
❑ Python (ver 2.x only)
❑ TypeScript (ver 2.x only)
❑ some experimental
@totollygeek
❑ JavaScript
❑ Python
❑ Java (8, 11)
❑ C# (dotnetcore2.1)
❑ Go (1.x)
❑ Ruby (2.5)
@totollygeek
❑JavaScript
❑Go
❑Python
@totollygeek
That’s it?!?
@totollygeek
@totollygeek
@totollygeek
@totollygeek
What is Fn Project?
• Independent open-source
serverless compute platform
• Not tied to any cloud vendor
• Can be run on premises
• Supported by Oracle
• Containers are primitives
• Strong enterprise in mind
What is a function container?
• Sandboxed process
• Short running
• Event-driven
• Stateless (-ish)
@totollygeek
Anatomy of an Fn function
• Small chunk of code wrapped in a container
• Gets input from http-stream and environment
• Sends output to http-stream
• Logs to STDERR / syslog
@totollygeek
FDK (Function Development Kit)
support
Go Java Node.js Python Ruby
Officially
supported
C#
Community
supported
@totollygeek
The Fn Server
• Runs in a container also
• Handles as an API gateway
• Exposes REST interface
• Storing logs
@totollygeek
The Fn CLI
• Of course we have a CLI!
• Used to interact with Fn Server
• Initialization
• Deployment
• Invocation
@totollygeek
Initialization of functions
• Calling fn init to create a boilerplate in a folder
• Does not do anything on the server
• Boilerplate includes: Dockerfile, func.yaml & code
@totollygeek
@totollygeek
How deployment works
1. Bumps function version
2.Builds container
3.Pushes it to registry
4.Creates or update function & trigger in server
Your code
MyFunc:0.0.2
1 & 2 3
MyFunc:0.0.2
MyFunc:0.0.2
Fn Service
4
Invocation of functions
• From the CLI
• With HTTP request
• From the UI
@totollygeek
@totollygeek
DEMO
@totollygeek
See metrics with
Grafana &
Prometheus
Source: https://fnproject.io/tutorials/grafana/
@totollygeek
Source: https://fnproject.io/tutorials/grafana/
Using it in Kubernetes
• Recommended way of
deployment for production
• Helm chart available on
GitHub
@totollygeek
Fn Flow
• Building scalable distributed applications out of functions
• Flows are functions also
• Support complex parallel processes with error handling, which is testable
• Flow functions scale as normal functions
• Currently supports Java, hopefully more to come
@totollygeek
@totollygeek
Fn Flow | Licence plate example
Scraper
Plate detect
Plate detect
Plate detect
Draw
Draw
Draw
Post to
Twitter
Post to
Twitter
Post to
Twitter
Post to
Slack
Post to
Slack
Post to
Slack
@totollygeek
Fn Flow | Licence plate example
Scraper
Plate detect
Plate detect
Plate detect
Draw
Draw
Draw
Post to
Twitter
Post to
Twitter
Post to
Twitter
Post to
Slack
Post to
Slack
Post to
Slack
FlowFuture.invoke()
thenCompose()
thenCompose()
allOf()
whenComplete()
@totollygeek
Fn Flow |
Licence plate
example
Fn Flow UI
Source: https://github.com/fnproject/flow
@totollygeek
@totollygeek
DEMO
Thank you!
Where to find me: e: todor@todorov.bg
b: www.todorov.bg
t: www.twitter.com/totollygeek
l: www.linkedin.com/in/totollygeek
g: www.github.com/totollygeek
Next event:
Kubernetes integration with Vault
@totollygeek

More Related Content

PDF
Introduction to GitHub Actions
PPTX
Cloud agnostic serverless with fn project
ODP
Jenkins djangovillage
PPT
Git workflows
PDF
Intro to Git and GitHub
PDF
Juc boston2014.pptx
PPT
Introduction to Git and Github
PPTX
JOIN 2021 Testable and reusable build automation Using Tekton
Introduction to GitHub Actions
Cloud agnostic serverless with fn project
Jenkins djangovillage
Git workflows
Intro to Git and GitHub
Juc boston2014.pptx
Introduction to Git and Github
JOIN 2021 Testable and reusable build automation Using Tekton

What's hot (19)

PPTX
Git and github fundamentals
PDF
Git - An Introduction
PDF
CodeMontage CodeFlow 1
PPTX
Up GitLab Presentation 2015
PPTX
Introduction to git & GitHub
PDF
funcs, func expressions, closure, returning funcs, recursion, the stack -goph...
PDF
PUG Romagna - Pipeline + Deployer PHP
PPTX
PDF
Introduction of Distributed version control system (mainly Mercurial)
PDF
JUC Europe 2015: The Famous Cows of Cambridge: A Non-Standard Use Case for Je...
PPTX
Devops.pptx
PPTX
Azure Functions
PDF
Vagrant: The ability to create production environments from day 1 of development
PDF
Material Design and Seaside
PDF
Learning git
PDF
Intro to Git, GitHub, and Devpost
PPTX
C#: Past, Present and Future
PDF
SBG Infrastructure Tools
PPT
Webforum1
Git and github fundamentals
Git - An Introduction
CodeMontage CodeFlow 1
Up GitLab Presentation 2015
Introduction to git & GitHub
funcs, func expressions, closure, returning funcs, recursion, the stack -goph...
PUG Romagna - Pipeline + Deployer PHP
Introduction of Distributed version control system (mainly Mercurial)
JUC Europe 2015: The Famous Cows of Cambridge: A Non-Standard Use Case for Je...
Devops.pptx
Azure Functions
Vagrant: The ability to create production environments from day 1 of development
Material Design and Seaside
Learning git
Intro to Git, GitHub, and Devpost
C#: Past, Present and Future
SBG Infrastructure Tools
Webforum1
Ad

Similar to Cloud agnostic serverless with fn project (20)

PDF
The Fn Project by Jesse Butler
PDF
Serverless Boston @ Oracle Meetup
PDF
The Fn Project: A Quick Introduction (December 2017)
PPTX
Democratizing Serverless
PDF
Open Source Serverless: a practical view. - Gabriele Provinciali Luca Postacc...
PDF
Free the Functions with Fn project!
PPTX
Democratizing Serverless: the New Open Source, Cloud Agnostic Functions Platf...
PPTX
The FN Project by Maximilian Jerg
PPTX
TechEvent Servlerless Computing with Fn Project
PDF
Serverless Computing with Fn Project
PPTX
Containers, Serverless and Functions in a nutshell
PDF
Java Serverless in Action - Voxxed Banff
PPTX
Serverless design with Fn project
PDF
FaaS you like it (if Shakespeare had written Functions-as-a-Service)
PDF
Docker serverless v1.0
PDF
DCEU 18: Docker Containers in a Serverless World
PDF
Zero to Serverless in 60s - Anywhere
PDF
Randstad Docker meetup - Serverless
PDF
Serverless brewbox
PDF
ApiOps Tampere meetup 17.11.2017- serverless_with_openfaas
The Fn Project by Jesse Butler
Serverless Boston @ Oracle Meetup
The Fn Project: A Quick Introduction (December 2017)
Democratizing Serverless
Open Source Serverless: a practical view. - Gabriele Provinciali Luca Postacc...
Free the Functions with Fn project!
Democratizing Serverless: the New Open Source, Cloud Agnostic Functions Platf...
The FN Project by Maximilian Jerg
TechEvent Servlerless Computing with Fn Project
Serverless Computing with Fn Project
Containers, Serverless and Functions in a nutshell
Java Serverless in Action - Voxxed Banff
Serverless design with Fn project
FaaS you like it (if Shakespeare had written Functions-as-a-Service)
Docker serverless v1.0
DCEU 18: Docker Containers in a Serverless World
Zero to Serverless in 60s - Anywhere
Randstad Docker meetup - Serverless
Serverless brewbox
ApiOps Tampere meetup 17.11.2017- serverless_with_openfaas
Ad

Recently uploaded (20)

PPTX
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
PDF
Nekopoi APK 2025 free lastest update
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PPTX
CHAPTER 2 - PM Management and IT Context
PDF
top salesforce developer skills in 2025.pdf
PPTX
Transform Your Business with a Software ERP System
PPTX
Operating system designcfffgfgggggggvggggggggg
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PPT
Introduction Database Management System for Course Database
PPTX
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PDF
medical staffing services at VALiNTRY
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
Understanding Forklifts - TECH EHS Solution
PDF
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
AI in Product Development-omnex systems
CHAPTER 12 - CYBER SECURITY AND FUTURE SKILLS (1) (1).pptx
Nekopoi APK 2025 free lastest update
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
CHAPTER 2 - PM Management and IT Context
top salesforce developer skills in 2025.pdf
Transform Your Business with a Software ERP System
Operating system designcfffgfgggggggvggggggggg
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Which alternative to Crystal Reports is best for small or large businesses.pdf
Introduction Database Management System for Course Database
Agentic AI Use Case- Contract Lifecycle Management (CLM).pptx
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
medical staffing services at VALiNTRY
Internet Downloader Manager (IDM) Crack 6.42 Build 41
2025 Textile ERP Trends: SAP, Odoo & Oracle
Understanding Forklifts - TECH EHS Solution
Audit Checklist Design Aligning with ISO, IATF, and Industry Standards — Omne...
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Wondershare Filmora 15 Crack With Activation Key [2025
AI in Product Development-omnex systems

Cloud agnostic serverless with fn project