Knative, the enterprise-grade serverless platform, has just hit a significant milestone with the release of version 1.0. To celebrate this achievement, let's explore how Knative simplifies the developer experience on Kubernetes. We'll also discuss how you can use Red Hat OpenShift Serverless Functions to deliver serverless, event-driven applications.
Knative features and benefits
The Knative open source serverless community project, which includes collaboration from Red Hat, IBM, and Google, is built on top of the Kubernetes container orchestration platform and helps abstract the complex details of the underlying infrastructure from developers. This simplifies the Kubernetes experience and frees up valuable time, allowing them to do what they do best: Code!
Knative provides a number of infrastructure and developer-centric efficiencies, such as making it easier to autoscale applications based on utilization—both up, down, and all the way to zero instances. This frees up costly underlying compute resources that can be utilized by other workloads running on the Kubernetes platform.
Other notable features include:
- Concurrency controls.
- Reproducible deployments (revisions) with traffic-splitting abilities.
- Rollbacks.
- Out-of-the-box telemetry.
In short, Knative is the abstraction layer that elevates Kubernetes for developers.
The Knative and Red Hat OpenShift Serverless connection
Red Hat has been part of the Knative project since it was released on GitHub back in 2018 and is a significant contributor to the project, having integrated Knative into its Kubernetes-based Red Hat OpenShift hybrid cloud platform.
Red Hat OpenShift Serverless includes Knative's serverless deployment and eventing capabilities. You can install the operator with a single click via the web-based OpenShift management interface. In addition to providing a command-line interface (CLI), OpenShift Serverless augments Knative with a richly integrated developer console.
Eventing and autoscaling
Run container-based application serverless instances by taking advantage of the autoscaling provided by the serverless capabilities. You can also build event-driven microservice applications or functions using the Knative Eventing components. These components, such as Source, Channel and Subscription, and Broker and Trigger, let you build event-driven serverless applications and functions that can communicate with events coming from heterogeneous sources.
Serverless functions
The OpenShift Serverless team has worked hard over the past 12 months to extend the capabilities of Knative with the introduction of Red Hat OpenShift Serverless Functions.
Available in tech preview for all current OpenShift 4.x versions, Serverless Functions dramatically improve developer speed and efficiency in many runtime environments, including Node.js, Python, Quarkus, TypeScript, Rust, and Go.
With the provided kn
CLI, you can jump-start function projects with function templates and build and deploy them to an OpenShift cluster in a single step. This further abstracts the underlying infrastructure, reduces programming complexity for developers, and eliminates the need for developers to create container images for deployment manually.
Note: For an overview of serverless functions, see Create your first serverless function with Red Hat OpenShift Serverless Functions.
Stateless functions are triggered by the Knative Eventing subsystem, empowering developers to create functions as part of an event-driven architecture. The increased programming simplicity lets even non-developers such as data scientists create and deploy functions in a rich, low-code experience.
Red Hat's open source commitment to Knative
In Red Hat's continued commitment to the open source community, it has donated the OpenShift Serverless Functions capability to the Knative community project, where it's currently part of the Knative sandbox organization on GitHub.
Get started with Knative and OpenShift Serverless
You can try OpenShift Serverless for yourself by accessing the free Developer Sandbox for Red Hat OpenShift. Getting up and running couldn't be easier!
To learn more about Knative and Red Hat OpenShift Serverless, check out the following links:
- Read the Knative 1.0 release announcement.
- Explore resources on the Knative website.
- Download the e-book: Knative Cookbook
- Get an overview of Red Hat OpenShift Serverless.
- Refer to the Red Hat OpenShift Serverless documentation.