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

Containers vs. Serverless

Containers vs. Serverless

Niko Köbler

March 22, 2018
Tweet

More Decks by Niko Köbler

Other Decks in Programming

Transcript

  1. ABOUT ME ▸ Freelance Consultant/Architect/Developer/Trainer @ www.n-k.de ▸ Doing stuff

    with & without computers, writing Software, ~ 20 yrs ▸ Co-Lead of JUG DA (https://www.jug-da.de / @JUG_DA) ▸ Speaker at international Tech Conferences ▸ Author of „Serverless Computing in AWS Cloud“
 serverlessbuch.de ▸ Twitter: @dasniko CONTAINERS VS. SERVERLESS
  2. FAAS ON CONTAINERS… ▸OpenFaaS ▸Fn Project ▸OpenWhisk ▸Knative CONTAINERS VS.

    SERVERLESS ▸Fission ▸Kubeless ▸…and probably many, many more!
  3. YOUR FUNCTION RUNNING IN A JVM PACKED INTO DOCKER DEPLOYED

    TO KUBERNETES ON TOP OF DC/OS MANAGED BY MESOS INSTALLED ON V I R T U A L M A C H I N E S C O N T R O L L E D B Y A HYPERVISOR RUNNING ON BARE METAL. Photo by Michael Johansson (http://www.michaeljohansson.com) …and I’m sure, I forgot a few layers!
  4. ARE YOUR CONTAINERS STABLE AND SECURE? Photo by Michael Johansson

    (http://www.michaeljohansson.com) http://www.diversity.net.nz/docker-and-some-serverless-ambitions/2017/11/09/
  5. Adrian Cockcroft
 (VP Cloud Architecture Strategy @ AWS) VENDOR LOCK?

    2 * VL << DIY! Image Source: Battery Ventures
  6. NO, JUST BECAUSE YOU ARE USING KUBERNETES, YOU ARE NOT

    AUTOMATICALLY CLOUD-NATIVE! CONTAINERS VS. SERVERLESS
  7. WHAT CLOUD-NATIVE ACTUALLY MEANS… ▸ Containerized
 Each part (applications, processes,

    etc) is packaged in its own container. This facilitates reproducability, transparency and resource isolation. ▸ Dynamically orchestrated
 Containers are actively scheduled and managed to optimize resource utilization. ▸ Microservices oriented
 Applications are segmented into microservices. This significantly increases the overall agility and maintainability of applications. ▸ …and there’s also a Serverless-WG in CNCF, which has released version 0.1 of CloudEvents (cloudevents.io)! CONTAINERS VS. SERVERLESS https://www.cncf.io/about/faq/
  8. CONTAINERS VS. SERVERLESS ADVANTAGES OF CONTAINERS ▸ Control and flexibility

    ▸ Vendor-agnostic ▸ Easier migration path ▸ Portability DISADVANTAGES OF CONTAINERS ▸ Administrative Work
 (e.g. apply security fixes for containers, etc.) ▸ Scaling is slower ▸ Running costs ▸ Hard to get started ▸ More manual intervention see also: https://serverless.com/blog/serverless-faas-vs-containers/
  9. CONTAINERS VS. SERVERLESS ADVANTAGES OF SERVERLESS ▸ Zero administration ▸

    Pay-per-execution ▸ Zero cost for idle time ▸ Auto-scaling ▸ Faster time-to-market ▸ Microservice nature
 -> clearer codebase separation ▸ Significantly reduced administration and maintenance burden DISADVANTAGES OF SERVERLESS ▸ No standardization (yet… -> CloudEvents) ▸ „Black box“ environment ▸ Vendor lock-in (yet…) ▸ Cold starts (yet…) ▸ Complex apps can be hard to build and manage see also: https://serverless.com/blog/serverless-faas-vs-containers/
  10. SERVERLESS IS NOT A QUESTION OF IF, IT’S A QUESTION

    OF WHEN! Simon Wardley
 (Advisor @ Leading Edge Forum) CONTAINERS VS. SERVERLESS