SlideShare une entreprise Scribd logo
1  sur  55
Télécharger pour lire hors ligne
Let's go Serverless!
for AWS User Group
Meetup - Wednesday July 11, 2018
Meetup Agenda
1. Intro & Announcements
2. Stand Up Introductions
3. Presentation: Let’s go Serverless!
4. Speaker: Daniel ZivKovic
5. Feedback, Discussions & Networking
2
Usergroup Organizers & Sponsors
● Daniel ZivKovic, Solutions Architect, TriNimbus
● Serverless.com, Leading Serverless Application
Framework
● TriNimbus, Recommended AWS Canada Partner
○ AWS Meetups in Vancouver, Toronto, Montreal,
Ottawa, Victoria, Calgary, Edmonton, Waterloo &
Quebec City
○ Offices in Vancouver, Calgary, Toronto, Montreal
& Macedonia
3
5 Second
Introduction
4
1. What do you mean Serverless?
2. FaaS vs. Serverless vs. BaaS
3. How did we get here? Serverless past, present & future
4. Popular Use Cases
5. Serverless forecast: How big will serverless be?
6. Get going with The Serverless Framework – walkthrough
7. Products landscape – your Serverless options
8. Learning Serverless
9. Adopting it in your organization
Let’s go Serverless – Presentation Agenda
5
Even when people believe in the same idea (or “fight for the
same thing”), we may see / interpret things differently based
on our position (experiences or biases) to the prism (of life).
Disclaimer – Serverless is charged term
So, my position is
AWS coloured –
Orange ;)
Where is yours?
6
Servers exists, but developers do not have to
worry about them
● Technology is serverless “the same way WiFi is wireless”
○ Gojko Adzic – http://bit.ly/2yQgwwb
● "Serverless is just a name. We could have called it Jeff"
○ said Paul Johnston, and started www.JeffConf.com
● "A Serverless solution is one that costs you nothing to run if
nobody is using it (excluding data storage)"
○ Paul Johnston – http://bit.ly/2yRlhFO
What do you mean Serverless?
7
… for building
Serverless apps
FaaS – a new programming model…
8
… unit of
deployment and
scaling is
Function
(as opposed to
Application,
Container, Virtual
Server).
FaaS is unique, because…
9
Not all FaaS is
Serverless:
● Kubeless is not
serverless.
Serverless contains a subset of FaaS, plus
… other Backend
Services that cost
you nothing when
not used (BaaS).
10
Why I’m so excited about
Serverless?
• Information Technology Past
• Present Opportunities
• Promising Future
11
● Growing up, I liked to make models of ships, planes,
trains… which translated into the love for creating software.
● Wanted to make useful programs, to help people around
● But, ended up spending more time administrating the
computers behind, and making our products Highly
Available, Scalability and Secure.
● Especially after Internet came!
● Software became complicated to make… and keep running.
IT Past – Personal journey
12
you gather the
requirements,
architect the
solution, your
design it, you
build it… with
pride!
Building software products felt like when
you want to build a locomotive…
13
… it starts feeling
as if you’re *stuck*
feeding the steam
locomotive with
coal!
(it’s just it was much
colder in the data
centers :)
But then, when you put it to production…
14
● That was “my tainted” Developer’s View
● Now, the Operations View
○ In the beginning, IT had “You Build It, You Run It” –
DevOps like culture, then
○ we invented the “Toss It Over the Fence” principle, and
had Ops people deal with our (cr)app, maintain our
computers, databases, networks…
○ which made developers happier/sloppier, but
○ was additional cost for the business/clients.
Building vs. Maintaining Software
15
“Toss It Over the
Fence”
SDLC principle ;)
Building vs. Maintaining Software
16
● Business View
As a business owner – you could either under-provision, or
over-provision capacity:
○ You’d end up losing business – because your computers
are overloaded, apps unreachable…
○ or losing money – if you over-provisioned capacity.
So, Capacity Planning discipline/expense was born...
Building vs. Maintaining Software
17
… and I had my
fair share of
contributions to
it – while at Sun
Microsystems
and in Dot-com
days.
Solving Capacity Planning & Performance
Tuning problems became a science!
18
● We need software more than ever, but
● it became too complicated to make.
Serverless wave came unexpectedly when Amazon launched
AWS Lambda at re:Invent 2014 https://youtu.be/9eHoyUVo-yg
● Serverless isn't a new thing
● It came on the shoulders of giants (containers)
● It's just the next chapter in the same old journey towards
simplicity – the evolution of Cloud Computing
The Presence – The software is essential
to solving humanity's problems
19
Serverless: Evolution of Compute
20
… trying to get
rid of some of
this complicated
stuff…
… looking for
higher-level
abstractions…
We were always striving for simplicity…
21
… with some new qualities that we really like, for
managed functions & serverless services in general.
● Dr. Tim Wagner – General Manager of AWS
Lambda, Amazon API Gateway, and AWS
Serverless App Repository captured this in
“The Serverless Manifesto”
So, we identified Serverless as the new
level of abstraction…
22
The Serverless Manifesto
1. Functions are the unit of deployment and scaling.
2. No machines, VMs, or containers visible in the programming
model.
3. Permanent storage lives elsewhere.
4. Scales per request. Users cannot over- or under-provision
capacity.
5. Never pay for idle (no cold servers/containers or their costs).
6. Implicitly fault tolerant because functions can run anywhere.
7. BYOC – Bring your own code.
8. Metrics and logging are a universal right.
Serverless Compute Qualities
23
● Developers – makes their work more enjoyable cause they
can focus on coding & solving the business problem at
hand, rather than looking after the infrastructure.
● Business Owners – less building blocks to worry about &
battles to fight, lower TCO.
● End Users – software becomes cheaper, because it is less
expensive to build, deliver & maintain.
● In general – Serverless Architectures will enable scalable
and cost-effective apps to be built faster.
OK, But what are the Serverless benefits?
24
As industry, we
tried everything to
increase the speed
of software
development…
Latest of which is
“sprinting” faster, in
shorter 1-week “laps”…
Building Apps Faster (in general)
25
And that why
Serverless
excites me:
It will allow us to
fail faster, and
eventually get to
those good ideas
we’ll have!
Yet, software development is slow not
because we are not “sprinting” fast
enough, but because...
26
https://vimeo.com/206617354/a4f8a1f8e8
when no one in the
company dares to
say the truth, that
the project leads
nowhere ;)
Serverless brings hope,
we’ll be able “put some
clothes” (good ideas) on
our “naked bosses”!
Work in IT started to resemble “The
Emperor's New Clothes” tale:
27
https://en.wikipedia.org/wiki/The_Emperor%27s_New_Clothes
Serverless
Use Cases
28
Functions
are the glue
AWS Lambda = a serverless, event-driven
compute service
Events
are the
state
changes
29
Invocation Types – Event source mapping
30
Nicely
continue
microservices
evolution of
“breaking up
the monolith”
Serverless Microservices… Nanoservices
31
1. Customers
2. Amazon API Gateway
3. AWS Lambda
4. Amazon DynamoDB
AWS Reference architecture for RESTful
Microservices
32
● Web Applications
● Mobile Backends
● IoT
● Data Processing
○ Batch / ETL / ELT
○ Real-time data stream collection & manipulation
○ Big Data / Data Lakes
● IT Automation – DevOps
○ DIY: Load/Security Testing, Log Monitoring, Auditing, CI/CD
● Chatbots & Amazon Alexa
Other popular Use Cases
33
Do not use Serverless for:
● Mission critical apps (when
human life depends on your
app) – due to cold starts,
not published or low SLA-s.
● Long atomic processes –
they may timeout!
Hard to find experienced
engineers.
“If all you have is a hammer, everything
looks like a nail” – there are mis-use cases
34
Abraham Maslow, The Psychology of Science
Serverless Future – Long-term Forecast
35
What’s missing?
● Tooling
○ Better debugging and monitoring of serverless compute
● We need to tear down the walls between cloud-vendors
○ Monitor https://CloudEvents.io initiative by @CNCF
● Orchestration – some initial workflow engines already exist
○ AWS Step Functions, Azure Logic Apps, Oracle Fn
Flow, Fission Workflows
Serverless Future – Short-term Forecast
36
Visualization of Microservices flow at Netflix…
Serverless – Orchestration Forecast
37
… using Vizceral
open-source tool
That could become more intelligent, AI-based orchestration :)
Serverless – Orchestration Forecast
Doesn’t it remind you of the miracle of breathing?
38
Getting Started with
The Serverless Framework
• AWS Lambda, using
• Node.JS example
39
The easiest way to serverless:
● Open-source CLI, written in NodeJS
● Provider-agnostic abstraction layer
● Function language-agnostic
● Plugin system to extend and hook into life-cycle events
● Easy workflow:
○ write Functions code,
○ package and…
○ deploy via CLI…
○ to your cloud provider of choice.
What is The Serverless Framework?
40
The Serverless Framework supports:
Supported Infrastructure
Providers
41
AWS Lambda Supported Languages
● Node.js
● Python
● Java – slowest cold starts
● C#
● GO – shortest cold starts
Amazon as Serverless Infrastructure
42
Pre-requisites
● Cloud CLI tools installed & configured
C:Servelress>aws configure
AWS Access Key ID [****************TO2x]:
AWS Secret Access Key [****************dj12]:
Default region name [us-east-1]:
Default output format [None]:
● NodeJS 6.10 or later Installed
● Node Package Manager (NPM)
AWS Cloud Walkthrough
43
$ npm install -g serverless
$ serverless version
$ sls create --template aws-nodejs -p toronto
$ cd toronto
$ code serverless.yml
$ code handler.js
Commands Executed
44
serverless.yml
45
handler.js
46
$ sls deploy
$ sls deploy list
$ sls deploy list functions
$ sls info
$ sls invoke -f hello
{
"statusCode": 200,
"body": "{"message":"Go Serverless v1.0! Your function executed successfully!","input":{}}"
}
Package, deploy, invoke
47
it’s the URL ending with /dev/daniel
Open the endpoint URL in a browser
48
$ sls logs -f hello
$ sls metrics
$ sls remove
Next, read up & play with:
● https://serverless.com/learn/quick-start/
● https://serverless.com/framework/docs/providers/
More commands & resources
49
From the AWS angle
1. Get any cloud certification to learn about the cloud in general & the
services Lambdas can invoke / be invoked from: www.udemy.com/aws-
certified-developer-associate/ (google Udemy coupons first!)
2. Watch Serverless talks from the last AWS re:Invent 2017
https://serverless.com/blog/serverless-guide-aws-reinvent-2017/
3. Take “Production-Ready Serverless – Operational Best Practices”
course by Yan Cui @theburningmonk
https://www.manning.com/livevideo/production-ready-serverless
4. Connect with me – as I’m deep in the topic (just little AWS-biased)
@DanielBookmarks or https://www.linkedin.com/in/magmainc/ or
https://www.meetup.com/Serverless-Toronto/
Learning Serverless
50
Migrate Jobs – not Apps
● Look for Batch jobs,
● Disconnected sub-systems exchanging files, that need to
share state changes – e.g. update subscription preferences
in CRM, upon Mass-mailing campaign executions.
● Jobs that can benefit from parallelization and streaming –
file loaders, email processing, clickstream, trading data…
Ideas for adopting Serverless at work
51
Even when you’re not in the cloud try to apply
Twelve-Factor App Methodology to build /
refactor your apps:
● In general – https://12factor.net
● Serverless specific – by Chris Munns @chrismunns
○ slides https://www.slideshare.net/AmazonWebServices/twelve-
factor-serverless-applications
○ video https://youtu.be/19SCqWGqtto
Ideas for adopting Cloud-native at work
52
Planning Serverless
next steps…
Discussion
53
@goServerless
Montreal AWS Users Group
@3nimbus 54
Contact me when ready to apply:
daniel@TriNimbus.com
Guess What?
@3Nimbus is hiring
Cloud Solutions Architects, DevOps Engineers, Sales Executives
Go to www.TriNimbus.com and click “Careers”
55

