文件

儲存桶通知

MinIO 儲存桶通知允許管理員在特定物件或儲存桶事件上將通知傳送到支援的外部服務。MinIO 支援類似於 Amazon S3 事件通知 的儲存桶和物件層級 S3 事件。

支援的通知目標

MinIO 支援將事件通知發佈到下列目標

目標

描述

AMQP (RabbitMQ)

將通知發佈到 AMQP 服務,例如 RabbitMQ

如需教學課程,請參閱 發佈事件至 AMQP (RabbitMQ)

MQTT

將通知發佈到 MQTT 服務。

如需教學課程,請參閱 發佈事件至 MQTT

NATS

將通知發佈到 NATS 服務。

如需教學課程,請參閱 發佈事件至 NATS

NSQ

將通知發佈到 NSQ 服務。

如需教學課程,請參閱 發佈事件至 NSQ

Elasticsearch

將通知發佈到 Elasticsearch 服務。

如需教學課程,請參閱 發佈事件至 Elasticsearch

Kafka

將通知發佈到 Kafka 服務。

如需教學課程,請參閱 發佈事件至 Kafka

MySQL

將通知發佈到 MySQL 服務。

請參閱將事件發佈到 MySQL 以取得教學。

PostgreSQL

將通知發佈到 PostgreSQL 服務。

請參閱將事件發佈到 PostgreSQL 以取得教學。

Redis

將通知發佈到 Redis 服務。

請參閱將事件發佈到 Redis 以取得教學。

webhook

將通知發佈到 Webhook 服務。

請參閱將事件發佈到 Webhook 以取得教學。

非同步與同步儲存桶通知

新版本於 RELEASE.2023-06-23T20-26-00Z 新增:MinIO 支援所有遠端目標的非同步(預設)或同步儲存桶通知。

使用非同步傳遞時,MinIO 會在設定的遠端觸發事件,並且在繼續下一個事件之前不會等待回應。非同步儲存桶通知優先考慮傳送事件,但如果遠端目標在傳輸或處理過程中發生暫時性問題,則存在某些事件遺失的風險。

使用同步傳遞時,MinIO 會在設定的遠端觸發事件,然後等待遠端確認已成功接收,然後再繼續下一個事件。同步儲存桶通知優先考慮事件傳遞,但存在事件傳送速率較慢和佇列填滿的風險。

若要為所有設定的遠端目標啟用同步儲存桶通知,請使用下列任一設定

注意

對於同步和非同步事件,MinIO 會維護每個遠端的佇列,其中儲存未傳送和擱置的事件。佇列限制預設為 100000

當佇列已滿時,MinIO 會捨棄新的事件。

您可以根據需要增加佇列大小,以更好地適應 MinIO 部署和遠端目標的事件傳送和處理速率。使用通知方法的 QUEUE_LIMIT 環境變數或設定設定來修改此限制。

對於非同步事件,MinIO 允許最多 50000 個並行的 send 呼叫。

支援的 S3 事件類型

MinIO 儲存桶通知與 Amazon S3 事件通知 相容。此章節列出所有支援的事件。

物件事件

MinIO 支援在下列 S3 物件事件上觸發通知

s3:ObjectAccessed:Get
s3:ObjectAccessed:GetLegalHold
s3:ObjectAccessed:GetRetention
s3:ObjectAccessed:Head
s3:ObjectCreated:CompleteMultipartUpload
s3:ObjectCreated:Copy
s3:ObjectCreated:DeleteTagging
s3:ObjectCreated:Post
s3:ObjectCreated:Put
s3:ObjectCreated:PutLegalHold
s3:ObjectCreated:PutRetention
s3:ObjectCreated:PutTagging
s3:ObjectRemoved:Delete
s3:ObjectRemoved:DeleteMarkerCreated

指定萬用字元 * 以選取與前置詞相關的所有事件

s3:ObjectAccessed:*

選取所有以 s3:ObjectAccessed 開頭的事件。

s3:ObjectCreated:*

選取所有以 s3:ObjectCreated 開頭的事件。

s3:ObjectRemoved:*

選取所有以 s3:ObjectRemoved 開頭的事件。

複寫事件

MinIO 支援在下列 S3 複寫事件上觸發通知

s3:Replication:OperationCompletedReplication
s3:Replication:OperationFailedReplication
s3:Replication:OperationMissedThreshold
s3:Replication:OperationNotTracked
s3:Replication:OperationReplicatedAfterThreshold

指定萬用字元 * 以選取所有 s3:Replication 事件

s3:Replication:*

ILM 轉換事件

MinIO 支援在下列 S3 ILM 轉換事件上觸發通知

s3:ObjectRestore:Post
s3:ObjectRestore:Completed
s3:ObjectTransition:Failed
s3:ObjectTransition:Complete

指定萬用字元 * 以選取與前置詞相關的所有事件

s3:ObjectTransition:*

選取所有以 s3:ObjectTransition 開頭的事件。

s3:ObjectRestore:*

選取所有以 s3:ObjectRestore 開頭的事件。

掃描器事件

MinIO 支援在下列 S3 掃描器 轉換事件上觸發通知

s3:Scanner:ManyVersions

掃描器 會尋找具有超過 1,000 個版本的物件。

s3:Scanner:BigPrefix

掃描器 會尋找具有超過 50,000 個子資料夾的前置詞。

全域事件

MinIO 支援在下列全域事件上觸發通知。您只能透過 ListenNotification API 監聽這些事件

s3:BucketCreated
s3:BucketRemoved