跳至內容

事件來源

事件來源是由開發人員或叢集管理員建立的 Kubernetes 自訂資源 (CR),作為事件生產者和事件接收器之間的連結。接收器可以是 k8s 服務,包括 Knative 服務、通道或 Broker,用於接收來自事件來源的事件。

事件來源是透過從 Source 物件實例化 CR 來建立的。Source 物件定義了實例化 CR 所需的引數和參數。

所有 Source 都是 sources 類別的一部分。

您可以輸入 kn 命令,列出叢集上現有的事件來源

kn source list

您可以輸入命令,列出叢集上現有的事件來源

kubectl get sources

注意

從其他訊息技術(例如 Kafka 或 RabbitMQ)匯入事件的事件來源不負責設定可選屬性,例如 datacontenttype。這是原始事件生產者的責任;Source 只會在屬性存在時附加屬性。

Knative 來源

名稱 狀態 維護者 描述
APIServerSource 穩定 Knative 將 Kubernetes API 伺服器事件帶入 Knative。每次建立、更新或刪除 Kubernetes 資源時,APIServerSource 都會觸發一個新事件。
Apache CouchDB Alpha Knative Apache CouchDB 訊息帶入 Knative。
Apache Kafka 穩定 Knative Apache Kafka 訊息帶入 Knative。KafkaSource 從 Apache Kafka 叢集讀取事件,並將這些事件傳遞到接收器以便取用。如需更多詳細資料,請參閱 Kafka Source 範例。
CephSource Beta Knative Ceph 來源將來自 Ceph 格式的儲存桶通知轉換為 CloudEvents 格式,並將它們注入到 Knative 中。轉換邏輯遵循 AWS S3 儲存桶通知中描述的邏輯。
ContainerSource 穩定 Knative ContainerSource 會實例化可以產生事件的容器映像,直到刪除 ContainerSource 為止。例如,這可以用於輪詢 FTP 伺服器以尋找新檔案,或在設定的時間間隔產生事件。給定一個至少指定了容器映像的 spec.template,ContainerSource 會讓一個 Pod 使用指定的映像執行。K_SINK(目的地地址)和 KE_CE_OVERRIDES(JSON CloudEvents 屬性)環境變數會注入到正在執行的映像中。它被多個其他來源用作基礎架構。如需更多詳細資料,請參閱 Container Source 範例。
GitHub Beta Knative 註冊指定 GitHub 組織或存放庫中指定類型的事件,並將這些事件帶入 Knative。GitHubSource 會為選定的 GitHub 事件類型觸發一個新事件。如需更多詳細資料,請參閱 GitHub Source 範例。
GitLab Beta Knative 註冊指定 GitLab 存放庫中指定類型的事件,並將這些事件帶入 Knative。GitLabSource 會為指定的 事件類型建立 Webhook,偵聽傳入事件,並將它們傳遞給取用者。如需更多詳細資料,請參閱 GitLab Source 範例。
KogitoSource Alpha Knative Kogito Runtime 自訂資源的實作,由 Kogito Operator 管理。
PingSource 穩定 Knative 在指定的 Cron 排程上產生具有固定承載的事件。如需更多詳細資料,請參閱 Ping Source 範例。
RabbitMQ 穩定 Knative RabbitMQ 訊息帶入 Knative。
RedisSource Beta Knative 將 Redis Stream 帶入 Knative。
SinkBinding 穩定 Knative SinkBinding 可用於使用 Kubernetes 提供的任何熟悉運算抽象概念(例如 Deployment、Job、DaemonSet、StatefulSet)或 Knative 抽象概念(例如 Service、Configuration)來編寫新的事件來源。SinkBinding 提供了一個框架,用於將 K_SINK(目的地地址)和 K_CE_OVERRIDES(JSON cloudevents 屬性)環境變數注入到任何具有類似 Pod 的 spec.template (又稱 PodSpecable) 的 Kubernetes 資源中。如需更多詳細資料,請參閱 SinkBinding 範例。

協力廠商來源