Contenu connexe

Tendances

The Power of Partnership & Building a Cloud Native Tier-1 Platform in Paralle...
The Power of Partnership & Building a Cloud Native Tier-1 Platform in Paralle...The Power of Partnership & Building a Cloud Native Tier-1 Platform in Paralle...
The Power of Partnership & Building a Cloud Native Tier-1 Platform in Paralle...
VMware Tanzu
 
Cloud-Native Workshop - Santa Monica
Cloud-Native Workshop - Santa MonicaCloud-Native Workshop - Santa Monica
Cloud-Native Workshop - Santa Monica
VMware Tanzu
 

Tendances (20)

.NET Cloud-Native Bootcamp
.NET Cloud-Native Bootcamp.NET Cloud-Native Bootcamp
.NET Cloud-Native Bootcamp
 
Cloud Trends Nov2015 Structure
Cloud Trends Nov2015 StructureCloud Trends Nov2015 Structure
Cloud Trends Nov2015 Structure
 
Unleash software architecture leveraging on docker
Unleash software architecture leveraging on dockerUnleash software architecture leveraging on docker
Unleash software architecture leveraging on docker
 
Better Software is Better than Worse Software - Michael Coté (Cape Town 2019)
Better Software is Better than Worse Software - Michael Coté (Cape Town 2019)Better Software is Better than Worse Software - Michael Coté (Cape Town 2019)
Better Software is Better than Worse Software - Michael Coté (Cape Town 2019)
 
