Knative is a Kubernetes-based serverless framework that creates a cloud-native, cross-platform orchestration standard for serverless applications. Container Service for Kubernetes (ACK) Knative is fully compatible with open source Knative and integrates with ACK, message services, storage services, and networking services to deliver production-ready serverless capabilities on Kubernetes.
What ACK Knative solves
Running serverless workloads on Kubernetes requires manually managing pods, services, deployments, ingress resources, event routing, and scaling policies — adding significant operational overhead. ACK Knative addresses this by providing:
-
Automatic scaling, including scale-to-zero when no workload is processed
-
Event-driven architecture with asynchronous event routing that decouples event producers from consumers
-
Developer productivity through a function framework that removes the need to manage Kubernetes, container, or Knative infrastructure directly
Core components
ACK Knative consists of three components. Use them independently or together based on your workload requirements.
Knative Serving
An autoscaling container runtime for serverless workloads. Knative Serving handles the full lifecycle of your serverless services — deployment, traffic routing, and scaling.
Key features:
-
Pod auto scaling based on incoming traffic, including scale-to-zero when no workload is processed
-
Canary release with traffic splitting across revisions
-
Custom domain names and HTTPS certificate support
-
gRPC service deployment
Knative Eventing
An asynchronous event routing layer that decouples event producers from consumers. Producers can emit events before consumers are running, and consumers can subscribe to event classes before producers start generating them.
Key features:
-
Event ingestion, registry, subscription, filtering, and triggering
-
Integration with EventBridge for event-driven architectures
-
Loose coupling: connect services without modifying producers or consumers
Knative Function
A developer-focused function framework. Deploy stateless, event-driven functions as Knative Services without managing the underlying Kubernetes, container, or Knative infrastructure.
Prerequisites
To deploy Knative in a registered cluster, the following requirements must be met:
-
A registered cluster is created, and a self-managed Kubernetes cluster running Kubernetes 1.18 or later is connected to the registered cluster. For more information, see Create a registered cluster.
-
A kubectl client is connected to the registered cluster. For more information, see Obtain the kubeconfig file of a cluster and use kubectl to connect to the cluster.
-
Only self-managed Kubernetes clusters in the Calico route reflection mode or the Cilium Border Gateway Protocol (BGP) route mode are supported.