Slide 1

Slide 1 text

@rupakg rupakganguly.com Why & What of Serverless unraveling serverless computing and why you should give it a closer look AITP Atlanta Meetup, Atlanta Rupak Ganguly May 16th, 2019 Solutions Architect, Docker Inc.

Slide 2

Slide 2 text

Rupak Ganguly technologist | enterprise architect | entrepreneur rupakganguly.com @rupakg Solutions Architect, Docker Inc.

Slide 3

Slide 3 text

@rupakg rupakganguly.com Why & What of Serverless unraveling serverless computing and why you should give it a closer look • The serverless movement • Evolution of architecture • Tenets of serverless computing • Use cases & challenges • Serverless TCO • Adoption in the enterprises We will look at:

Slide 4

Slide 4 text

The Serverless Movement trends and the hype

Slide 5

Slide 5 text

@rupakg rupakganguly.com the serverless movement Google Trends searches for ‘serverless’

Slide 6

Slide 6 text

@rupakg rupakganguly.com serverless definition serverless: though servers exists, the developer does not have to think about them

Slide 7

Slide 7 text

@rupakg rupakganguly.com “Serverless usually refers to an architectural pattern where the server side logic is run in stateless compute containers that are event-triggered, ephemeral and fully managed by third party.” - Martin Fowler of ThoughtWorks

Slide 8

Slide 8 text

evolution monolithic architecture bare-metal servers tightly coupled components, deployed as single-unit data centers service-oriented architecture bare-metal, VMs, IaaS decoupled components, deployed as web services cloud micro-services architecture shift from infrastructure mgmt. API centric, single responsibility services platform-as-a-service zero admin of infrastructure serverless architecture functions as unit of deployment functions-as-a-service how we got here

Slide 9

Slide 9 text

@rupakg rupakganguly.com serverless architecture shortest time to market greater developer productivity lowest total cost of ownership values applications run code in FaaS services and leverage other managed services

Slide 10

Slide 10 text

@rupakg rupakganguly.com faas providers AWS Lambda Azure Functions Google Cloud Functions IBM Cloud Functions

Slide 11

Slide 11 text

serverless architecture it’s all about events

Slide 12

Slide 12 text

serverless architecture it’s all about services http://blog.tonyfendall.com/2015/12/serverless-architectures-using-aws-lambda/

Slide 13

Slide 13 text

serverless architecture real-time stream processing

Slide 14

Slide 14 text

serverless architecture restaurant waiting list https://coderecipe.ai/architectures/96083665

Slide 15

Slide 15 text

Serverless Computing myths, benefits and qualities

Slide 16

Slide 16 text

@rupakg rupakganguly.com microservices zero administration FaaS pay-per-execution ecosystem auto-scaling event-driven serverless computing FaaS qualities

Slide 17

Slide 17 text

@rupakg rupakganguly.com zero administration • no servers to maintain • no OS upgrades, no patches • renewed role of devops teams • paradigm shift, no ssh • no control over infrastructure

Slide 18

Slide 18 text

@rupakg rupakganguly.com pay-per-execution • no paying for idle • upfront cost savings • micro-billing, per 100 ms * • 1 million requests free tier * • $0.20 per million requests post free tier * * AWS Lambda pricing

Slide 19

Slide 19 text

@rupakg rupakganguly.com microservices • promotes single responsibility principle based services • no more death stars, monolithic apps • varied language support • small, autonomous, polyglot teams • agility, quick & frequent deployments

Slide 20

Slide 20 text

@rupakg rupakganguly.com ecosystem • use provider services • use of third-party services • S3, Kinesis, SNS, SQS • DynamoDB, Firebase, GraphQL • Cognito, Auth0, Synk, PureSec • CloudWatch, X-Ray, IOPipe

Slide 21

Slide 21 text

@rupakg rupakganguly.com auto-scaling • auto scaling Lambda • auto scaling DynamoDB • based on load, throughput consumption • no need for auto-scaling group policies • enables high-availability

Slide 22

Slide 22 text

@rupakg rupakganguly.com event-driven • trigger & respond to events • http events (API Gateway) • webhook events • scheduled events • rich ecosystem of event sources

Slide 23

Slide 23 text

Considerations use cases, challenges & security

Slide 24

Slide 24 text

@rupakg rupakganguly.com use cases • real-time/streaming, batch processing: kinesis -> lambda • REST APIs, Graph APIs: lambda -> API Gateway endpoint • event-driven workflows, scheduled tasks, data transforms what are others building

Slide 25

Slide 25 text

@rupakg rupakganguly.com use cases • web, mobile & IoT backends • form processing • authentication • devops automation • chatbots • file manipulation • voice apps (Alexa) • ETL workloads • image resizing • video transcoding • security audits • dynamic websites • ecommerce stores • web hook listeners • CRON jobs • CI/CD pipelines • log analytics what are others building

Slide 26

Slide 26 text

@rupakg rupakganguly.com challenges • cold start latency, more with VPC • price at high volumes • developer experience • provider limits • fear of vendor lock-in • application lifecycle management • metrics & monitoring • service discovery • team collaboration • standardization it’s not all rosy

Slide 27

Slide 27 text

@rupakg rupakganguly.com security • Least privileges across resources • Reduce access to sensitive data, handle exceptions and validate input • Avoid embedding secrets, access keys and credentials in code • Throttle and define quotas • Encrypt data on the wire and data stored at rest • Scrutinize 3rd-party libraries & APIs for vulnerabilities • Be aware of new input/event sources guidelines & recommendations

Slide 28

Slide 28 text

Serverless TCO is it really cost-effective?

Slide 29

Slide 29 text

costs compared https://theburningmonk.com/2019/01/you-are-thinking-about-serverless-costs-all-wrong/

Slide 30

Slide 30 text

cost of solution https://theburningmonk.com/2019/01/you-are-thinking-about-serverless-costs-all-wrong/

Slide 31

Slide 31 text

@rupakg rupakganguly.com cost breakdown •direct costs: • pay-per-invocation (no paying for idle) • Lambda cost, service(s) cost, data transfer cost, API Gateway cost •personnel costs: • building a devops team is not cheap, and involves a huge learning curve. • ~ 100,000+ per year per engineer https://theburningmonk.com/2019/01/you-are-thinking-about-serverless-costs-all-wrong/ measurable costs

Slide 32

Slide 32 text

@rupakg rupakganguly.com •overhead costs: • delegate ops responsibilities to your cloud provider reduced responsibilities for devops team • frees developers to focus on building business functionality •opportunity costs: • ability to iterate faster & business can test ideas faster than competitors https://theburningmonk.com/2019/01/you-are-thinking-about-serverless-costs-all-wrong/ cost breakdown non-measurable costs

Slide 33

Slide 33 text

total cost of ownership https://theburningmonk.com/2019/01/you-are-thinking-about-serverless-costs-all-wrong/

Slide 34

Slide 34 text

Adoption who are using serverless?

Slide 35

Slide 35 text

@rupakg rupakganguly.com adoption serverless in production

Slide 36

Slide 36 text

adoption the CNCF serverless landscape https://landscape.cncf.io/format=serverless

Slide 37

Slide 37 text

@rupakg rupakganguly.com serverless and containers are complementary technologies what about containers? live side-by-side

Slide 38

Slide 38 text

@rupakg rupakganguly.com https://rupakganguly.com/posts/dockercon-2019-oss-serverless/

Slide 39

Slide 39 text

@rupakg rupakganguly.com it’s a wrap thank you. questions?