文件

儲存桶通知

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