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

DockerCon 2019: Opensource Summit Serverless

DockerCon 2019: Opensource Summit Serverless

Serverless is complementary technology running side-by-side containerization. In this session, using OpenFaas and Nuclio, panelists will present use cases via a series of demos and Q&A followed by birds of feather round table discussion. This session will go beyond hello world and highlight on-prem usage of serverless and containerization technologies and the real use cases in the enterprise.
Hosted by Rupak Ganguly - Solutions Architect, Docker with panelists:
Yaron Haviv - CTO, Iguazio | Burton Rheutan - DevOps Lead, OpenFaaS Core Contributor | Pav Jimanov - CEO, SoftwareDefined

Rupak Ganguly

May 02, 2019
Tweet

More Decks by Rupak Ganguly

Other Decks in Technology

Transcript

  1. RUPAK GANGULY
    Solutions Architect, Docker
    OSS Summit: Serverless
    @rupakg

    View Slide

  2. PAV JIMANOV
    Principal, SoftwareDefined
    Panelists: OpenFaaS
    BURTON RHEUTAN
    DevOps Lead, OpenFaaS Core Contributor
    @PavJimanov
    @_burtonr

    View Slide

  3. YARON HAVIV
    CTO, Iguazio
    @yaronhaviv
    Panelist: Iguazio

    View Slide

  4. Agenda
    Overview

    OpenFaaS

    • Presentation

    • Demo

    Iguazio

    • Presentation

    • Demo

    Q&A

    Roundtable discussion

    View Slide

  5. really…
    serverless?

    View Slide

  6. “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
    serverless?

    View Slide

  7. serverless and containers are
    complementary technologies
    Serverless vs. Containers

    View Slide

  8. OpenFaaS
    Burton Rheutan
    @_burtonr
    OpenFaaS Core Contributor
    118 118 Money DevOps Lead
    Pav Jimanov
    @PavJimanov
    2019 Dockercon
    Principal at SoftwareDefined
    Docker Captain

    View Slide

  9. The OpenFaaS Story
    • Began Nov ‘16
    • DockerCon Hack by Alex Ellis
    • Containers for Alexa on Swarm
    • Added to CNCF Landscape
    • 200+ Contributors
    • 29+ Production users
    • 2 Bossie Awards
    • 2017 & 2018

    View Slide

  10. https://kenfdev.o6s.io/contributors-page#/

    View Slide

  11. Core Values
    Operator
    Friendly
    Developer
    First
    Community
    Centric

    View Slide

  12. Function Templates
    ...and more!
    Template Store

    View Slide

  13. OpenFaaS Function
    $ faas new http-status –-lang python
    requests
    def handler(req):
    r = requests.get(req)
    return str(r.status_code)
    handler.py
    requirements.txt
    Python
    Template
    Docker
    Image
    Container
    Registry

    View Slide

  14. Event Connector
    Kafka
    OpenFaaS
    Gateway
    Function 2
    payment.created
    Kafka
    Connector
    invoke
    Function Topic
    Function 1 cart.checkout
    Function 2 payment.created
    cart.checkout
    payment.created
    Function 1
    cart.checkout

    View Slide

  15. Event Connector
    Kafka
    OpenFaaS
    Gateway
    Function 2
    payment.created
    Kafka
    Connector
    invoke
    Function Topic
    Function 1 cart.checkout
    Function 2 payment.created
    cart.checkout
    payment.created
    Function 1
    cart.checkout
    • CloudEvents
    • Kafka
    • HTTP
    • Cron
    • AWS SNS
    • Redis
    • MQTT
    • NATS
    • ...and more

    View Slide

  16. Serverless...on servers
    Image courtesy of Chris Watterson

    View Slide

  17. Serverless...on servers
    • Portable
    • Docker Swarm
    • Kubernetes
    • Hashicorp Nomad
    • AWS Fargate
    • Raspberry Pi (ARM)
    • Lightweight
    • Run in existing cluster
    • Separate namespaces (K8s)
    Image courtesy of Chris Watterson

    View Slide

  18. Architecture – Kubernetes native
    Gateway
    NATS
    Prometheus
    OpenFaaS
    Operator
    Function 1
    Function 2
    Ingress/LB
    Alert Manager
    CRD

    View Slide

  19. Production Users

    View Slide

  20. • Join the Community
    • https://docs.openfaas.com/community
    • Try out the workshop
    • https://github.com/openfaas/workshop
    • Support the project
    • https://opencollective.com/openfaas
    What’s Next

    View Slide

  21. Thank You!

    View Slide

  22. Local Operation with Swarm
    Function
    OpenFaaS
    Gateway
    VueJS UI
    C# API
    default network func_functions network

    View Slide

  23. Portability Demo
    OpenFaaS FaaS-netes
    Public Cloud
    Kubernetes
    FaaS-Lambda
    OpenFaaS
    AWS Lambda
    Docker EE
    Kubernetes
    FaaS-CLI

    View Slide

  24. YARON HAVIV
    CTO, iguazio
    Nuclio: Serverless for data
    and compute intensive tasks
    @yaronhaviv

    View Slide

  25. Main Challenge Today: How to Innovate & Iterate Faster
    Complex, Long Development
    ƒ Many moving parts, lack of skilled
    developers, scientists, and DevOps
    Production readiness
    ƒ Error-handling, security, logging, auto-
    scaling, live updates, ..
    Slow to respond or act
    ƒ High-latency, or fast but inaccurate
    ƒ Cloud latency/bandwidth barriers
    Modern Apps Today:
    Serverless
    Automate dev and ops
    High-performance
    Data, AI and app services
    Federated
    multi-cloud, on-prem or edge
    The Need:

    View Slide

  26. But, Serverless Comes With Challenges
    Slow performance, lack of concurrency
    Stateless, limited application patterns
    Limited number or cloud specific event sources
    Hard to debug and diagnose, build dependencies
    Cloud vendor API lock-in

    View Slide

  27. ƒ Non-blocking, parallel
    ƒ Zero copy, buffer reuse
    ƒ Up to 400K events/sec/proc
    ƒ GPU Support
    Nuclio: Taking Serverless to The Next Level
    Function
    Workers
    Event
    Listeners
    Open-source Serverless for compute and data
    intensive tasks, 100x faster than AWS Lambda !
    Extreme Performance
    Shard 1
    Workers
    Workers
    Shard 2
    Shard 3
    Shard 4 Workers
    Advanced Data & AI Features
    DB, MQ,
    File
    Functions
    ƒ Auto-rebalance, checkpoints
    ƒ Any source: Kafka, NATS, Kinesis, event-
    hub, iguazio, pub/sub, RabbitMQ, Cron, ..
    ƒ Jupyter, Spark, Rapids integration
    ƒ Data bindings
    ƒ Shared volumes
    ƒ Context cache
    Statefulness
    nuclio processor

    View Slide

  28. View Slide

  29. 5
    Best Match: Serverless + Kubernetes
    DBaaS
    Object (S3)
    • Cloud independent APIs, on-prem, edge
    • Auto-scaling + abstract infrastructure
    • One platform for serverless & containers
    • Abstraction: Auto generated code, Docker files & YAMLs
    • Automated dev & ops flow, observability
    • Maximizing performance and resource efficiency
    • Everything is a Kubernetes resource
    • “Serverless” data services
    • Endless scalability

    View Slide

  30. Demo: Build & Test
    an App in 2 min

    View Slide

  31. 7
    Main usage: Fast, Intelligent, Data Driven Apps
    Persistent Data and Computation Cluster
    Scalable & Open
    ML Pipeline
    Serverless
    Models & APIs
    Automated Collection
    & Pre-processing
    Monitor
    Intelligent &
    Interactive Apps
    Simple and
    self-service
    consumption
    Real-time and historical data
    Open
    Services
    Data Sources

    View Slide

  32. 8
    Demo: Real-Time Analysis of Financial Data
    RT Tweet
    Sentiment
    Analysis
    Tick feed
    Analysis
    & Tagging
    Real-time Dashboard
    News Stream
    viewer
    World Trading Data
    Data Exploration
    & Analysis
    • Enriched tweet stream
    • Stocks tables
    • Stocks + sentiment TSDB

    View Slide

  33. 9
    Auto-Healing Network Operations
    ƒ Replaced a complex Hadoop based data pipeline
    that was never productized
    ƒ Cross correlating real time data from multiple
    sources with historical data
    ƒ AI based predictions trigger pre-programmed
    actions that fix evolving problems in the network
    ƒ Implemented within weeks
    Predict and avoid network outages in real-time

    View Slide

  34. 10
    Demo: Predictive Infrastructure Monitoring
    NLP processing
    Of real-time
    logs
    Network
    data
    Exploration &
    Correlation
    ML Training,
    Model export
    Failure & Anomaly
    prediction
    Real-time
    telemetry
    Auto-deploy
    Real-time DB

    View Slide

  35. 11
    ƒ Eliminating scale, operations and cost challenges
    ƒ Nuclio comes with a bunch of advantages:
    o Make your apps faster and simpler
    o Support many data sources (not locked to cloud)
    o Comes in open source or fully managed flavors
    Serverless Is rapid dev & ops for microservices
    Summary
    My Email: [email protected]

    View Slide

  36. Roundtable Discussion

    View Slide

  37. Rate & Share
    Rate this session in the DockerCon
    App
    Follow: @rupakg, @pavjimanov
    @_burtonr @yaronhaviv
    Tweet: #DockerCon

    View Slide