Intro to Serverless

Intro to Serverless

Spreading the magic of serverless! How did we get here? Evolution of cloud models and architectures. Tenets of serverless computing. Use cases and challenges. Comparing costs for serverless vs traditional setup.

E40e0d06ed05f17385dee72a56cfda48?s=128

Rupak Ganguly

January 15, 2019
Tweet

Transcript

  1. @rupakg rupakganguly.com Intro to Serverless basic understanding of serverless computing

    and why you should be interested Jan 15th, 2019 IT Workshop, Atlanta Rupak Ganguly
  2. Rupak Ganguly technologist | enterprise architect | entrepreneur rupakganguly.com @rupakg

  3. @rupakg rupakganguly.com Intro to Serverless basic understanding of serverless computing

    and why you should be interested • Evolution • Tenets of serverless computing • Use cases & challenges • Serverless costs compared We will look at:
  4. Evolution serverless in context

  5. @rupakg rupakganguly.com data centers monolithic architecture bare-metal servers tightly coupled

    components, deployed as single-unit
  6. @rupakg rupakganguly.com cloud service-oriented architecture bare-metal, VMs, IaaS decoupled components,

    deployed as web services
  7. @rupakg rupakganguly.com platform-as-a-service micro-services architecture shift away from infrastructure management

    API centric, single responsibility services
  8. @rupakg rupakganguly.com functions-as-a-service serverless architecture zero administration of infrastructure functions

    as unit of deployment
  9. 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. serverless architecture it’s all about events

  11. Serverless Computing myths, benefits and qualities

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

    does not have to think about them
  13. @rupakg rupakganguly.com faas providers AWS Lambda Azure Functions Google Cloud

    Functions IBM Cloud Functions
  14. @rupakg rupakganguly.com microservices zero administration FaaS pay-per-execution ecosystem auto-scaling event-driven

    serverless computing FaaS qualities
  15. @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
  16. @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
  17. @rupakg rupakganguly.com microservices • promotes single responsibility principle based services

    • no more death stars, monolithic apps • varied language support • small, autonomous, polygot teams • agility, quick & frequent deployments
  18. @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
  19. @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
  20. @rupakg rupakganguly.com event-driven • trigger & respond to events •

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

  22. @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
  23. @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
  24. @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 • web hook listeners • CRON jobs • CI/CD pipelines • log analytics what are others building
  25. @rupakg rupakganguly.com challenges • cold start latency, more with VPC

    • price at high volumes • developer experience • limitations • fear of vendor lock-in • application lifecycle management • metrics & monitoring • service discovery • team collaboration • standardization it’s not all rosy
  26. Serverless TCO is it really cost-effective?

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

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

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

  32. @rupakg rupakganguly.com resources • Blog: rupakganguly.com • Projects: github.com/rupakg •

    Serverless Blog: serverless.com • Serverless Framework: https://github.com/serverless/ serverless further reading
  33. @rupakg rupakganguly.com it’s a wrap thank you for coming