The Power of Partnership & Building a Cloud Native Tier-1 Platform in Paralle...
The Power of Partnership & Building a Cloud Native Tier-1 Platform in Paralle...The Power of Partnership & Building a Cloud Native Tier-1 Platform in Paralle...
The Power of Partnership & Building a Cloud Native Tier-1 Platform in Paralle...
 
Journey to the cloud, the why and how of serverless
Journey to the cloud, the why and how of serverlessJourney to the cloud, the why and how of serverless
Journey to the cloud, the why and how of serverless
 
TIAD : Full stack automation
TIAD : Full stack automationTIAD : Full stack automation
TIAD : Full stack automation
 
Let's Program The Cloud
Let's Program The CloudLet's Program The Cloud
Let's Program The Cloud
 
Docker, cornerstone of cloud hybridation ? [Cloud Expo Europe 2016]
Docker, cornerstone of cloud hybridation ? [Cloud Expo Europe 2016]Docker, cornerstone of cloud hybridation ? [Cloud Expo Europe 2016]
Docker, cornerstone of cloud hybridation ? [Cloud Expo Europe 2016]
 
Cloud-Native Workshop - Santa Monica
Cloud-Native Workshop - Santa MonicaCloud-Native Workshop - Santa Monica
Cloud-Native Workshop - Santa Monica
 
The art of decomposing monoliths - Kfir Bloch - Codemotion Amsterdam 2016
The art of decomposing monoliths - Kfir Bloch - Codemotion Amsterdam 2016The art of decomposing monoliths - Kfir Bloch - Codemotion Amsterdam 2016
The art of decomposing monoliths - Kfir Bloch - Codemotion Amsterdam 2016
 
