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

From 0 to working serverless url for a containerized app with google cloud run

From 0 to working serverless url for a containerized app with google cloud run

Ever wondered if you could run your web application container on a serverless platform? Wait no further with the recent Google cloud run release it is already possible. You can get from 0 to a working serverless URL for a containerized app in no time. Till now there was nothing that married the goodness of serverless with container's ease. Cloud run also makes deploying new versions very easy with its web interface. This talk will be a run through of deploying and running a simple nodejs app on google cloud run in a matter of minutes.

1b031ccbf968811f157cf7a892dddfed?s=128

Geshan Manandhar

August 27, 2019
Tweet

Transcript

  1. @geshan From 0 to working serverless URL for a containerized

    app Geshan Manandhar Senior Software Engineer THE ICONIC
  2. @geshan whoami Geshan Manandhar • Senior Software Engineer • Tech

    solution provider • Conditional microservices believer 2
  3. I am from Kathmandu, Nepal

  4. I work for THE ICONIC (Tech)

  5. @geshan Agenda • What is serverless? Why serverless? • Containers

    and why use them • Current serverless FAAS offering • Cloud Spectrum • Google cloud run (Serverless + Containers = Bliss) • Demo • Performance comparison (Serverless vs FAAS) 5
  6. What is serverless?

  7. @geshan “ Serverless was first used to describe applications that

    significantly or fully incorporate third-party, cloud-hosted applications and services, to manage server-side logic and state - BAAS. Mike Roberts, Symphonia 7
  8. @geshan “ Serverless can also mean applications where server-side logic

    is still written by the application developer, but, unlike traditional architectures, it’s run in stateless compute containers that are event-triggered, ephemeral (may only last for one invocation), and fully managed by a third party. - FAAS. Mike Roberts, Symphonia 8
  9. Time for Serverless?

  10. PHP community were doing serverless decades ago :)

  11. PHP community were doing serverless decades ago :)

  12. PHP community were doing serverless decades ago :)

  13. Why use serverless?

  14. @geshan Reasons to use Serverless • Server management is not

    necessary • Cost based on precise usage (by the second) • Inherently scalable (load based autoscaling) • Implicit high availability • Quick deployments and updates (Functions) • Faster to reach a working application (time to market) 14
  15. Focus on your application (code), not the infrastructure

  16. @geshan Serverless (FAAS) Offering (Big 3) 16

  17. Source: https:/ /faasandfurious.com/91 There are still servers, you don’t have

    to manage them.
  18. What are containers?

  19. @geshan “ A container is a standard unit of software

    that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another. - Docker.com 19
  20. Why use containers?

  21. @geshan Why use Containers/Docker? • Ship the whole stack with

    dependencies - reproducibility • Efficient resource usage - scale horizontally • Better isolation (cgroups) • Faster initialization and execution • Cloud provider agnostic (K8s) • Dev Side - Quicker onboarding - productive on day 1 21
  22. Decrease the distance between Dev and Ops -- SRE

  23. Vs Source: https:/ /faasandfurious.com/46

  24. Vs Source: https:/ /faasandfurious.com/46

  25. Serverless and container evolution in the cloud

  26. 26 Control Ease / Abstraction Virtual Machine (VM) Containers PAAS

    Serverless Cloud Spectrum
  27. 27 Control Ease / Abstraction Virtual Machine (VM) Containers PAAS

    Serverless Serverless Containers Cloud Spectrum - the sweet spot
  28. @geshan Google Cloud Run • Cloud Run is a managed

    compute platform that automatically scales your stateless containers. • Cloud Run is serverless: it abstracts away all infrastructure management, so you can focus on what matters most — building great applications. 28
  29. @geshan Cloud Run advantages • No need to learn a

    new paradigm/framework • Run any language/framework/binary -- as it runs containers (not fixed runtimes) • Serverless and fully managed ◦ Cloud Run on GKE can be self managed (Knative) • Https URL out of the box (custom domains possible) • The Google Cloud toolset goodness :) • Getting from 0 to working URL is relatively easy 29
  30. Serverless + Containers = Bliss :)

  31. @geshan @geshan https:/ /github.com/geshan/currency-api Demo time 31

  32. @geshan 32 Performance comparison Cloud Run Vs Google Cloud functions

    10 Requests/sec for 30 seconds with vegeta Cloud Run Cloud Functions
  33. @geshan 33 Thanks! Any questions? THE ICONIC is hiring. I

    blog at Geshan.com.np and you can follow me @geshan , this slide is at bit.ly/zero-to-url-gcr
  34. @geshan Credits/references • https:/ /martinfowler.com/articles/serverless.html • https:/ /www.cloudflare.com/learning/serverless/why-use-serverless/ • https:/

    /hackernoon.com/what-is-serverless-architecture-what-are-its-pros-and-cons-cc4b804022e9 • https:/ /pixabay.com/photos/sea-cumulus-cloud-boat-clouds-84629/ • https:/ /pixabay.com/photos/computer-computer-code-screen-1209641/ • https:/ /faasandfurious.com/46 - Tribal warfare Serverless vs Containers • https:/ /pixabay.com/photos/hamburg-port-of-hamburg-3021820/ • https:/ /techbeacon.com/app-dev-testing/3-reasons-why-you-should-always-run-microservices-apps-c ontainers • https:/ /pixabay.com/photos/chimpanzee-monkey-ape-mammal-zoo-3703230/ • https:/ /www.youtube.com/watch?v=q9Wa5KJURec • https:/ /pixabay.com/photos/connect-connection-cooperation-20333/ • https:/ /www.bbva.com/en/serverless/ • https:/ /docs.google.com/spreadsheets/d/1mYbr5FH7nScDQwVjKhJj3rtk9M-9LzBppBKi_cq3BEw/edit?us p=sharing - Serverless Comparison Sheet • https:/ /pixabay.com/photos/clouds-cumulus-sky-nature-dramatic-2329680/ • https:/ /medium.com/@keithwhor/rise-of-functions-as-a-service-how-php-set-the-serverless-stage-20- years-ago-ccb560c5f422 • https:/ /withinboredom.info/2018/12/23/serverless-from-a-php-developers-experience/ • https:/ /twitter.com/noidi/status/886101144866615296 • https:/ /news.ycombinator.com/item?id=16407290 • https:/ /www.gartner.com/smarterwithgartner/top-trends-in-the-gartner-hype-cycle-for-emerging-techn ologies-2017/ 34