我们有一个 30 个节点的生产集群。我们希望添加 5 个数据节点作为额外的存储,以处理临时数据峰值(约 2 TB(。这些数据将暂时存储,我们希望在 15 天后将其删除。
是否可以确保传入的临时数据 (2 TB( 仅存储在新添加的数据节点上?
我正在寻找类似于 YARN 节点标签的东西。
提前谢谢你。
不幸的是,我不知道在同一个 HDFS 集群中实现这一目标的简单方法。 但我认为您可以通过实施自定义的"块放置策略"来实现此行为。 但是,执行此任务可能有些风险和复杂。
这是 HDFS jira 票证,其中定义/添加了此功能,允许您自定义此策略(JIRA 票证(。
如果你想自定义它,你可以在这里阅读选择数据节点的当前行为,以更好地了解你: 链接 1
同样在这里,您可以找到一篇包含多个参考资料的帖子,这些参考资料可能对如何实施自定义策略及其风险很有用: 发布
如果你想采取这种方式,我推荐的其他阅读材料:
链接 2
帖子 2
这是一篇关于使用自定义块放置策略将副本放置在 SSD 或 HDD(混合群集(中的实验的好论文: 纸
我认为如果可能的话,使用第二个集群会更简单。 例如,您可以评估使用命名空间引用每个集群的 ViewFS:
视图Fs 参考
链接 3
问候