首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >StorageClass和卡夫卡

StorageClass和卡夫卡
EN

Stack Overflow用户
提问于 2021-02-12 21:28:04
回答 1查看 84关注 0票数 0

我有一个关于Kubernetes StorageClasses的问题。

我计划在Confluent Helm Charts的帮助下将Kafka集群安装到K8s中……

Confluent Kafka Helm Charts

我不太确定K8s中的StorageClasses是如何工作的,假设我有3个代理实例的集群,如果我正确阅读了帮助图表,我只能为它们的StatefulSet配置和values.yaml配置一个StorageClass

values.yaml

代码语言:javascript
复制
persistence:
enabled: true
storageClass: "kafka-storageclass"
size: 50Gi
disksPerBroker: 1

现在我不太确定存储类是如何工作的(我可能会使用Azure磁盘),但我的问题是,如果我只能配置一个StorageClass,我的所有3个代理将使用相同的物理磁盘吗?这是我肯定会努力避免的一种情况。

我不希望我的代理实例相互争抢磁盘IO...

如果我的假设是正确的,我如何配置我的舵图为每个实例使用不同的StorageClass (请考虑我现在可以有3个实例,但如果需要的话,我也可以有20个代理实例)。

还有一个额外的参数'disksPerBroker',我无法想象它在K8s环境中会有什么优势?

感谢你的回答...

EN

回答 1

Stack Overflow用户

发布于 2021-02-12 23:06:22

存储类定义了如何动态创建存储单元。通常,您有一些预先创建的存储类,这些存储类具有特定的性能保证(即标准、高级)。您需要在云提供商的文档中找到详细信息。

也就是说,对于Apache Kafka,您需要使用块存储,因为需要良好的延迟。Azure托管磁盘和AWS EBS都运行良好。你可以把它们看作是专用的本地磁盘。为了避免不平衡,您应该始终在所有代理之间使用相同的存储类。

disksPerBroker属性用于确定连接到每个代理(JBOD)的磁盘数量。这更多的是关于增加/减少每个代理可用的存储量的灵活性,而不是性能。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66172716

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档