Eventing Source
Eventing Source
https://knative.dev/docs/eventing/sources/
事件源是 Kubernetes 自定义资源,它提供了一种机制用于注册特定软件系统对某一类事件的兴趣。由于不同的事件源可能由不同的自定义资源来描述,本页面提供了可用的源资源类型的索引以及安装说明的链接。
这是为Knative提供的非详尽的事件来源列表。
包含在这个列表中并不意味着认可,也不意味着任何程度的支持。
Sources
这些都是作为CRD安装的source。
Name | Status | Support | Description |
---|---|---|---|
AWS SQS | 概念验证 | None | Brings AWS Simple Queue Service messages into Knative. |
Apache Camel | 概念验证 | None | Allows to use Apache Camel components for pushing events into Knative. |
Apache CouchDB | 积极开发中 | None | Brings Apache CouchDB messages into Knative. |
Apache Kafka | 概念验证 | None | Brings Apache Kafka messages into Knative. |
BitBucket | 概念验证 | None | Registers for events of the specified types on the specified BitBucket organization/repository. Brings those events into Knative. |
CloudAuditLogsSource | 积极开发中 | None | Registers for events of the specified types on the specified Google Cloud Audit Logs. Brings those events into Knative. |
CloudPubSubSource | 积极开发中 | None | Brings Cloud Pub/Sub messages into Knative. |
CloudSchedulerSource | 积极开发中 | None | Create, update, and delete Google Cloud Scheduler Jobs. When those jobs are triggered, receive the event inside Knative. |
CloudStorageSource | 积极开发中 | None | Registers for events of the specified types on the specified Google Cloud Storage bucket and optional object prefix. Brings those events into Knative. |
被PingSource替代 | None | Deprecated, replace with PingSource or a CronJob using SinkBinding | |
GitHub | 概念验证 | None | Registers for events of the specified types on the specified GitHub organization/repository. Brings those events into Knative. |
GitLab | 概念验证 | None | Registers for events of the specified types on the specified GitLab repository. Brings those events into Knative. |
Kubernetes | 积极开发中 | Knative | 将Kubernetes API服务器事件引入Knative。 |
Ping | 发展中 | None | 使用内存中的定时器,按照指定的cron计划产生具有固定有效载荷的事件。 |
VMware | 积极开发中 | None | Brings vSphere events into Knative. |
Meta Sources
这些虽然不能直接使用,但可以让写Source变得更容易。
Name | Status | Support | Description |
---|---|---|---|
Auto Container Source | 概念验证 | None | AutoContainerSource是一个控制器,它允许Source CRD不需要控制器。它注意到具有特定标签的CRD并开始控制该类型的资源。它利用Container Source作为底层基础设施。 |
Container Source | 积极开发中 | Knative | 给定一个至少指定了容器镜像的 spec.template,ContainerSource 将使用指定的镜像运行 Pod 。K_SINK(目标地址)和KE_CE_OVERRIDES(JSON CloudEvents属性)环境变量被注入到运行的镜像中。它被其他多个Sources用作底层基础设施。 |
Sample Source | 积极开发中 | Knative | Used as reference implementation supporting Writing an Event Source from Scratch tutorial. |
SinkBinding | 积极开发中 | Knative | SinkBinding提供了一个框架,用于将K_SINK(目标地址)和K_CE_OVERRIDES(JSON cloudevents属性)环境变量注入到任何Kubernetes资源中,这些资源的 spec.template 看起来像Pod(又名PodSpecable)。 |
ContainerSource Containers
Source Containers
这些都是打算和ContainerSource一起使用的容器。
Name | Status | Support | Description |
---|---|---|---|
AWS CodeCommit | Supported | TriggerMesh | 在指定的AWS CodeCommit仓库中注册指定类型的事件。将这些事件带入Knative。 |
AWS Cognito | Supported | TriggerMesh | 注册AWS Cognito事件。将这些事件带入Knative。 |
AWS DynamoDB | Supported | TriggerMesh | 注册指定的AWS DynamoDB表上的事件。将这些事件带入Knative。 |
AWS Kinesis | Supported | TriggerMesh | 注册指定AWS Kinesis stream上的事件。将这些事件带入Knative。 |
AWS SNS | Supported | TriggerMesh | 注册指定AWS SNS端点的事件。将这些事件带入Knative。 |
AWS SQS | Supported | TriggerMesh | 注册指定AWS SQS队列的事件。将这些事件带入Knative。 |
FTP / SFTP | Proof of concept | None | 监视上传到FTP/SFTP的文件,并为这些文件生成事件。 |
Heartbeat | Proof of Concept | None | 使用内存中的定时器,以指定的时间间隔产生事件。使用AutoContainerSource作为底层基础设施。 |
Heartbeats | Proof of Concept | None | 使用内存中的定时器以指定的时间间隔产生事件。 |
K8s | Proof of Concept | None | 将Kubernetes集群事件引入Knative。使用AutoContainerSource作为基础设施。 |
WebSocket | Active Development | None | 向指定的源打开WebSocket,并将每个收到的消息打包为Knative事件。 |
SinkBindings
这些都是打算与SinkBinding一起使用的容器。
Name | Status | Support | Description |
---|---|---|---|
Konnek | Active Development | None | 从云平台(如AWS和GCP)检索事件,并将其转化为CloudEvents在Knative中消费。 |