11.7. 使用 Kafka 静态配额插件在代理上设置限制
使用 Kafka 静态配额插件在 Kafka 集群中的代理上设置吞吐量和存储限制。您可以通过配置 Kafka
资源来启用插件和设置限制。您可以设置字节阈值和存储配额,以在与代理交互的客户端上放置限制。
您可以为制作者和消费者带宽设置字节速率阈值。总限值分布在访问代理的所有客户端上。例如,您可以为制作者设置字节的阈值 40 MBps。如果两个制作者正在运行,则它们各自限制为 20 MBps 吞吐量。
存储配额在软限制和硬限制之间节流 Kafka 磁盘存储限制。限制适用于所有可用磁盘空间。生产者在软限制和硬限制之间逐渐下降。限制可防止磁盘填满速度超过其容量。完整磁盘可能会导致难以修复的问题。硬限制是最大存储限制。
注意
对于 JBOD 存储,限制适用于所有磁盘。如果代理使用两个 1 TB 磁盘,且配额是 1.1 TB,一个磁盘可能会填满,而其他磁盘几乎为空。
先决条件
- 管理 Kafka 集群的 Cluster Operator 正在运行。
流程
为
Kafka
资源的config
添加插件属性。这个示例配置中会显示插件属性。
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_configuration_file>
其他资源