What is Knative?
@christianposta
Christian Posta
Chief Architect, cloud application development
Twitter: @christianposta
Blog: http://blog.christianposta.com
Slides: http://slideshare.net/ceposta
• Author “Microservices for Java developers”
and “Introducing Istio Service Mesh”
• Committer/contributor lots of open-source projects
• Blogger, speaker, mentor, leader
Kubernetes
Established primitives for deploying and managing
container workloads at scale
Istio
How workloads interact with each other over
the network in a secure, reliable, observable way
Knative
“PaaS” like abstractions on top of Kubernetes that
leverage Istio and raise the level of abstraction for
specifying, running, and modifying applications
Is Knative “Severless”?
Well… WTF is “serverless”?
@christianposta
@christianposta
Serverless: outsourcing core infrastructure services to
cloud providers and stitching it all together through APIs
(and functions) to deliver business value
Service Full?
https://www.slideshare.net/jedi4ever/from-serverless-to-service-full-how-the-role-of-devops-is-evolving
● Per-request billing / pay as you go
● Typically accessed via APIs
● You don’t own it or care how it’s implemented
● Agreed SLAs
● Explicit choice, with tradeoffs, to not own the technology to
run your business
Service-full
● New, smaller unit of compute
● Executed on demand, typically in response to events
● Used to glue together APIs, services
● Concurrency, scale, spin up/spin down, etc done by platform
● High utilization rates (wrt billing – pay for what you use)
Functions (FaaS)
● Agility
● Flexibility (opinionatedness)
● Cost/utilization
● Technology ownership
● Complexity
Tradeoffs across these (at least spectrums):
When to use Serverless, Functions,
Microservices, Monoliths?
@christianposta
^^^ Save this for after 
Back to Knative…
@christianposta
Knative is building blocks for a PaaS
@christianposta
Knative operates on containers. Those
containers can be anything. Can they be
functions? Can you build FaaS on Knative?
@christianposta
Let’s take a look at one of the “building
blocks”…
@christianposta
Let’s take a look at these building blocks
@christianposta
Knative Serving: Allow our compute utilization
to be driven by request load (think:
autoscaler)
and scale to zero when no load
Knative Eventing: Composing services and
compute resources via events to build staged
event driven architectures
Knative Build: Converting source packages
into runnable containers
Knative Pipelines: Leverage Knative Build and
Knative Events to abstract away CI/CD
implementations on top of Kubernetes
Knative Caching: Simple API for providing
caching to Knative components (TBD - still
being sorted out).
Those most mature of the building blocks is
Knative serving
@christianposta
@christianposta
@christianposta
@christianposta
@christianposta
Thanks!
BTW: Hand drawn diagrams made with Paper by FiftyThree.com 
Twitter: @christianposta
Blog: http://blog.christianposta.com
Email: christian@redhat.com
Slides: http://slideshare.net/cepostaFollow up links:
• http://blog.christianposta.com
• http://istio.io
• http://envoyproxy.io
• http://linkerd.io
• http://consul.io
• http://bit.ly/istio-tutorial
• http://blog.christianposta.com/istio-workshop/slides/

Intro to Knative

Editor's Notes

  • #4 How many people are embarking on projects to drive innovation in their organizations? How many people think those projects will succeed? How many people can predict the future? How many people believe their organization’s executives can predict the future?
  • #11 …… new challenge….. Let’s come back to that…..