文件

Redis 通知設定

此頁面記錄了將 Redis 服務設定為 Bucket 通知目標的設定。請參閱 將事件發佈到 Redis 以取得有關使用這些設定的教學課程。

您可以透過定義以下方式建立或修改設定

  • 在啟動或重新啟動 MinIO 伺服器之前,主機系統上的環境變數。請參閱作業系統的文件,了解如何定義環境變數。

  • 使用 mc admin config set 使用的組態設定

  • 使用 MinIO 主控台管理員 > 設定頁面的組態設定

如果您同時定義環境變數和類似的組態設定,MinIO 將使用環境變數值。

某些設定僅具有環境變數或組態設定,但兩者皆無。

重要

每個組態設定控制基本的 MinIO 行為和功能。MinIO 強烈建議在套用至生產環境之前,先在較低的環境(例如 DEV 或 QA)中測試組態變更。

多個 Redis 目標

您可以透過將唯一識別碼 _ID 附加到每組相關 Redis 設定的頂層金鑰末尾,來指定多個 Redis 服務端點。例如,以下命令將兩個不同的 Redis 服務端點分別設定為 PRIMARYSECONDARY

set MINIO_NOTIFY_REDIS_ENABLE_PRIMARY="on"
set MINIO_NOTIFY_REDIS_REDIS_ADDRESS_PRIMARY="redis-endpoint.example.net:9200"
set MINIO_NOTIFY_REDIS_KEY_PRIMARY="bucketevents"
set MINIO_NOTIFY_REDIS_FORMAT_PRIMARY="namespace"


set MINIO_NOTIFY_REDIS_ENABLE_SECONDARY="on"
set MINIO_NOTIFY_REDIS_REDIS_ADDRESS_SECONDARY="redis-endpoint2.example.net:9200"
set MINIO_NOTIFY_REDIS_KEY_SECONDARY="bucketevents"
set MINIO_NOTIFY_REDIS_FORMAT_SECONDARY="namespace"
mc admin config set notify_redis:primary              \
   address="redis-endpoint.example.net:9200"  \
   key="bucketevents"                                 \
   format="namespace"                                 \
   [ARGUMENT="VALUE"] ...                             \

mc admin config set notify_redis:secondary            \
   address="redis-endpoint2.example.net:9200" \
   key="bucketevents"                                 \
   format="namespace"                                 \
   [ARGUMENT="VALUE"] ...

設定

啟用

必要

MINIO_NOTIFY_REDIS_ENABLE

指定 on 以啟用發佈 bucket 通知到 Redis 服務端點。

預設為 off

若設定為 on,則需要指定以下額外的環境變數

notify_redis

用於定義 Redis 伺服器/代理端點的頂層組態鍵,用於 MinIO bucket 通知

使用 mc admin config set 來設定或更新 Redis 伺服器/代理端點。每個端點必須包含以下引數

將其他可選引數指定為以空格 (" ") 分隔的清單。

mc admin config set notify_redis \
   address="ENDPOINT" \
   key="<string>" \
   format="<string>" \
   [ARGUMENT="VALUE"] ... \

Address

必要

MINIO_NOTIFY_REDIS_ADDRESS
notify_redis address

指定 MinIO 發佈 bucket 事件的 Redis 服務端點。例如,redis.example.com:6369

在版本 RELEASE.2023-05-27T05-56-19Z 中變更:MinIO 在新增目標之前,會檢查指定的 URL 是否可解析和連線。如果現有的目標離線,MinIO 不再阻止新增新的通知目標。

Key

必要

MINIO_NOTIFY_REDIS_KEY
notify_redis key

指定用於儲存和更新事件的 Redis 金鑰。如果金鑰不存在,Redis 會自動建立。

Format

必要

MINIO_NOTIFY_REDIS_FORMAT
notify_redis format

指定寫入 Redis 服務端點的事件資料格式。MinIO 支援以下值

namespace

對於每個 bucket 事件,MinIO 會建立一個 JSON 文件,其中事件的 bucket 和物件名稱作為文件 ID,實際事件則作為文件內容的一部分。對該物件的其他更新會修改該物件現有的索引條目。同樣地,刪除物件也會刪除對應的索引條目。

access

對於每個 bucket 事件,MinIO 會建立一個包含事件詳細資訊的 JSON 文件,並使用 Redis 產生的隨機 ID 將其附加到金鑰。對物件的其他更新會產生新的索引條目,而現有的條目則保持不變。

Password

可選

MINIO_NOTIFY_REDIS_PASSWORD
notify_redis password

指定 Redis 伺服器的密碼。

在版本 RELEASE.2023-06-23T20-26-00Z 中變更:當作為 mc admin config get 的一部分傳回時,MinIO 會將此值修訂。

User

可選

在版本 RELEASE.2024-03-21T23-13-43Z 中新增。

MINIO_NOTIFY_REDIS_USER
notify_redis user

指定 Redis 伺服器的使用者。

Queue Directory

可選

MINIO_NOTIFY_REDIS_QUEUE_DIR
notify_redis queue_dir

指定目錄路徑以啟用 MinIO 的持久事件儲存,用於儲存未傳遞的訊息,例如 /opt/minio/events

當 Redis 伺服器/代理離線時,MinIO 會將未傳遞的事件儲存在指定的儲存中,並在連線恢復時重播儲存的事件。

Queue Limit

可選

MINIO_NOTIFY_REDIS_QUEUE_LIMIT
notify_redis queue_limit

指定未傳遞訊息的最大限制。預設為 100000

Comment

可選

MINIO_NOTIFY_REDIS_COMMENT
notify_redis comment

指定與 Redis 組態關聯的註解。