拥有Docker群集的Hadoop集群

我试图在多个主机的docker swarm中设置一个hadoop集群,每个docker节点上的datanode都有一个挂载的卷。我做了一些testing,工作正常,但是当数据节点死亡然后返回时,问题就来了。

我同时重启2台主机,当容器再次运行时,他们得到一个新的IP。 问题是名称模式给出一个错误,因为它认为它是另一个datanode。

ERROR org.apache.hadoop.hdfs.StateChange: BLOCK* NameSystem.getDatanode: Data node 10.0.0.13:50010 is attempting to report storage ID 3a7b556f-7364-460e-beac-173132d77503. Node 10.0.0.9:50010 is expected to serve this storage. 

是可以防止docker分配一个新的IP,而是保持重新启动后的最后一个IP?

或者有任何Hadoopconfiguration的选项来解决这个问题?

目前正式不支持访问覆盖networking的容器的静态DHCP地址,如https://github.com/moby/moby/issues/31860

我希望,docker工作人员将很快提供一个解决scheme。