Kafka 通知设置
本页面文档化了配置 Kafka 服务作为 Bucket Notifications 目标的设置。 请参阅 发布事件到Kafka,以获取使用这些设置的教程。
您可以通过定义以下内容来建立或修改设置:
- 在启动或重新启动 MinIO 服务器之前,在宿主系统上定义一个 环境变量。 请参阅您的操作系统的文档,了解如何定义环境变量。 
- 使用 - mc admin config set命令来设置一个 配置项。
- 使用 MinIO控制台 的 管理员 > 设置 页面来设置一个 配置项。 
如果您同时定义了环境变量和类似的配置设置,MinIO 将使用环境变量的值。
有些设置只有环境变量或配置设置,而不是两者都有。
重要
每个配置设置都控制着MinIO的基本行为和功能。 MinIO 强烈建议 在较低的环境中,如DEV或QA,测试配置更改,然后再将其应用到生产环境中。
多个 Kafka 目标
您可以通过在顶级键后附加每个相关 Kafka 设置集的唯一标识符 _ID 来指定多个 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 上,而不是每个单独的参数上。
设置
Enable
必需的
用于定义与 MinIO存储桶通知 一起使用的Kafka服务端点的顶级配置键。
使用 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代理地址列表。 例如:
kafka1.example.com:2021,kafka2.example.com:2021
在 RELEASE.2023-05-27T05-56-19Z 版本发生变更: 在添加目标之前,MinIO会检查指定URL的健康状况(如果其能被解析并可以访问)。 如果现有目标离线,MinIO不再阻止添加新的通知目标。
Topic
可选
指定MinIO发布存储桶事件到的Kafka主题名称。
SASL
可选
指定 on 来启用SASL身份验证。
SASL 用户名
可选
指定用于对Kafka代理(broker)执行SASL/PLAIN或SASL/SCRAM身份验证的用户名。
SASL密码
可选
指定用于对Kafka代理进行SASL/PLAIN或SASL/SCRAM身份验证的密码。
在 RELEASE.2023-06-23T20-26-00Z 版本发生变更: 当作为 mc admin config get 命令的一部分返回时,MinIO 会删除这个值。
SASL Mechanism
可选
指定用于对Kafka代理进行身份验证的SASL机制。 MinIO支持以下机制:
- PLAIN(Default)
- SHA256
- SHA512
TLS 客户端身份验证
可选
指定Kafka代理的客户端认证类型。 以下表格列出了支持的值及其映射。
| Value | Authentication Type | 
|---|---|
| 0 | 
 | 
| 1 | 
 | 
| 2 | 
 | 
| 3 | 
 | 
| 4 | 
 | 
更多信息请参见 ClientAuthType 关于每个客户端认证类型的详细信息。
TLS
可选
指定 on 以启用到Kafka代理(们)的TLS连接。
TLS 跳过验证
可选
启用或禁用对NATS服务端点TLS证书的TLS验证。
- 指定 - on以禁用TLS验证 (默认)。
- 指定 - off以启用 TLS 验证。
客户端 TLS 证书
可选
指定用于对Kafka代理(们)执行mTLS认证的客户端证书的路径。
客户端 TLS 密钥
可选
指定用于对Kafka代理(们)执行mTLS认证的客户端私钥的路径。
Version
可选
指定在针对该集群执行操作时假设的Kafka集群版本。 更多信息关于此字段的行为,请参阅 sarama 参考文档。
批量大小
可选
指定整数值作为发送记录到Kafka的 批量大小。
在 RELEASE.2023-12-02T10-51-33Z 版本发生变更: MinIO 之前将这个值限制为 100 。
队列目录
可选
指定目录路径以启用MinIO的持久化事件存储,例如 /opt/minio/events 。
MinIO 在 Kafka 服务器/代理(broker)离线时,将未交付的事件存储在指定的存储中,并在连接恢复时重新播放存储的事件。
队列限制
可选
指定未发送消息的最大限制。
默认为 100000 。
Comment
可选
指定一个注释,用于与 Kafka 配置关联。
压缩编解码器
在 MinIO 版本加入: Server RELEASE.2023-12-09T18-17-51Z
可选
指定在将记录发送到 Kafka 时使用的压缩编解码器。
支持的以下值:
- none
- snappy
- gzip
- lz4
- zstd
压缩级别
在 MinIO 版本加入: Server RELEASE.2023-12-09T18-17-51Z
可选
基于配置的压缩编解码器,控制应用的压缩级别。
指定一个大于或等于 0 的整数值。
该值的效果取决于所选的编解码器。
