Discover Packages
knative.dev/eventing-natss
config
package
Version:
v0.44.0
Opens a new window with list of versions in this module.
Published: Jan 23, 2025
License: Apache-2.0
Opens a new window with license information.
Imports: 0
Opens a new window with list of imports.
Imported by: 0
Opens a new window with list of known importers.
README
README
¶
NATS Streaming Channels
JetStream channels are alpha-quality Channels that are backed by
JetStream .
They offer:
Persistence
If the Channel's Pod goes down, all events already ACKed by the Channel will
persist and be retransmitted when the Pod restarts.
Redelivery attempts
If downstream rejects an event, that request is attempted again. NOTE:
downstream must successfully process the event within one minute or the
delivery is assumed to have failed and will be reattempted.
They do not offer:
Ordering guarantees
Events seen downstream may not occur in the same order they were inserted
into the Channel.
Deployment steps
Setup Knative Eventing .
If not done already, install a JetStream Broker
Apply the NATSS configuration (from project root):
ko apply -f ./config
Create JetStream channels:
apiVersion: messaging.knative.dev/v1alpha1
kind: NatsJetStreamChannel
metadata:
name: channel-defaults
namespace: knative-eventing
Components
The major components are:
JetStream
JetStream Channel Controller
JetStream Channel Dispatcher
The JetStream Channel Controller is located in one Pod.
kubectl get deployment -n knative-eventing jetstream-ch-controller
The JetStream Channel Dispatcher receives and distributes all events. There is a
single Dispatcher for all JetStream Channels.
By default the components are configured to connect to NATS at
nats://nats.nats-io.svc.cluster.local:4222
.
Expand ▾
Collapse ▴
Documentation
¶
Package config is a placeholder that allows us to pull in config files
via go mod vendor.
Source Files
¶
Directories
¶
Package jetstream is a placeholder that allows us to pull in config files via go mod vendor.
Package jetstream is a placeholder that allows us to pull in config files via go mod vendor.
Package webhook is a placeholder that allows us to pull in config files via go mod vendor.
Package webhook is a placeholder that allows us to pull in config files via go mod vendor.
Click to show internal directories.
Click to hide internal directories.