Managing OpenShift at Scale Across the Open Hybrid Cloud
Managing OpenShift at Scale Across the Open Hybrid CloudManaging OpenShift at Scale Across the Open Hybrid Cloud
Managing OpenShift at Scale Across the Open Hybrid Cloud
 
Serverless is more FinDev than DevOps
Serverless is more FinDev than DevOpsServerless is more FinDev than DevOps
Serverless is more FinDev than DevOps
 
Debunking serverless myths
Debunking serverless mythsDebunking serverless myths
Debunking serverless myths
 
How to build a social network on serverless
How to build a social network on serverlessHow to build a social network on serverless
How to build a social network on serverless
 
Building A Diverse Geo-Architecture For Cloud Native Applications In One Day
Building A Diverse Geo-Architecture For Cloud Native Applications In One DayBuilding A Diverse Geo-Architecture For Cloud Native Applications In One Day
Building A Diverse Geo-Architecture For Cloud Native Applications In One Day
 
A Cloud Native Platform - Cloud Native Day Santa Monica
A Cloud Native Platform - Cloud Native Day Santa MonicaA Cloud Native Platform - Cloud Native Day Santa Monica
A Cloud Native Platform - Cloud Native Day Santa Monica
 
Continuous Delivery de vos applications dans un environnement multi-cloud et ...
Continuous Delivery de vos applications dans un environnement multi-cloud et ...Continuous Delivery de vos applications dans un environnement multi-cloud et ...
Continuous Delivery de vos applications dans un environnement multi-cloud et ...
 
Software Architecture Conference - Monitoring Microservices - A Challenge
Software Architecture Conference -  Monitoring Microservices - A ChallengeSoftware Architecture Conference -  Monitoring Microservices - A Challenge
Software Architecture Conference - Monitoring Microservices - A Challenge
 
Marco bizzantino Microsoft-Docker Meetup #4 Docker bday intro
Marco bizzantino Microsoft-Docker Meetup #4 Docker bday introMarco bizzantino Microsoft-Docker Meetup #4 Docker bday intro
Marco bizzantino Microsoft-Docker Meetup #4 Docker bday intro
 

Similaire à Montréal AWS Users United: Let's go Serverless!

Building Open Source Communities for AWS Serverless Developer Tools
Building Open Source Communities for AWS Serverless Developer ToolsBuilding Open Source Communities for AWS Serverless Developer Tools
Building Open Source Communities for AWS Serverless Developer Tools
Amazon Web Services
 
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
GRUC
 
Enterprise software needs a PaaS
Enterprise software needs a PaaSEnterprise software needs a PaaS
Enterprise software needs a PaaS
hmalphettes
 
Intalio create and cloudfoudry - short
Intalio create and cloudfoudry - shortIntalio create and cloudfoudry - short
Intalio create and cloudfoudry - short
hmalphettes
 

Similaire à Montréal AWS Users United: Let's go Serverless! (20)

Serverless Toronto User Group - Let's go Serverless!
Serverless Toronto User Group - Let's go Serverless!Serverless Toronto User Group - Let's go Serverless!
Serverless Toronto User Group - Let's go Serverless!
 
From DevOps to NoOps
From DevOps to NoOpsFrom DevOps to NoOps
From DevOps to NoOps
 
Building Open Source Communities for AWS Serverless Developer Tools
Building Open Source Communities for AWS Serverless Developer ToolsBuilding Open Source Communities for AWS Serverless Developer Tools
Building Open Source Communities for AWS Serverless Developer Tools
 
