Enterprise-grade Serverless on your own terms.
Understanding Knative
“If Kubernetes is an electrical grid, then Knative is its light switch.”
—Kelsey Hightower, Google Cloud Platform
Knative is an automated system that helps development teams manage and maintain processes in Kubernetes. Its purpose is to simplify, automate, and monitor deployments of Kubernetes so teams spend less time on maintenance and more time on app development and projects. Knative takes over repetitive and time-intensive tasks while removing obstacles and delays.
Knative does this through two features. The first is Knative Eventing. Eventing allows developers to set up detailed actions triggered by specific events within a broader environment. The second is Knative Serving, which automatically manages the creation and scaling of services through Kubernetes, including scaling down to zero. Each of these features aims to free up resources that teams would otherwise spend managing systems. They also save businesses money by reacting to conditions in real — time. Meaning, companies only pay for the resources they are using, not the ones they might use.
Scale to Zero is a feature of Knative Serving that automatically turns off services running in containers when there is no demand for them. Instead of running programs on standby, they can be turned off and turned back on when needed again. Scale to zero reduces costs over time and helps manage technical resources.
The core idea behind Knative is to allow teams to harness the power of serverless application deployment. Serverless refers to managing cloud-based servers and virtual machines, often hosted on platforms like AWS, Google Cloud, Microsoft Azure, and more. Serverless is a great option for companies looking to move away from the costly endeavor of managing their own servers and infrastructure.
“I often think of Knative as part of ‘Serverless 2.0.’ It combines the good things about serverless with a loosening of constraints around execution time and availability of resources.”
-Michael Behrendt, Distinguished Engineer and Chief Architect of Serverless and Cloud Functions for IBM.
IBM is a committed sponsor of Knative
Knative in the broader ecosystem
To understand Knative more fully, it is important to know that it exists in a larger ecosystem of services that work together. For example, Knative acts as a framework on top of Kubernetes that helps build a serverless platform. Kubernetes itself is a system that orchestrates the creation and running of containers used in app deployment, scaling, and more. Those contain ers can run anything, from simple tools written in python to complex Al systems. Containers were developed to help tackle the problem of complexity. As development teams build software products, they create massive codebases. Left unorganized, those codebases can become gigantic and confusing-even for those who make them. Containers solve this problem by breaking codebases into small, self-contained processes that can interact to do work. They also help developers manage complex webs of dependencies like APIs and databases. These containers are easier to maintain for teams looking to work fast while maintaining best practices.
Knative’s value in DevOps
DevOps promises effective application development processes with faster deployments and fewer bugs. While Kubernetes helps facilitate this, it can produce significant complexity. Achieving value at scale with Kubernetes traditionally involves teams developing specialized knowledge. Knative cuts down on that by providing a serverless experience that removes the need for all development team members to know or understand the ins and outs of Kubernetes.
“What we are doing with Knative is to provide a developer experience that makes it easier to focus on code. Cloud developers focus on the business problems they are solving without having to coordinate or wait for approvals from platform teams to scale their apps. Knative is a framework that helps automate platform capabilities so your apps can scale as if they were running on Serverless compute.”
-Aparna Sinha, Director of Product Management, Google
Tangible benefits of Knative for teams
It has always been true that organizations need to develop and innovate faster than their competition while deploying products with fewer flaws. However, being bogged down by configuring networks and operating systems harms developer productivity and morale. Developers want to create things, and Knative helps them do that.
“The amount of internal work needed to use Knative is minuscule”
-Tilen Kavčič, Backend Developer for Outfit7, which uses Knative for key backend system
The advantage of Open Source
Open source has been a powerful resource for creating business solutions for decades. Kubernetes and Knative are now paving the way for that relationship to become stronger. Each project has significant support from some of the biggest names in tech including IBM, Google, Redhat, and VMware. The Kubernetes and Knative ecosystem consists of widely adopt ed projects that are proven across many installations for a multitude of uses. The open-source foundation of Knative means that anyone using the platform can participate in the community to get help, solve problems, and influence the direction of deployment for future versions.
Find out more
> Case Studies: Read about organizations using Knative, from platform developers to proven companies to innovative startups
> Check the getting started guide to get up and running with Knative in an afternoon
> Join the Knative Slack to talk to the community