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. 1.

    @geshan From 0 to working serverless URL for a containerized

    app Geshan Manandhar Senior Software Engineer THE ICONIC
  2. 2.

    @geshan whoami Geshan Manandhar • Senior Software Engineer • Tech

    solution provider • Conditional microservices believer 2
  3. 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
  4. 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
  5. 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
  6. 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
  7. 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
  8. 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
  9. 27.

    27 Control Ease / Abstraction Virtual Machine (VM) Containers PAAS

    Serverless Serverless Containers Cloud Spectrum - the sweet spot
  10. 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
  11. 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
  12. 32.

    @geshan 32 Performance comparison Cloud Run Vs Google Cloud functions

    10 Requests/sec for 30 seconds with vegeta Cloud Run Cloud Functions
  13. 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
  14. 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