serverless, show me the servers! - ukvmug 2017
TRANSCRIPT
![Page 1: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/1.jpg)
#UKVMUG@julian_wood1
Serverless:Show me the servers!
@julian_woodWoodITWork.com
UK VMUG – 16 November 2017
![Page 2: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/2.jpg)
#UKVMUG@julian_wood2
set of instructions
collection of functions
![Page 3: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/3.jpg)
#UKVMUG@julian_wood3
if
software is eating the world
then
serverless is eating software
![Page 4: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/4.jpg)
#UKVMUG@julian_wood4
![Page 5: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/5.jpg)
#UKVMUG@julian_wood5
![Page 6: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/6.jpg)
#UKVMUG@julian_wood6
![Page 7: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/7.jpg)
#UKVMUG@julian_wood7
the same way WiFi is wireless…
![Page 8: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/8.jpg)
#UKVMUG@julian_wood8
So, what is Serverless?
Event Driven Functions as a Service
![Page 9: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/9.jpg)
#UKVMUG@julian_wood
What is Serverless?
9
user defined functions
small & discrete
event triggered
spun up and down on demand
fully managed compute
upload code, provider does rest
transparent scaling, provider managed
no VMs/containers to manage
pay per code execution
![Page 10: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/10.jpg)
#UKVMUG@julian_wood10
Stateless Event Driven Functions as a Service
https://www.slideshare.net/bennybauer1/serverless-when-to-faas
![Page 11: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/11.jpg)
#UKVMUG@julian_wood11
Amazon Lambda Azure Functions Google Cloud Functions
kubernetes based
Funktion
cross container platform
Oracle Fn OpenFaaS
![Page 12: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/12.jpg)
#UKVMUG@julian_wood12
![Page 13: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/13.jpg)
#UKVMUG@julian_wood13
https://specify.io/concepts/serverless-baas-faas
![Page 14: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/14.jpg)
#UKVMUG@julian_wood
FaaS & BaaS
14
(mobile) Backend as a Service
back end services
not backend logic
Amazon API Gateway
Google Firebase
![Page 15: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/15.jpg)
#UKVMUG@julian_wood15
Deploy Code
EventTrigger
ExecuteCode
![Page 16: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/16.jpg)
#UKVMUG@julian_wood
Events
16
HTTP requests
file changes
web hooks
time scheduled tasks
database record update
events stream
message bus
new code commit to GitHub
IoT sensor reading
![Page 17: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/17.jpg)
#UKVMUG@julian_wood
File Processing
17
![Page 18: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/18.jpg)
#UKVMUG@julian_wood
execute code every 15 minutes that cleans up a database table
Timer processing
18
https://azure.microsoft.com/en-us/services/functions/
![Page 19: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/19.jpg)
#UKVMUG@julian_wood
Webhook
19
https://azure.microsoft.com/en-us/services/functions/
webHook URL, saves user data, decides what data to display
![Page 20: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/20.jpg)
#UKVMUG@julian_wood
sensors in tractor detects need for a spare part and automatically place order
Stream processing
20
https://aws.amazon.com/kinesis/
![Page 21: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/21.jpg)
#UKVMUG@julian_wood
Alexa
21
https://mike.lapidak.is/thoughts/plex-alexa-interacting-with-your-media-server-through-voice
![Page 22: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/22.jpg)
#UKVMUG@julian_wood
A Cloud Guru
22
![Page 23: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/23.jpg)
#UKVMUG@julian_wood23
event emitted(produced)
event consumedalways asynchronous
Message Bus Events
![Page 24: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/24.jpg)
#UKVMUG@julian_wood
Fission – http request
24
![Page 25: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/25.jpg)
#UKVMUG@julian_wood
Languages
25
Azure Functions JavaScript, C#, F#, Python, PHP, Bash, Batch,PowerShell
AWS Lambda Node.js, Python, Java 8, C# (.NET Core)
Google Cloud Functions Node.js
Apache OpenWhisk Node.js, Swift, Python, container
Platform9 Fission
OpenFaaS
Node.js, Python, container
Node.js, Java, GoLang, C#/.NET Standard,Python, Ruby, container
![Page 26: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/26.jpg)
#UKVMUG@julian_wood
Stateless
26
ephemeral
no local state
write state to external disk / database
![Page 27: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/27.jpg)
#UKVMUG@julian_wood
£ How Much?
27
requests
+ duration (rounded up to 100 ms)
x configured upper memory limit
Free: ☺
1 or 2 million requests + 400,000 Gb-s
![Page 28: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/28.jpg)
#UKVMUG@julian_wood
FaaS vs. PaaS
28
FaaS:
scaling for individual requests
bring whole app up and down for each request
PaaS:
long running
tooling and maturity
caching
state
![Page 29: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/29.jpg)
#UKVMUG@julian_wood
FaaS vs. Containers
29
FaaS:
event driven
container abstraction
Containers:
general purpose IaaS
tooling
DIY languages
portability
![Page 30: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/30.jpg)
#UKVMUG@julian_wood
Benefits
30
Cost: development, operational, scaling
Easier autoscaling,
Management: zero system administration
Productivity: pure function code,
no HTTP sessions, authentication,
back-end glue
![Page 31: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/31.jpg)
#UKVMUG@julian_wood
Disadvantages
31
Performance:
Security:
Resources:
shared time limit (not GCP)
disk memory
warm up concurrent executions
inconsistent
spin up time especially JVMs
no multi-tenancy
noisy neighbour
![Page 32: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/32.jpg)
#UKVMUG@julian_wood
Disadvantages
32
Configuration:
Ops:
Skills: all new cloud platform differences
limited languages discovery
environment variables stateless
testing monitoring
debugging external systems
versioning blue/green
![Page 33: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/33.jpg)
#UKVMUG@julian_wood
Disadvantages
33
no roadmap
vendor lock-in
outsourced control = downtime?
portable code, not portable ops
isolated events/bus
integrated services
![Page 34: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/34.jpg)
#UKVMUG@julian_wood
AWS Integrated Services
34
![Page 35: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/35.jpg)
#UKVMUG@julian_wood
Azure Integrated Services
35
![Page 36: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/36.jpg)
#UKVMUG@julian_wood
FaaS at the Edge
36
Azure Stack + Azure Functions
Embedded Lambda on connected devices
AWS Greengrass Edge
AWS Snowball Edge
![Page 37: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/37.jpg)
#UKVMUG@julian_wood
FaaS & NoOps - look no OS! ☺
37
“Ops” = way more than server administration
FaaS = outsourcing sysadmin
monitoring, architectural scaling,
security, debugging, networking
FaaS 4 Ops : tagging, lifecycle, security, compliance
![Page 38: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/38.jpg)
#UKVMUG@julian_wood
VM Management use cases?
38
PowerCLI
snapshots
VM creation / deletion / resizing
NSX firewall rules
tagging
SRM
log analysis
security events
![Page 39: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/39.jpg)
#UKVMUG@julian_wood
VMware on AWS
39
close to other stuff
deploy/scale Cloud Foundation
IBM Cloud (BlueMix/Softlayer) + Watson
PKS (Pivotal + Kubernetes + NSX-T)
vSphere Integrated Containers
Ops + DevOps
![Page 40: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/40.jpg)
#UKVMUG@julian_wood
Make Money
40
sell your functions
Amazon API gateway -> API marketplace -> Lambda
![Page 41: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/41.jpg)
#UKVMUG@julian_wood
The Amazing Functional Billing
41
functional granulatory
visibility
focus dev time
reduce waste & duplication
prove insource/outsource
marketplace service discovery
cheap to play
correlate business cost to IT cost
![Page 42: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/42.jpg)
#UKVMUG@julian_wood
What’s coming/needed
42
better tools, monitoring, logging etc.
Service Fabric Workflows
AWS Step Functions Azure Logic Apps
Vendor abstraction
Serverless Framework Lambada Framework
![Page 43: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/43.jpg)
#UKVMUG@julian_wood43
if you have event triggers…..
do you skip PaaS?
do you skip containers?
![Page 44: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/44.jpg)
#UKVMUG@julian_wood44
![Page 45: Serverless, Show me the servers! - UKVMUG 2017](https://reader033.vdocuments.net/reader033/viewer/2022051521/5a6d444e7f8b9ab8418b60d1/html5/thumbnails/45.jpg)
#UKVMUG@julian_wood45
Serverless:Show me the servers!
@julian_woodWoodITWork.com
UK VMUG – 16 November 2017