Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Why & What of Serverless Computing

Why & What of Serverless Computing

Unraveling serverless computing and why you should give it a closer look. In this session at AITP Atlanta Meetup, I talk about the serverless movement, the trend, the hype, and what it really means. I talk about the evolution of architecture, the tenets of serverless computing, its use cases & challenges, security implications. I also touched upon the total cost of ownership and adoption of serverless computing in the industry.

Rupak Ganguly

May 16, 2019
Tweet

More Decks by Rupak Ganguly

Other Decks in Technology

Transcript

  1. @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.
  2. Rupak Ganguly technologist | enterprise architect | entrepreneur rupakganguly.com @rupakg

    Solutions Architect, Docker Inc.
  3. @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:
  4. The Serverless Movement trends and the hype

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

  6. @rupakg rupakganguly.com serverless definition serverless: though servers exists, the developer

    does not have to think about them
  7. @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
  8. 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
  9. @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
  10. @rupakg rupakganguly.com faas providers AWS Lambda Azure Functions Google Cloud

    Functions IBM Cloud Functions
  11. serverless architecture it’s all about events

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

  13. serverless architecture real-time stream processing

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

  15. Serverless Computing myths, benefits and qualities

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

    serverless computing FaaS qualities
  17. @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
  18. @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
  19. @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
  20. @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
  21. @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
  22. @rupakg rupakganguly.com event-driven • trigger & respond to events •

    http events (API Gateway) • webhook events • scheduled events • rich ecosystem of event sources
  23. Considerations use cases, challenges & security

  24. @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
  25. @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
  26. @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
  27. @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
  28. Serverless TCO is it really cost-effective?

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

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

  31. @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
  32. @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
  33. total cost of ownership https://theburningmonk.com/2019/01/you-are-thinking-about-serverless-costs-all-wrong/

  34. Adoption who are using serverless?

  35. @rupakg rupakganguly.com adoption serverless in production

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

  37. @rupakg rupakganguly.com serverless and containers are complementary technologies what about

    containers? live side-by-side
  38. @rupakg rupakganguly.com https://rupakganguly.com/posts/dockercon-2019-oss-serverless/

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