文件

儲存桶通知

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