Knative Serving

    The Knative Serving project provides middleware primitives that enable:

    • Rapid deployment of serverless containers
    • Automatic scaling up and down to zero
    • Routing and network programming for Istio components
    • Point-in-time snapshots of deployed code and configurations

    Knative Serving defines a set of objects as Kubernetes Custom Resource Definitions (CRDs). These objects are used to define and control how your serverless workload behaves on the cluster:

    • : The resource automatically manages the whole lifecycle of your workload. It controls the creation of other objects to ensure that your app has a route, a configuration, and a new revision for each update of the service. Service can be defined to always route traffic to the latest revision or to a pinned revision.
    • Route: The route.serving.knative.dev resource maps a network endpoint to one or more revisions. You can manage the traffic in several ways, including fractional traffic and named routes.
    • : The resource maintains the desired state for your deployment. It provides a clean separation between code and configuration and follows the Twelve-Factor App methodology. Modifying a configuration creates a new revision.
    • Revision: The revision.serving.knative.dev resource is a point-in-time snapshot of the code and configuration for each modification made to the workload. Revisions are immutable objects and can be retained for as long as useful. Knative Serving Revisions can be automatically scaled up and down according to incoming traffic. See for more information.

    Getting Started

    To get started with Serving, check out one of the sample projects. These projects use the resource, which manages all of the details for you.

    With the Service resource, a deployed service will automatically have a matching route and configuration created. Each time the is updated, a new revision is created.

    For more information on the resources and their interactions, see the Resource Types Overview in the Knative Serving repository.

    Debugging Knative Serving issues

    Known Issues

    See the page for a full list of known issues.

    Table of contents