[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment
 
Platform engineering 101
Platform engineering 101Platform engineering 101
Platform engineering 101
 
Jak nie zwariować z architekturą Serverless?
Jak nie zwariować z architekturą Serverless?Jak nie zwariować z architekturą Serverless?
Jak nie zwariować z architekturą Serverless?
 
Serverless brewbox
Serverless   brewboxServerless   brewbox
Serverless brewbox
 
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
Webcast Presentation: Be lean. Be agile. Work together with DevOps Services (...
 
APIdays Paris 2018 - Cloud computing - we went through every steps of the Gar...
APIdays Paris 2018 - Cloud computing - we went through every steps of the Gar...APIdays Paris 2018 - Cloud computing - we went through every steps of the Gar...
APIdays Paris 2018 - Cloud computing - we went through every steps of the Gar...
 
agile microservices @scaibo
agile microservices @scaiboagile microservices @scaibo
agile microservices @scaibo
 
Architecting Cloud Computing Solutions with Java [1.1]
Architecting Cloud Computing Solutions with Java [1.1]Architecting Cloud Computing Solutions with Java [1.1]
Architecting Cloud Computing Solutions with Java [1.1]
 
AWS DevOps: Introduction to DevOps on AWS
  AWS DevOps: Introduction to DevOps on AWS  AWS DevOps: Introduction to DevOps on AWS
AWS DevOps: Introduction to DevOps on AWS
 
Come costruire un'architettura Serverless nel Cloud AWS
Come costruire un'architettura Serverless nel Cloud AWSCome costruire un'architettura Serverless nel Cloud AWS
Come costruire un'architettura Serverless nel Cloud AWS
 
Enterprise software needs a PaaS
Enterprise software needs a PaaSEnterprise software needs a PaaS
Enterprise software needs a PaaS
 
Intalio create and cloudfoudry - short
Intalio create and cloudfoudry - shortIntalio create and cloudfoudry - short
Intalio create and cloudfoudry - short
 
Developing Microservices Directly in AKS/Kubernetes
Developing Microservices Directly in AKS/KubernetesDeveloping Microservices Directly in AKS/Kubernetes
Developing Microservices Directly in AKS/Kubernetes
 
When to use serverless computing.pdf
When to use serverless computing.pdfWhen to use serverless computing.pdf
When to use serverless computing.pdf
 
Stop calling everything serverless!
Stop calling everything serverless!Stop calling everything serverless!
Stop calling everything serverless!
 
When to use serverless computing.pdf
When to use serverless computing.pdfWhen to use serverless computing.pdf
When to use serverless computing.pdf
 
Arquitetando soluções de computação em nuvem com Java
Arquitetando soluções de computação em nuvem com JavaArquitetando soluções de computação em nuvem com Java
Arquitetando soluções de computação em nuvem com Java
 

Plus de Daniel Zivkovic

Opinionated re:Invent recap with AWS Heroes & Builders
Opinionated re:Invent recap with AWS Heroes & BuildersOpinionated re:Invent recap with AWS Heroes & Builders
Opinionated re:Invent recap with AWS Heroes & Builders
Daniel Zivkovic
 
Intro to Vertex AI, unified MLOps platform for Data Scientists & ML Engineers
Intro to Vertex AI, unified MLOps platform for Data Scientists & ML EngineersIntro to Vertex AI, unified MLOps platform for Data Scientists & ML Engineers
Intro to Vertex AI, unified MLOps platform for Data Scientists & ML Engineers
Daniel Zivkovic
 
This is my Architecture to prevent Cloud Bill Shock
This is my Architecture to prevent Cloud Bill ShockThis is my Architecture to prevent Cloud Bill Shock
This is my Architecture to prevent Cloud Bill Shock
Daniel Zivkovic
 
Azure for AWS & GCP Pros: Which Azure services to use?
Azure for AWS & GCP Pros: Which Azure services to use?Azure for AWS & GCP Pros: Which Azure services to use?
Azure for AWS & GCP Pros: Which Azure services to use?
Daniel Zivkovic
 
Serverless Evolution during 3 years of Serverless Toronto
Serverless Evolution during 3 years of Serverless TorontoServerless Evolution during 3 years of Serverless Toronto
Serverless Evolution during 3 years of Serverless Toronto
Daniel Zivkovic
 

Plus de Daniel Zivkovic (20)

All in AI: LLM Landscape & RAG in 2024 with Mark Ryan (Google) & Jerry Liu (L...
All in AI: LLM Landscape & RAG in 2024 with Mark Ryan (Google) & Jerry Liu (L...All in AI: LLM Landscape & RAG in 2024 with Mark Ryan (Google) & Jerry Liu (L...
All in AI: LLM Landscape & RAG in 2024 with Mark Ryan (Google) & Jerry Liu (L...
 
Canadian Experts Discuss Modern Data Stacks and Cloud Computing for 5 Years o...
Canadian Experts Discuss Modern Data Stacks and Cloud Computing for 5 Years o...Canadian Experts Discuss Modern Data Stacks and Cloud Computing for 5 Years o...
Canadian Experts Discuss Modern Data Stacks and Cloud Computing for 5 Years o...
 
Opinionated re:Invent recap with AWS Heroes & Builders
Opinionated re:Invent recap with AWS Heroes & BuildersOpinionated re:Invent recap with AWS Heroes & Builders
Opinionated re:Invent recap with AWS Heroes & Builders
 
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
 
Conversational Document Processing AI with Rui Costa
Conversational Document Processing AI with Rui CostaConversational Document Processing AI with Rui Costa
Conversational Document Processing AI with Rui Costa
 
How to build unified Batch & Streaming Pipelines with Apache Beam and Dataflow
How to build unified Batch & Streaming Pipelines with Apache Beam and DataflowHow to build unified Batch & Streaming Pipelines with Apache Beam and Dataflow
How to build unified Batch & Streaming Pipelines with Apache Beam and Dataflow
 
Gojko's 5 rules for super responsive Serverless applications
Gojko's 5 rules for super responsive Serverless applicationsGojko's 5 rules for super responsive Serverless applications
Gojko's 5 rules for super responsive Serverless applications
 
Retail Analytics and BI with Looker, BigQuery, GCP & Leigha Jarett
Retail Analytics and BI with Looker, BigQuery, GCP & Leigha JarettRetail Analytics and BI with Looker, BigQuery, GCP & Leigha Jarett
Retail Analytics and BI with Looker, BigQuery, GCP & Leigha Jarett
 
What's new in Serverless at AWS?
What's new in Serverless at AWS?What's new in Serverless at AWS?
What's new in Serverless at AWS?
 
Intro to Vertex AI, unified MLOps platform for Data Scientists & ML Engineers
Intro to Vertex AI, unified MLOps platform for Data Scientists & ML EngineersIntro to Vertex AI, unified MLOps platform for Data Scientists & ML Engineers
Intro to Vertex AI, unified MLOps platform for Data Scientists & ML Engineers
 
Empowering Developers to be Healthcare Heroes
Empowering Developers to be Healthcare HeroesEmpowering Developers to be Healthcare Heroes
Empowering Developers to be Healthcare Heroes
 
Get started with Dialogflow & Contact Center AI on Google Cloud
Get started with Dialogflow & Contact Center AI on Google CloudGet started with Dialogflow & Contact Center AI on Google Cloud
Get started with Dialogflow & Contact Center AI on Google Cloud
 
Building a Data Cloud to enable Analytics & AI-Driven Innovation - Lak Lakshm...
Building a Data Cloud to enable Analytics & AI-Driven Innovation - Lak Lakshm...Building a Data Cloud to enable Analytics & AI-Driven Innovation - Lak Lakshm...
Building a Data Cloud to enable Analytics & AI-Driven Innovation - Lak Lakshm...
 
Smart Cities of Italy: Integrating the Cyber World with the IoT
Smart Cities of Italy: Integrating the Cyber World with the IoTSmart Cities of Italy: Integrating the Cyber World with the IoT
Smart Cities of Italy: Integrating the Cyber World with the IoT
 
Running Business Analytics for a Serverless Insurance Company - Joe Emison & ...
Running Business Analytics for a Serverless Insurance Company - Joe Emison & ...Running Business Analytics for a Serverless Insurance Company - Joe Emison & ...
Running Business Analytics for a Serverless Insurance Company - Joe Emison & ...
 
This is my Architecture to prevent Cloud Bill Shock
This is my Architecture to prevent Cloud Bill ShockThis is my Architecture to prevent Cloud Bill Shock
This is my Architecture to prevent Cloud Bill Shock
 
Lunch & Learn BigQuery & Firebase from other Google Cloud customers
Lunch & Learn BigQuery & Firebase from other Google Cloud customersLunch & Learn BigQuery & Firebase from other Google Cloud customers
Lunch & Learn BigQuery & Firebase from other Google Cloud customers
 
Azure for AWS & GCP Pros: Which Azure services to use?
Azure for AWS & GCP Pros: Which Azure services to use?Azure for AWS & GCP Pros: Which Azure services to use?
Azure for AWS & GCP Pros: Which Azure services to use?
 
Serverless Evolution during 3 years of Serverless Toronto
Serverless Evolution during 3 years of Serverless TorontoServerless Evolution during 3 years of Serverless Toronto
Serverless Evolution during 3 years of Serverless Toronto
 
Simpler, faster, cheaper Enterprise Apps using only Spring Boot on GCP
Simpler, faster, cheaper Enterprise Apps using only Spring Boot on GCPSimpler, faster, cheaper Enterprise Apps using only Spring Boot on GCP
Simpler, faster, cheaper Enterprise Apps using only Spring Boot on GCP
 

Dernier

Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
chiefasafspells
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
masabamasaba
 

Dernier (20)

Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
Love witchcraft +27768521739 Binding love spell in Sandy Springs, GA |psychic...
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] 🏥 Women's Abortion Clinic in T...
 
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
WSO2Con2024 - GitOps in Action: Navigating Application Deployment in the Plat...
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
Artyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptxArtyushina_Guest lecture_YorkU CS May 2024.pptx
Artyushina_Guest lecture_YorkU CS May 2024.pptx
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
WSO2CON 2024 - Navigating API Complexity: REST, GraphQL, gRPC, Websocket, Web...
 

Montréal AWS Users United: Let's go Serverless!

  • 1. Let's go Serverless! for AWS User Group
  • 2. Meetup - Wednesday July 11, 2018 Meetup Agenda 1. Intro & Announcements 2. Stand Up Introductions 3. Presentation: Let’s go Serverless! 4. Speaker: Daniel ZivKovic 5. Feedback, Discussions & Networking 2
  • 3. Usergroup Organizers & Sponsors ● Daniel ZivKovic, Solutions Architect, TriNimbus ● Serverless.com, Leading Serverless Application Framework ● TriNimbus, Recommended AWS Canada Partner ○ AWS Meetups in Vancouver, Toronto, Montreal, Ottawa, Victoria, Calgary, Edmonton, Waterloo & Quebec City ○ Offices in Vancouver, Calgary, Toronto, Montreal & Macedonia 3
  • 5. 1. What do you mean Serverless? 2. FaaS vs. Serverless vs. BaaS 3. How did we get here? Serverless past, present & future 4. Popular Use Cases 5. Serverless forecast: How big will serverless be? 6. Get going with The Serverless Framework – walkthrough 7. Products landscape – your Serverless options 8. Learning Serverless 9. Adopting it in your organization Let’s go Serverless – Presentation Agenda 5
  • 6. Even when people believe in the same idea (or “fight for the same thing”), we may see / interpret things differently based on our position (experiences or biases) to the prism (of life). Disclaimer – Serverless is charged term So, my position is AWS coloured – Orange ;) Where is yours? 6
  • 7. Servers exists, but developers do not have to worry about them ● Technology is serverless “the same way WiFi is wireless” ○ Gojko Adzic – http://bit.ly/2yQgwwb ● "Serverless is just a name. We could have called it Jeff" ○ said Paul Johnston, and started www.JeffConf.com ● "A Serverless solution is one that costs you nothing to run if nobody is using it (excluding data storage)" ○ Paul Johnston – http://bit.ly/2yRlhFO What do you mean Serverless? 7
  • 8. … for building Serverless apps FaaS – a new programming model… 8
  • 9. … unit of deployment and scaling is Function (as opposed to Application, Container, Virtual Server). FaaS is unique, because… 9
  • 10. Not all FaaS is Serverless: ● Kubeless is not serverless. Serverless contains a subset of FaaS, plus … other Backend Services that cost you nothing when not used (BaaS). 10
  • 11. Why I’m so excited about Serverless? • Information Technology Past • Present Opportunities • Promising Future 11
  • 12. ● Growing up, I liked to make models of ships, planes, trains… which translated into the love for creating software. ● Wanted to make useful programs, to help people around ● But, ended up spending more time administrating the computers behind, and making our products Highly Available, Scalability and Secure. ● Especially after Internet came! ● Software became complicated to make… and keep running. IT Past – Personal journey 12
  • 13. you gather the requirements, architect the solution, your design it, you build it… with pride! Building software products felt like when you want to build a locomotive… 13
  • 14. … it starts feeling as if you’re *stuck* feeding the steam locomotive with coal! (it’s just it was much colder in the data centers :) But then, when you put it to production… 14
  • 15. ● That was “my tainted” Developer’s View ● Now, the Operations View ○ In the beginning, IT had “You Build It, You Run It” – DevOps like culture, then ○ we invented the “Toss It Over the Fence” principle, and had Ops people deal with our (cr)app, maintain our computers, databases, networks… ○ which made developers happier/sloppier, but ○ was additional cost for the business/clients. Building vs. Maintaining Software 15
  • 16. “Toss It Over the Fence” SDLC principle ;) Building vs. Maintaining Software 16
  • 17. ● Business View As a business owner – you could either under-provision, or over-provision capacity: ○ You’d end up losing business – because your computers are overloaded, apps unreachable… ○ or losing money – if you over-provisioned capacity. So, Capacity Planning discipline/expense was born... Building vs. Maintaining Software 17
  • 18. … and I had my fair share of contributions to it – while at Sun Microsystems and in Dot-com days. Solving Capacity Planning & Performance Tuning problems became a science! 18
  • 19. ● We need software more than ever, but ● it became too complicated to make. Serverless wave came unexpectedly when Amazon launched AWS Lambda at re:Invent 2014 https://youtu.be/9eHoyUVo-yg ● Serverless isn't a new thing ● It came on the shoulders of giants (containers) ● It's just the next chapter in the same old journey towards simplicity – the evolution of Cloud Computing The Presence – The software is essential to solving humanity's problems 19
  • 21. … trying to get rid of some of this complicated stuff… … looking for higher-level abstractions… We were always striving for simplicity… 21
  • 22. … with some new qualities that we really like, for managed functions & serverless services in general. ● Dr. Tim Wagner – General Manager of AWS Lambda, Amazon API Gateway, and AWS Serverless App Repository captured this in “The Serverless Manifesto” So, we identified Serverless as the new level of abstraction… 22
  • 23. The Serverless Manifesto 1. Functions are the unit of deployment and scaling. 2. No machines, VMs, or containers visible in the programming model. 3. Permanent storage lives elsewhere. 4. Scales per request. Users cannot over- or under-provision capacity. 5. Never pay for idle (no cold servers/containers or their costs). 6. Implicitly fault tolerant because functions can run anywhere. 7. BYOC – Bring your own code. 8. Metrics and logging are a universal right. Serverless Compute Qualities 23
  • 24. ● Developers – makes their work more enjoyable cause they can focus on coding & solving the business problem at hand, rather than looking after the infrastructure. ● Business Owners – less building blocks to worry about & battles to fight, lower TCO. ● End Users – software becomes cheaper, because it is less expensive to build, deliver & maintain. ● In general – Serverless Architectures will enable scalable and cost-effective apps to be built faster. OK, But what are the Serverless benefits? 24
  • 25. As industry, we tried everything to increase the speed of software development… Latest of which is “sprinting” faster, in shorter 1-week “laps”… Building Apps Faster (in general) 25
  • 26. And that why Serverless excites me: It will allow us to fail faster, and eventually get to those good ideas we’ll have! Yet, software development is slow not because we are not “sprinting” fast enough, but because... 26 https://vimeo.com/206617354/a4f8a1f8e8
  • 27. when no one in the company dares to say the truth, that the project leads nowhere ;) Serverless brings hope, we’ll be able “put some clothes” (good ideas) on our “naked bosses”! Work in IT started to resemble “The Emperor's New Clothes” tale: 27 https://en.wikipedia.org/wiki/The_Emperor%27s_New_Clothes
  • 29. Functions are the glue AWS Lambda = a serverless, event-driven compute service Events are the state changes 29
  • 30. Invocation Types – Event source mapping 30
  • 31. Nicely continue microservices evolution of “breaking up the monolith” Serverless Microservices… Nanoservices 31
  • 32. 1. Customers 2. Amazon API Gateway 3. AWS Lambda 4. Amazon DynamoDB AWS Reference architecture for RESTful Microservices 32
  • 33. ● Web Applications ● Mobile Backends ● IoT ● Data Processing ○ Batch / ETL / ELT ○ Real-time data stream collection & manipulation ○ Big Data / Data Lakes ● IT Automation – DevOps ○ DIY: Load/Security Testing, Log Monitoring, Auditing, CI/CD ● Chatbots & Amazon Alexa Other popular Use Cases 33
  • 34. Do not use Serverless for: ● Mission critical apps (when human life depends on your app) – due to cold starts, not published or low SLA-s. ● Long atomic processes – they may timeout! Hard to find experienced engineers. “If all you have is a hammer, everything looks like a nail” – there are mis-use cases 34 Abraham Maslow, The Psychology of Science
  • 35. Serverless Future – Long-term Forecast 35
  • 36. What’s missing? ● Tooling ○ Better debugging and monitoring of serverless compute ● We need to tear down the walls between cloud-vendors ○ Monitor https://CloudEvents.io initiative by @CNCF ● Orchestration – some initial workflow engines already exist ○ AWS Step Functions, Azure Logic Apps, Oracle Fn Flow, Fission Workflows Serverless Future – Short-term Forecast 36
  • 37. Visualization of Microservices flow at Netflix… Serverless – Orchestration Forecast 37 … using Vizceral open-source tool
  • 38. That could become more intelligent, AI-based orchestration :) Serverless – Orchestration Forecast Doesn’t it remind you of the miracle of breathing? 38
  • 39. Getting Started with The Serverless Framework • AWS Lambda, using • Node.JS example 39
  • 40. The easiest way to serverless: ● Open-source CLI, written in NodeJS ● Provider-agnostic abstraction layer ● Function language-agnostic ● Plugin system to extend and hook into life-cycle events ● Easy workflow: ○ write Functions code, ○ package and… ○ deploy via CLI… ○ to your cloud provider of choice. What is The Serverless Framework? 40
  • 41. The Serverless Framework supports: Supported Infrastructure Providers 41
  • 42. AWS Lambda Supported Languages ● Node.js ● Python ● Java – slowest cold starts ● C# ● GO – shortest cold starts Amazon as Serverless Infrastructure 42
  • 43. Pre-requisites ● Cloud CLI tools installed & configured C:Servelress>aws configure AWS Access Key ID [****************TO2x]: AWS Secret Access Key [****************dj12]: Default region name [us-east-1]: Default output format [None]: ● NodeJS 6.10 or later Installed ● Node Package Manager (NPM) AWS Cloud Walkthrough 43
  • 44. $ npm install -g serverless $ serverless version $ sls create --template aws-nodejs -p toronto $ cd toronto $ code serverless.yml $ code handler.js Commands Executed 44
  • 47. $ sls deploy $ sls deploy list $ sls deploy list functions $ sls info $ sls invoke -f hello { "statusCode": 200, "body": "{"message":"Go Serverless v1.0! Your function executed successfully!","input":{}}" } Package, deploy, invoke 47
  • 48. it’s the URL ending with /dev/daniel Open the endpoint URL in a browser 48
  • 49. $ sls logs -f hello $ sls metrics $ sls remove Next, read up & play with: ● https://serverless.com/learn/quick-start/ ● https://serverless.com/framework/docs/providers/ More commands & resources 49
  • 50. From the AWS angle 1. Get any cloud certification to learn about the cloud in general & the services Lambdas can invoke / be invoked from: www.udemy.com/aws- certified-developer-associate/ (google Udemy coupons first!) 2. Watch Serverless talks from the last AWS re:Invent 2017 https://serverless.com/blog/serverless-guide-aws-reinvent-2017/ 3. Take “Production-Ready Serverless – Operational Best Practices” course by Yan Cui @theburningmonk https://www.manning.com/livevideo/production-ready-serverless 4. Connect with me – as I’m deep in the topic (just little AWS-biased) @DanielBookmarks or https://www.linkedin.com/in/magmainc/ or https://www.meetup.com/Serverless-Toronto/ Learning Serverless 50
  • 51. Migrate Jobs – not Apps ● Look for Batch jobs, ● Disconnected sub-systems exchanging files, that need to share state changes – e.g. update subscription preferences in CRM, upon Mass-mailing campaign executions. ● Jobs that can benefit from parallelization and streaming – file loaders, email processing, clickstream, trading data… Ideas for adopting Serverless at work 51
  • 52. Even when you’re not in the cloud try to apply Twelve-Factor App Methodology to build / refactor your apps: ● In general – https://12factor.net ● Serverless specific – by Chris Munns @chrismunns ○ slides https://www.slideshare.net/AmazonWebServices/twelve- factor-serverless-applications ○ video https://youtu.be/19SCqWGqtto Ideas for adopting Cloud-native at work 52
  • 54. @goServerless Montreal AWS Users Group @3nimbus 54
  • 55. Contact me when ready to apply: daniel@TriNimbus.com Guess What? @3Nimbus is hiring Cloud Solutions Architects, DevOps Engineers, Sales Executives Go to www.TriNimbus.com and click “Careers” 55