NATS 通知设置
本页面说明了将 NATS 服务配置为 存储桶通知 目标的设置。 有关如何使用这些设置的教程,请参见 将事件发布到 NATS。
你可以通过以下方式建立或修改设置:
- 在启动或重启 MinIO Server 之前,在宿主机系统上定义 环境变量。 如何定义环境变量,请参考所用操作系统的文档。
- 使用
mc admin config set定义 配置项。
如果同时定义了环境变量和对应的配置项,MinIO 使用环境变量的值。
有些设置只有环境变量或配置项中的一种,而不是两者同时存在。
重要
每个配置项都会控制 MinIO 的基础行为和功能。 MinIO 强烈建议 先在 DEV 或 QA 等较低级别环境中测试配置变更,再应用到生产环境。
多个 NATS 目标
你可以在顶层键后追加唯一标识符 _ID,为每组相关的 NATS 设置指定多个 NATS 服务端点。
示例
例如,以下命令分别将两个不同的 NATS 服务端点设置为 PRIMARY 和 SECONDARY:
export MINIO_NOTIFY_NATS_ENABLE_PRIMARY="on"
export MINIO_NOTIFY_NATS_ADDRESS_PRIMARY="nats-endpoint.example.net:4222"
export MINIO_NOTIFY_NATS_ENABLE_SECONDARY="on"
export MINIO_NOTIFY_NATS_ADDRESS_SECONDARY="nats-endpoint.example.net:4222"
在这些设置中,MINIO_NOTIFY_NATS_ENABLE_PRIMARY 表示该环境变量关联到 ID 为 PRIMARY 的 NATS 服务端点。
mc admin config set notify_nats:primary \
address="nats-endpoint.example.com:4222" \
subject="minioevents" \
[ARGUMENT=VALUE ...]
mc admin config set notify_nats:secondary \
address="nats-endpoint.example.com:4222" \
subject="minioevents" \
[ARGUMENT=VALUE ...]
设置
启用
必填
MINIO_NOTIFY_NATS_ENABLE
envvar
指定 on 以启用向 NATS 服务端点发布存储桶通知。
默认为 off。
notify_nats
mc-conf
用于定义 NATS 服务端点并将其用于 MinIO bucket notifications 的顶层配置键。
使用 mc admin config set 设置或更新 NATS 服务端点。 对于每个目标,address 和 subject 参数均为必填。 其他可选参数请使用空白字符(" ")分隔的列表指定。
mc admin config set notify_nats \
address="nats-endpoint.example.com:4222" \
subject="minioevents" \
[ARGUMENT="VALUE"] ... \
地址
必填
MINIO_NOTIFY_NATS_ADDRESS
envvar
notify_nats address
mc-conf
指定 MinIO 发布存储桶事件到的 NATS 服务端点。 例如:nats-endpoint.example.com:4222。
变更: RELEASE.2023-05-27T05-56-19Z
在添加目标之前,如果指定的 URL 可解析且可达, MinIO 会先检查其健康状态。 如果现有目标处于离线状态,MinIO 也不再阻止添加新的通知目标。
Subject
必填
MINIO_NOTIFY_NATS_SUBJECT
envvar
notify_nats subject
mc-conf
指定 MinIO 在 NATS 端点上关联已发布事件的订阅。
用户名
可选
MINIO_NOTIFY_NATS_USERNAME
envvar
notify_nats username
mc-conf
指定连接到 NATS 服务端点时使用的用户名。
密码
可选
MINIO_NOTIFY_NATS_PASSWORD
envvar
notify_nats password
mc-conf
指定连接到 NATS 服务端点时使用的密码。
变更: RELEASE.2023-06-23T20-26-00Z
MinIO 在作为 mc admin config get 返回结果的一部分时会对该值进行脱敏。
Token
可选
MINIO_NOTIFY_NATS_TOKEN
envvar
notify_nats token
mc-conf
指定连接到 NATS 服务端点时使用的 token。
变更: RELEASE.2023-06-23T20-26-00Z
MinIO 在作为 mc admin config get 返回结果的一部分时会对该值进行脱敏。
用户凭证文件
可选
MINIO_NOTIFY_NATS_USER_CREDENTIALS
envvar
notify_nats user_credentials
mc-conf
指定用于连接 NATS 服务端点的 user credentials file <https://docs.nats.io/using-nats/developer/connecting/creds>。
TLS
可选
MINIO_NOTIFY_NATS_TLS
envvar
notify_nats tls
mc-conf
指定 on 以启用到 NATS 服务端点的 TLS 连接。
TLS Skip Verify
可选
MINIO_NOTIFY_NATS_TLS_SKIP_VERIFY
envvar
notify_nats tls_skip_verify
mc-conf
启用或禁用对 NATS 服务端点 TLS 证书的 TLS 校验。
- 指定
on以禁用 TLS 校验(默认)。 - 指定
off以启用 TLS 校验。
Ping Interval
可选
MINIO_NOTIFY_NATS_PING_INTERVAL
envvar
notify_nats ping_interval
mc-conf
指定客户端向 NATS 服务器发送 ping 的时间间隔。 MinIO 支持以下时间单位:
s- 秒,"60s"m- 分钟,"5m"h- 小时,"1h"d- 天,"1d"
Jetstream
可选
MINIO_NOTIFY_NATS_JETSTREAM
envvar
notify_nats jetstream
mc-conf
指定 on 以启用 JetStream 支持,将事件流式传输到 NATS JetStream 服务端点。
Streaming
已弃用
可选
MINIO_NOTIFY_NATS_STREAMING
envvar
notify_nats streaming
mc-conf
指定 on 以启用向 NATS 服务端点异步发布事件。
Streaming Async
已弃用
可选
MINIO_NOTIFY_NATS_STREAMING_ASYNC
envvar
notify_nats streaming_async
mc-conf
指定 on 以启用向 NATS 服务端点异步发布事件。
Max ACK Responses In Flight
已弃用
可选
MINIO_NOTIFY_NATS_STREAMING_MAX_PUB_ACKS_IN_FLIGHT
envvar
notify_nats streaming_max_pub_acks_in_flight
mc-conf
指定在等待 NATS 服务端点 ACK 响应之前可发布的消息数量。
Streaming Cluster ID
已弃用
可选
MINIO_NOTIFY_NATS_STREAMING_CLUSTER_ID
envvar
notify_nats streaming_cluster_id
mc-conf
指定 NATS Streaming 集群的唯一 ID。
Cert Authority
可选
MINIO_NOTIFY_NATS_CERT_AUTHORITY
envvar
notify_nats cert_authority
mc-conf
指定用于签署 NATS 服务端点 TLS 证书的 Certificate Authority 证书链路径。
Client Cert
可选
MINIO_NOTIFY_NATS_CLIENT_CERT
envvar
notify_nats client_cert
mc-conf
指定用于执行到 NATS 服务端点 mTLS 认证的客户端证书路径。
Client Key
可选
MINIO_NOTIFY_NATS_CLIENT_KEY
envvar
notify_nats client_key
mc-conf
指定用于执行到 NATS 服务端点 mTLS 认证的客户端私钥路径。
Queue Directory
可选
MINIO_NOTIFY_NATS_QUEUE_DIR
envvar
notify_nats queue_dir
mc-conf
指定目录路径以启用 MinIO 对未投递消息的持久化事件存储,例如 /opt/minio/events。
当 NATS server/broker 离线时,MinIO 会将未投递事件存储在指定存储中,并在连接恢复后重放已存储事件。
Queue Limit
可选
MINIO_NOTIFY_NATS_QUEUE_LIMIT
envvar
notify_nats queue_limit
mc-conf
指定未投递消息的最大上限。 默认为 100000。
Comment
可选
MINIO_NOTIFY_NATS_COMMENT
envvar
notify_nats comment
mc-conf
指定与 NATS 配置关联的注释。
本页部分内容改编自 MinIO 对象存储文档,© 2020–至今 MinIO, Inc.,依据 CC BY 4.0 授权,由 Silo 项目转换与维护。归属与署名
本页为非官方中文翻译。如与英文原文有出入,以英文原文为准。