如何将纯计算节点添加到 Hadoop 集群

How to add compute-only nodes to Hadoop cluster

我正在使用 Hadoop 设置一个包含两个数据+计算节点和两个仅计算节点的集群。我将 Spark 与 Yarn 一起用于数据处理。对于前一种类型的节点,我只需将主机名添加到工作人员配置中,hadoop 就会自动在这些节点上启动 hdfs 和 YARN。但是对于仅计算节点,我不希望它们 运行 dfs。一种方法可能是将这些也添加到工作人员配置中,然后 exclude/decommission 这些节点,但我觉得这不是正确的方法。我找不到任何 hadoop 配置来从 运行ning dfs 中排除特定节点。有人可以告诉我设置这种节点分布的正确方法吗?

这是不可能的/违背标准Hadoop的精神;这个想法是定义计算和存储。

如果你想要那样,那么你需要使用云提供的解决方案,例如 AWS 的 EMR,其中存储和计算已经分离以实现弹性和计费 - 即使其具有动态性和更便宜的云资源的吸引力。