12.6. 使用 Kafka Static Quota 插件设置代理的限制
Kafka 静态配额插件只是一个技术预览。技术预览功能不被红帽产品服务级别协议(SLA)支持,且可能无法完成功能。红帽不推荐在生产环境中实施任何技术预览功能。此技术预览功能为您提供对即将推出的产品创新的早期访问,允许您在开发过程中测试并提供反馈。有关红帽技术预览功能支持范围的更多信息,请参阅 技术预览功能支持范围。
使用 Kafka Static Quota 插件,为 Kafka 集群中的代理设置吞吐量和存储限制。您可以通过配置 Kafka
资源启用插件并设置限值。您可以设置字节阈值和存储配额,对与代理交互的客户端设定限制。
您可以为生产者和消费者带宽设置字节速率阈值。总限值分布在所有访问代理的客户端中。例如,您可以为生产者设置 40 MBps 的字节阈值。如果两个制作者正在运行,则每个生产者的吞吐量限制为 20 MBps。
存储配额在软限制和硬限制之间节流 Kafka 磁盘存储限制。这些限制适用于所有可用磁盘空间。在软限制和硬限制之间逐渐减慢生产者的速度。这些限制可防止磁盘过快占用并超出其容量。完整磁盘可能会导致问题难以解决。硬限制是最大存储限制。
对于 JBOD 存储,限制适用于所有磁盘。如果代理使用两个 1 TB 磁盘,且配额为 1.1 TB,则一个磁盘可能会填满,另一个磁盘将几乎为空。
先决条件
- 管理 Kafka 集群的 Cluster Operator 正在运行。
流程
将插件属性添加到
Kafka
资源的配置中。
示例配置中显示了插件属性。
Kafka 静态配额插件配置示例
apiVersion: kafka.strimzi.io/v1beta2 kind: Kafka metadata: name: my-cluster spec: kafka: # ... config: client.quota.callback.class: io.strimzi.kafka.quotas.StaticQuotaCallback 1 client.quota.callback.static.produce: 1000000 2 client.quota.callback.static.fetch: 1000000 3 client.quota.callback.static.storage.soft: 400000000000 4 client.quota.callback.static.storage.hard: 500000000000 5 client.quota.callback.static.storage.check-interval: 5 6
更新资源。
oc apply -f KAFKA-CONFIG-FILE
其它资源