Serverless
Serverles architecture generally describes fully managed cloud services
The classifiction of a cloud service being serverless is not boolean answer (yes or no)
Answer is on scale where cloud service has degree of serverless
Characteristics
Higly scalable
Higly available
Higly Durable
Secure by default
Billed based on business tasks
Can scale to zero
Pay for value (You don't pay for ideal server)
Function as a Service (FaaS):
Allows developers to focus on just writing pieces of code (functions)
Generally multiple functions are orchastrated together to create a serverless app.
Functions only run when needed
1. OpenFaaS:
Runs serverless function anywhere Docker runs
2. Faasd:
It is light weight version of OpenFaaS that doesn't need Kubernetes to run.
It can run on single under-powered machine
3. Apache OpenWisk:
Deploy to Kubernetes, Mesos, Docker Swarm
KNative:
Kubernetes-based platform to deploy and manage modern serverless workloads
KNative is a project to create a standard set of building blocks for kubernetes to enable serverless deployment patter
KNative generally is composed of two parts
KNative serving:
Take containerized code and eploy it with relative ease
Scale to zero cost
KNative Eventing:
Trigger serverless function based on K8s API events.
Considerations:
Not a complete serverless function
It does not offere FaaS offereingd
KNative defines its own set of Kubernetes objects as kubernetes custom resource definitions (CRDs)
KNative Components:
Service
Route
Configuration
Revision
KNative uses its own CLI called
kn
used alongsidekubectl
💡 You should definitly read about KNative v/s OpenFaaS
once
Last updated