名稱 狀態 維護者 描述
Amazon CloudWatch 穩定 TriggerMesh Amazon CloudWatch 收集指標。( 安裝 ) ( 範例 )
Amazon CloudWatch Logs 穩定 TriggerMesh 訂閱來自 Amazon CloudWatch Logs 串流的記錄事件。( 安裝 ) ( 範例 )
AWS CodeCommit 穩定 TriggerMesh 註冊由 AWS CodeCommit 原始碼存放庫發出的事件。( 安裝 ) ( 範例 )
Amazon Cognito Identity 穩定 TriggerMesh 註冊來自 Amazon Cognito 身分集區的事件。( 安裝 ) ( 範例 )
Amazon Cognito 使用者 穩定 TriggerMesh 註冊來自 Amazon Cognito 使用者集區的事件。( 安裝 ) ( 範例 )
Amazon DynamoDB 穩定 TriggerMesh Amazon DynamoDB 串流讀取記錄。( 安裝 ) ( 範例 )
Amazon Kinesis 穩定 TriggerMesh Amazon Kinesis 串流讀取記錄。( 安裝 ) ( 範例 )
Amazon S3 穩定 TriggerMesh 訂閱來自 Amazon S3 儲存桶的事件通知。( 安裝 ) ( 範例 )
Amazon SNS 穩定 TriggerMesh 訂閱來自 Amazon SNS 主題的訊息。( 安裝 ) ( 範例 )
Amazon SQS 穩定 TriggerMesh 取用來自 Amazon SQS 佇列的訊息。( 安裝 ) ( 範例 )
Apache Camel 穩定 Apache 軟體基金會 允許使用 Apache Camel 元件,將事件推送到 Knative 中。Camel 來源現在透過 Kamelets 作為 Apache Camel K 專案的一部分提供。
Azure 活動記錄 穩定 TriggerMesh Azure 活動記錄擷取活動記錄。( 安裝 ) ( 範例 )
Azure Blob 儲存體 穩定 TriggerMesh 訂閱來自 Azure Blob 儲存體帳戶的事件。( 安裝 ) ( 範例 )
Azure 事件方格 穩定 TriggerMesh Azure 事件方格擷取事件。( 安裝 ) ( 範例 )
Azure 事件中樞 穩定 TriggerMesh 取用來自 Azure 事件中樞的事件。( 安裝 ) ( 範例 )
Azure IoT 中樞 穩定 TriggerMesh 取用來自 Azure IoT 中樞的事件。( 安裝 ) ( 範例 )
Azure 佇列儲存體 穩定 TriggerMesh Azure 佇列儲存體擷取訊息。( 安裝 ) ( 範例 )
Azure 服務匯流排佇列 穩定 TriggerMesh 取用來自 Azure 服務匯流排佇列的訊息。( 安裝 ) ( 範例 )
Azure 服務匯流排主題 穩定 TriggerMesh 訂閱來自 Azure Service Bus 主題的消息。( 安裝 ) ( 範例 )
Debezium Alpha Debezium 以 CloudEvents 形式在 Knative 中使用資料庫變更。( knative 設定 )
Direktiv Alpha Direktiv 接收來自 Direktiv 的事件。
DockerHubSource Alpha Docker Hub Webhooks 擷取事件,並將其轉換為 CloudEvents 以在 Knative 中使用。
Google Cloud Audit Logs 穩定 TriggerMesh Google Cloud Audit Logs 擷取稽核日誌。( 安裝 ) ( 範例 )
Google Cloud Billing 穩定 TriggerMesh Google Cloud Billing 擷取預算通知。( 安裝 ) ( 範例 )
Google Cloud Pub/Sub 穩定 TriggerMesh 訂閱來自 Google Cloud Pub/Sub 主題的消息。( 安裝 ) ( 範例 )
Google Cloud Source Repositories 穩定 TriggerMesh 使用來自 Google Cloud Source Repositories 的事件。( 安裝 ) ( 範例 )
Google Cloud Storage 穩定 TriggerMesh Google Cloud Storage 儲存貯體擷取變更通知。( 安裝 ) ( 範例 )
HTTP Poller 穩定 TriggerMesh 定期從 HTTP/S URL 提取事件。( 安裝 ) ( 範例 )
Oracle Cloud Infrastructure 穩定 TriggerMesh Oracle Cloud Infrastructure 擷取指標。( 安裝 ) ( 範例 )
Salesforce 穩定 TriggerMesh 使用來自 Salesforce 通道的事件。( 安裝 ) ( 範例 )
Slack 穩定 TriggerMesh 訂閱來自 Slack 的事件。( 安裝 ) ( 範例 )
Twilio 支援 TriggerMesh 接收來自 Twilio 的事件。( 安裝 ) ( 範例 )
VMware Alpha VMware vSphere 事件帶入 Knative。
Webhook 穩定 TriggerMesh 使用 HTTP 從 Webhook 接收事件。( 安裝 ) ( 範例 )
Zendesk 穩定 TriggerMesh 訂閱來自 Zendesk 的事件。( 安裝 ) ( 範例 )

其他資源

我們使用分析和 Cookie 來了解網站流量。 您的網站使用資訊會與 Google 分享以用於該目的。了解更多。