serving

module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 17, 2018 License: Apache-2.0

README

Welcome, Knative

Knative (pronounced /ˈnā-tiv/) extends Kubernetes to provide the missing building blocks that developers need to create modern, source-centric, container-based, cloud-native applications.

Each of the components under the Knative project attempt to identify common patterns and codify the best practices shared by successful real-world Kubernetes-based frameworks and applications, such as:

  • orchestrating source-to-container workflows
  • routing and managing traffic during deployment
  • scaling and sizing resources based on demand
  • binding running services to eventing ecosystems

Knative focuses on the "boring but difficult" parts that everyone needs, but no one benefits from doing over again on their own. This in turn frees developers to spend more time writing application code, not worrying about how they are going to build, deploy, monitor, and debug it.

What are the Knative components?

Currently, Knative consists of the following top-level repositories:

  • build and build-templates — automatic, repeatable server-side container builds
  • serving — scale to zero, request-driven compute
  • eventing — management and delivery of events

We expect this list to grow as more areas are identified.

How do I use Knative?

You can choose to install individual Knative components following the instructions in each repo, or install a pre-built suite of components by following the instructions at docs/install.

Read an overview of the Knative Serving resource types.

Who is Knative for?

Knative is being created with several personas in mind.

Developers

Knative components offer Kubernetes-native APIs for deploying functions, applications, and containers to an auto-scaling runtime.

To get started as a developer, pick a Kubernetes cluster of your choice and follow the Knative installation instructions to get the system up and running and run some sample code. The install instructions also include a sample application which demonstrates some of the key features of Knative.

To join the conversation, head over to https://groups.google.com/d/forum/knative-users.

Operators

Knative components are intended to be integrated into more polished products that cloud service providers or in-house teams in large enterprises can then operate.

Any enterprise or cloud provider can adopt Knative components into their own systems and pass the benefits along to their customers.

Contributors

With a clear project scope, lightweight governance model and clean lines of separation between pluggable components, the Knative project establishes an efficient contributor workflow.

Knative is a diverse, open, and inclusive community. To get involved, see CONTRIBUTING.md and DEVELOPMENT.md and join the #community Slack channel.

Your own path to becoming a Knative contributor can begin anywhere. Bug reports and friction logs from new developers are especially welcome.

Directories

Path Synopsis
cmd
pkg
apis/istio/v1alpha3
+k8s:deepcopy-gen=package +groupName=networking.istio.io
+k8s:deepcopy-gen=package +groupName=networking.istio.io
apis/serving/v1alpha1
+k8s:deepcopy-gen=package +groupName=serving.knative.dev
+k8s:deepcopy-gen=package +groupName=serving.knative.dev
autoscaler
Package autoscaler calculates the number of pods necessary for the desired level of concurrency per pod (stableConcurrencyPerPod).
Package autoscaler calculates the number of pods necessary for the desired level of concurrency per pod (stableConcurrencyPerPod).
configmap
Package configmap exists to facilitate consuming Kubernetes ConfigMap resources in various ways, including:
Package configmap exists to facilitate consuming Kubernetes ConfigMap resources in various ways, including:
controller/configuration/resources
Package resources holds simple functions for synthesizing child resources from a Configuration resource and any relevant Configuration controller configuration.
Package resources holds simple functions for synthesizing child resources from a Configuration resource and any relevant Configuration controller configuration.
controller/configuration/resources/names
Package names holds simple functions for synthesizing resource names.
Package names holds simple functions for synthesizing resource names.
controller/revision/config
Package config holds the typed objects that define the schemas for assorted ConfigMap objects on which the Revision controller depends.
Package config holds the typed objects that define the schemas for assorted ConfigMap objects on which the Revision controller depends.
controller/revision/resources
Package resources holds simple functions for synthesizing child resources from a Revision resource and any relevant Revision controller configuration.
Package resources holds simple functions for synthesizing child resources from a Revision resource and any relevant Revision controller configuration.
controller/revision/resources/names
Package names holds simple functions for synthesizing resource names.
Package names holds simple functions for synthesizing resource names.
controller/route/config
Package config holds the typed objects that define the schemas for assorted ConfigMap objects on which the Route controller depends.
Package config holds the typed objects that define the schemas for assorted ConfigMap objects on which the Route controller depends.
controller/route/resources
Package resources holds simple functions for synthesizing child resources from a Route resource and any relevant Route controller configuration.
Package resources holds simple functions for synthesizing child resources from a Route resource and any relevant Route controller configuration.
controller/route/resources/names
Package names holds simple functions for synthesizing resource names.
Package names holds simple functions for synthesizing resource names.
controller/service/resources
Package resources holds simple functions for synthesizing child resources from a Service resource and any relevant Service controller configuration.
Package resources holds simple functions for synthesizing child resources from a Service resource and any relevant Service controller configuration.
controller/service/resources/names
Package names holds simple functions for synthesizing resource names.
Package names holds simple functions for synthesizing resource names.
controller/testing
Package testing includes utilities for testing controllers.
Package testing includes utilities for testing controllers.
h2c
e2e
third_party
h2c
Package h2c implements the h2c part of HTTP/2.
Package h2c implements the h2c part of HTTP/2.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL