文档

AMQP 通知设置

此页面记录了将 AMQP 服务配置为 桶通知 目标的设置。请参阅 将事件发布到 AMQP (RabbitMQ) 以获取有关使用这些设置的教程。

您可以通过定义来建立或修改设置

  • 在启动或重启 MinIO 服务器之前,在主机系统上定义一个环境变量。有关如何定义环境变量,请参阅您的操作系统的文档。

  • 使用 mc admin config set 定义一个配置设置

  • 使用 MinIO 控制台的 管理员 > 设置 页面定义一个配置设置

如果您同时定义了一个环境变量和类似的配置设置,MinIO 将使用环境变量的值。

某些设置只有环境变量或配置设置,但没有两者。

重要

每个配置设置都控制着 MinIO 的基本行为和功能。MinIO 强烈建议在将配置更改应用于生产环境之前,在较低的环境(如 DEV 或 QA)中进行测试。

多个 AMQP 目标

您可以通过为每个相关的 AMQP 设置集的顶层键追加唯一标识符 _ID 来指定多个 AMQP 服务端点。

示例

例如,以下命令将两个不同的 AMQP 服务端点分别设置为 PRIMARYSECONDARY

set MINIO_NOTIFY_AMQP_ENABLE_PRIMARY="on"
set MINIO_NOTIFY_AMQP_URL_PRIMARY="amqp://user:[email protected]:5672"

set MINIO_NOTIFY_AMQP_ENABLE_SECONDARY="on"
set MINIO_NOTIFY_AMQP_URL_SECONDARY="amqp://user:[email protected]:5672"

例如,MINIO_NOTIFY_AMQP_ENABLE_PRIMARY 指示环境变量与 ID 为 PRIMARY 的 AMQP 服务端点相关联。

mc admin config set notify_amqp:primary \
   url="user:password@amqp://amqp-endpoint.example.net:5672" [ARGUMENT=VALUE ...]

mc admin config set notify_amqp:secondary \
   url="user:password@amqp://amqp-endpoint.example.net:5672" [ARGUMENT=VALUE ...]

注意,对于配置设置,唯一的标识符仅附加到 amqp,而不是附加到每个单独的参数。

设置

启用

MINIO_NOTIFY_AMQP_ENABLE

如果设置为 on,则需要指定 MINIO_NOTIFY_AMQP_URL

指定 on 以启用将存储桶通知发布到 AMQP 端点。

默认为 off

notify_amqp

用于定义 AMQP 服务端点以与 MinIO 存储桶通知 一起使用的顶级配置键。

使用 mc admin config set 设置或更新 AMQP 服务端点。对于每个目标,url 参数是必需的。将其他可选参数指定为以空格 (" ") 分隔的列表。

mc admin config set notify_amqp \
  url="amqp://user:password@endpoint:port" \
  [ARGUMENT="VALUE"] ...

URL

必需

MINIO_NOTIFY_AMQP_URL
notify_amqp url

指定 MinIO 发布存储桶事件的 AMQP 服务器端点。例如,amqp://myuser:mypassword@localhost:5672

在版本 RELEASE.2023-05-27T05-56-19Z 中更改: MinIO 会在添加目标之前检查指定 URL 的运行状况(如果它可解析且可达)。如果现有目标离线,MinIO 不会再阻止添加新的通知目标。

交换

可选

MINIO_NOTIFY_AMQP_EXCHANGE
notify_amqp exchange

指定要使用的 AMQP 交换的名称。

交换类型

可选

MINIO_NOTIFY_AMQP_EXCHANGE_TYPE
notify_amqp exchange_type

指定 AMQP 交换的类型。

路由键

可选

MINIO_NOTIFY_AMQP_ROUTING_KEY
notify_amqp routing_key

指定用于发布事件的路由键。

必需

可选

MINIO_NOTIFY_AMQP_MANDATORY
notify_amqp mandatory

指定 off 以忽略未送达消息错误。默认为 on

持久

可选

MINIO_NOTIFY_AMQP_DURABLE
notify_amqp durable

指定 on 以在代理重启时持久化消息队列。默认为 off

不等待

可选

MINIO_NOTIFY_AMQP_NO_WAIT
notify_amqp no_wait

指定 on 以启用非阻塞消息传递。默认为 off

内部

可选

MINIO_NOTIFY_AMQP_INTERNAL
notify_amqp internal

指定 on 以仅在交换绑定到其他交换时才使用该交换。有关 AMQP 交换绑定的更多信息,请参阅 RabbitMQ 文档中的 交换到交换绑定

自动删除

可选

MINIO_NOTIFY_AMQP_AUTO_DELETED
notify_amqp auto_deleted

指定 on 以在没有使用者时自动删除消息队列。默认为 off

传递模式

可选

MINIO_NOTIFY_AMQP_DELIVERY_MODE
notify_amqp delivery_mode

指定 1 将传递模式设置为非持久队列。

指定 2 将传递模式设置为持久队列。

队列目录

可选

MINIO_NOTIFY_AMQP_QUEUE_DIR
notify_amqp queue_dir

指定目录路径以启用 MinIO 的持久事件存储以存储未送达的消息,例如 /opt/minio/events

MinIO 在 AMQP 服务离线时将未送达的事件存储在指定的存储中,并在连接恢复时重播存储的事件。

队列限制

可选

MINIO_NOTIFY_AMQP_QUEUE_LIMIT
notify_amqp queue_limit

指定未送达消息的最大限制。默认为 100000

评论

可选

MINIO_NOTIFY_AMQP_COMMENT
notify_amqp comment

指定 AMQP 配置的注释。