Platform Glossary

Knative

Category:

Definition

Knative is an open-source platform built on Kubernetes that provides serverless workload management capabilities: automatic scaling (including scale-to-zero), traffic splitting between revisions, and event-driven service routing.

Detailed Explanation

Knative was created by Google and open-sourced in 2018. It has two main components:

**Knative Serving** Manages stateless request-driven workloads. Key capabilities: - **Revisions**: Immutable snapshots of application configuration. Every deploy creates a new revision. - **Routes**: Defines how traffic is split between revisions (e.g., 90% v2, 10% v3 for canary deployments). - **Configurations**: The desired state of the service, generating new revisions on change. - **Autoscaler (KPA)**: Knative's pod autoscaler tracks concurrent request counts and scales pods up/down. When requests drop to zero, it scales to zero and activates the Activator. - **Activator**: Buffers incoming requests while a pod is starting from zero.

**Knative Eventing** A messaging system for cloud-native event routing using CloudEvents. Less commonly used in PaaS contexts.

**Knative Serving architecture:**

``` Internet → Ingress Gateway (Kourier/Istio/Contour) ↓ Knative Activator (if scaled to zero) ↓ Running Pod(s) ← KPA monitors request count ```

**Why Knative matters for PaaS:**

Knative gives platforms like Kubeletto a production-grade serverless primitive on top of Kubernetes. Instead of building autoscaling, traffic routing, and rollback from scratch, platforms implement Knative primitives and focus on the developer experience layer.

How Kubeletto provides Knative

Kubeletto's container runtime is built on Knative Serving. Every deployed application is a Knative Service. Kubeletto's control plane creates and updates Knative Configuration objects; Knative generates Revisions; Knative Routes manage traffic. Kourier is the ingress gateway. The KPA handles all autoscaling. This is why Kubeletto can offer sub-second rollbacks, scale-to-zero, and revision history without custom orchestration logic.

Frequently Asked Questions

Do I need to know Knative to use Kubeletto?

No. Kubeletto abstracts Knative entirely. You interact with Kubeletto's UI and CLI; the Knative layer is invisible to users.

What is the Knative Activator?

The Knative Activator is a component that intercepts HTTP requests destined for scaled-to-zero pods, holds them in a queue, signals the autoscaler to start a pod, and forwards the queued requests once the pod is ready.

How does Knative compare to AWS Lambda?

Both handle scale-to-zero serverless workloads, but Knative runs full OCI containers with no execution time limits, while Lambda runs function handlers with a 15-minute limit. Knative supports any HTTP server; Lambda requires a specific handler interface.

See Knative in action

Deploy your first app on Kubeletto — free during our active beta.