Kafka 通知设置
本页面记录了将 Kafka 服务配置为 Bucket Notifications 目标的相关设置。 有关如何使用这些设置的教程,请参见 将事件发布到 Kafka。
你可以通过以下方式建立或修改设置:
在启动或重启 MinIO Server 之前,在宿主机系统上定义 环境变量。 如何定义环境变量,请参考所用操作系统的文档。
使用
mc admin config set定义 配置项。
如果同时定义了环境变量和对应的配置项,MinIO 使用环境变量的值。
有些设置只有环境变量或配置项中的一种,而不是两者同时存在。
Important
每个配置项都会控制 MinIO 的基础行为和功能。 MinIO 强烈建议 先在 DEV 或 QA 等较低级别环境中测试配置变更,再应用到生产环境。
多个 Kafka 目标
你可以在顶层键后附加唯一标识符 _ID,为每组相关的 Kafka 设置指定多个 Kafka 服务端点。
示例
例如,以下命令分别将两个不同的 Kafka 服务端点设置为 PRIMARY 和 SECONDARY:
export MINIO_NOTIFY_KAFKA_ENABLE_PRIMARY="on"
export MINIO_NOTIFY_KAFKA_BROKERS_PRIMARY="https://kafka1.example.net:9200, https://kafka2.example.net:9200"
export MINIO_NOTIFY_KAFKA_ENABLE_SECONDARY="on"
export MINIO_NOTIFY_KAFKA_BROKERS_SECONDARY="https://kafka1.example.net:9200, https://kafka2.example.net:9200"
mc admin config set notify_kafka:primary \
brokers="https://kafka1.example.net:9200, https://kafka2.example.net:9200"
[ARGUMENT=VALUE ...]
mc admin config set notify_kafka:secondary \
brokers="https://kafka1.example.net:9200, https://kafka2.example.net:9200"
[ARGUMENT=VALUE ...]
请注意,对于配置设置,唯一标识符只附加到 notify_kafka,而不是附加到每个单独参数。
设置
启用
必需
用于定义 Kafka 服务端点并与 MinIO bucket notifications 配合使用的顶层配置键。
使用 mc admin config set 设置或更新 Kafka 服务端点。
对于每个目标,brokers 参数都是*必需*的。
其他可选参数请以空白字符(" ")分隔的列表形式指定。
mc admin config set notify_kafka \
brokers="https://kafka1.example.net:9200, https://kafka2.example.net:9200"
[ARGUMENT="VALUE"] ... \
Brokers
必需
指定以逗号分隔的 Kafka broker 地址列表。 例如:
"kafka1.example.com:2021,kafka2.example.com:2021"
Changed in version RELEASE.2023-05-27T05-56-19Z: 在添加目标之前,如果指定的 URL 可解析且可达, MinIO 会先检查其健康状态。 如果现有目标处于离线状态,MinIO 也不再阻止添加新的通知目标。
Topic
可选
指定 MinIO 发布存储桶事件的 Kafka topic 名称。
SASL
可选
指定 on 以启用 SASL 身份验证。
SASL Username
可选
指定用于对 Kafka broker 执行 SASL/PLAIN 或 SASL/SCRAM 身份验证的用户名。
SASL Password
可选
指定用于对 Kafka broker 执行 SASL/PLAIN 或 SASL/SCRAM 身份验证的密码。
Changed in version RELEASE.2023-06-23T20-26-00Z: 当此值作为 mc admin config get 返回结果的一部分时,MinIO 会对其进行脱敏。
SASL Mechanism
可选
指定用于对 Kafka broker 进行身份验证的 SASL 机制。 MinIO 支持以下机制:
``PLAIN``(默认)
SHA256SHA512
TLS Client Auth
可选
指定 Kafka broker 的客户端身份验证类型。 下表列出了支持的取值及其映射关系
值 |
身份验证类型 |
|---|---|
0 |
|
1 |
|
2 |
|
3 |
|
4 |
|
有关各客户端身份验证类型的更多信息,请参见 ClientAuthType。
TLS
可选
指定 on 以启用与 Kafka broker 的 TLS 连接。
TLS Skip Verify
可选
启用或禁用对 NATS 服务端点 TLS 证书的 TLS 验证。
指定
on以禁用 TLS 验证(默认)。指定
off以启用 TLS 验证。
Client TLS Cert
可选
指定客户端证书路径,用于对 Kafka broker 执行 mTLS 身份验证。
Client TLS Key
可选
指定客户端私钥路径,用于对 Kafka broker 执行 mTLS 身份验证。
Version
可选
指定在对 Kafka 集群执行操作时假定的 Kafka 集群版本。 有关此字段行为的更多信息,请参见 sarama reference documentation。
Batch Size
可选
指定整数值,作为向 Kafka 发送记录时的 batch size。
Changed in version RELEASE.2023-12-02T10-51-33Z: MinIO 先前将此值限制为 100。
Queue Directory
可选
指定目录路径以启用 MinIO 对未投递消息的持久化事件存储,例如 /opt/minio/events。
当 Kafka server/broker 离线时,MinIO 会将未投递事件存储在指定存储中,并在连接恢复后重放这些已存储事件。
Queue Limit
可选
指定未投递消息的最大限制。
默认为 100000。
Comment
可选
指定与 Kafka 配置关联的注释。
Compression Codec
New in version MinIO: Server RELEASE.2023-12-09T18-17-51Z
可选
指定向 Kafka 发送记录时使用的压缩编解码器。
支持以下取值:
nonesnappygziplz4zstd
Compression Level
New in version MinIO: Server RELEASE.2023-12-09T18-17-51Z
可选
根据已配置的压缩编解码器控制应用的压缩级别。
指定大于或等于 0 的整数值。
该值的效果取决于所选编解码器。