|
||
---|---|---|
.. | ||
README.md |
README.md
Knative Events
Knative Events is a work-in-progress eventing system that is designed to address a common need for cloud native development:
- Services are loosely coupled during development and deployed independently
- A producer can generate events before a consumer is listening, and a consumer can express an interest in an event or class of events that is not yet being produced.
- Services can be connected to create new applications
- without modifying producer or consumer.
- with the ability to select a specific subset of events from a particular producer
The above concerns are consistent with the design goals of CloudEvents, a common specification for cross-service interoperability being developed by the CNCF Serverless WG.
System design notes
We’re following an agile process, starting from a working prototype that addresses a single use case and iterating to support additional use cases.
Knative Events depends on knative/serving and together with knative/build provides a complete serverless platform.
The primary goal of events is interoperability; therefore, we expect to provide common libraries that can be used in other systems to emit or consume events.
Naming
We'll be tracking the CloudEvents nomenclature as much as possible; however, that is in flux and many of the needed terms are outside of the current scope of the specification. We use the term "feed" to represent the concept of attaching an event (or filtered event stream via a "trigger) to an action.
Getting Started
Kubernetes Extensions
Eventing extends Kubernetes with Custom Resource Definitions (CRDs). The following Custom Resources (CRs) are used in the production and consumption of events:
Channels
- Bus, ClusterBus
- Channel
- Subscription
Feeds
- Feed
- EventSource
- EventType