Knative is a new open source project that’s generating a lot of excitement in the Kubernetes and Serverless communities. It’s a great fit for application developers, especially those who already use Kubernetes, allowing them to focus more on their business logic and less on infrastructure.
Knative is a collaboration from IBM, Google, Pivotal, Red Hat, Cisco, and others, and is built on top of Istio and Kubernetes. Knative is made up of two primitives for enabling serverless applications on Kubernetes: Serving and Eventing. The Serving component supports serving your applications, managing traffic, and routing and autoscaling. Eventing enables you to create event producers and consumers for your applications. These components attempt to identify common patterns and best practices for others to use and build upon.
Two of the key Knative personas are developers and platform providers. Developers can use Knative directly (or through an API) to build Serverless applications on top of Kubernetes. Platform providers can use the Knative primitives to build their own Serverless platform on Kubernetes.
This tutorial is a quick overview of Knative and its various features and components. Go check out the link at the end of this page to see a set of exercises. When you complete the exercises, you will know how to:
- Create a new cluster on the IBM Cloud Kubernetes Service.
- Install Knative to your Kubernetes cluster.
- Deploy a Node.js application to Knative, which scales up when in use and then scales back down to zero when no longer in use.
- Explore the Knative client (kn) to easily deploy your application to Knative.
- Explore Tekton Pipelines for building a CI/CD pipeline.