Successfully reported this slideshow.
Your SlideShare is downloading. ×

DevOps Fest 2019. Сергей Калинец. Building Next Generation Apps with Knative

DevOps Fest 2019. Сергей Калинец. Building Next Generation Apps with Knative

Knative is a collection of open source building blocks for serverless containers running on Kubernetes. It brings together two worlds: Kubernetes, as container management solution; and serverless, as the way the application developers want to run their code.
In this talk we will discuss the foundation the Knative is built on, it’s components and capabilities. We will see how it simplifies life of both developers and operators.
And of course we will check it in action. Come to this section to see the future of the service world.

Knative is a collection of open source building blocks for serverless containers running on Kubernetes. It brings together two worlds: Kubernetes, as container management solution; and serverless, as the way the application developers want to run their code.
In this talk we will discuss the foundation the Knative is built on, it’s components and capabilities. We will see how it simplifies life of both developers and operators.
And of course we will check it in action. Come to this section to see the future of the service world.

More Related Content

More from DevOps_Fest

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

DevOps Fest 2019. Сергей Калинец. Building Next Generation Apps with Knative

  1. 1. Building Next Generation Apps with Knative Serhiy Kalinets System Architect
  2. 2. About Me 18 years in the business Love to code System Architect @ Playtika
  3. 3. Kyiv ALT.NET
  4. 4. Microservice Challenges Security Resilience Availability Discoverability
  5. 5. Typical Approach
  6. 6. The 12 Factor App -All configuration via ENV -Processes for concurrency -Services listen to ports -Quick start, graceful shutdown -Log to stdout -Backing services as attached resources
  7. 7. Hosting Evolution Physical Servers Virtual Machines Cloud Containers Serverless
  8. 8. No servers – no troubles Pay for usage Cold Start Vendor Lock Serverless
  9. 9. Knative
  10. 10. The network should be transparent to applications. When network and application problems do occur it should be easy to determine the source of the problem.
  11. 11. Serving Request-driven compute runtime Scale-to-zero / scale out per load Deploy from container registry Multiple revisions of same app Route traffic across revisions
  12. 12. Build Pluggable model to build containers from source code Build in-cloud or on-cluster Push image to registry Templates available (e.g. Buildpacks)
  13. 13. Eventing Apps and functions consume and publish event streams Multiple event sources available Encourages asynchronous, loosely coupled architecture
  14. 14. Serving Resource Types Route – named endpoint used for routing Revision – snapshot of code + config Configuration – stream of envs for revisions Service – container for routes and configurations
  15. 15. Service Discovery
  16. 16. Serving – Deployment
  17. 17. Serving – Request Handling
  18. 18. Serving – Scaling Up
  19. 19. Serving – Scaling Down
  20. 20. Traffic Management
  21. 21. Serving – Routing
  22. 22. Serving – Routing
  23. 23. Serving – Routing
  24. 24. Serving – Routing
  25. 25. Knative Eventing
  26. 26. Sources KubernetesEventSource GitHubSource GcpPubSubSource AwsSqsSource ContainerSource CronJobSource KafkaSource …
  27. 27. Release
  28. 28. Build, publish, tag, deploy Just git push
  29. 29. Build Builds are running in Kubernetes Git pull during build time Build result is packaged as images into your registry Build templates are descriptions of how to build the code
  30. 30. Build
  31. 31. Typical Build Fetch the revision specified from GitHub and build it into a container Push the container to Docker Hub Create a new immutable revision for this version of the app Network programming to create a route, ingress, service, and load balance for your app Automatically scale your pods up and down (including to zero active pods)
  32. 32. What’s next? Riff Is For Functions Knative + CLI + Invokers
  33. 33. DEMO https://github.com/meteatamel/knative-tutorial
  34. 34. Thanks! kalinets@gmail.com twitter, github: @skalinets https://skalinets.github.io

Editor's Notes

  • Many instances span across multiple machines
    Scale up / scale down
    Rebalancing (moving instances from one machines to others)

×