访问docker swarm外部的hdfs

vwkv1x7d  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(406)

我创建了一个DockerSwarm配置,它由namenode、datanode、resourcemanager和yarn workers组成。这些都能很好地协同工作,我可以从swarm中的任何容器运行hdfs-dfs命令。我还使用yaml的ports部分暴露了端口9000。在my core-site.xml中,我使用swarm配置中namenode的主机名。
我无法使用hdfs dfs命令让swarm之外的客户机访问集群。我有一个不同的core-site.xml,它有swarm的主机地址。当我运行命令时,我得到一个java.io.eofexception。
有没有办法让外部客户机连接到docker swarm中运行的hadoop集群?

bxfogqkk

bxfogqkk1#

原来这是通过遵循多宿网络指令来解决的。在namenode看来,它似乎有两个网络接口可供使用。一个用于覆盖整个集群的网络,另一个用于暴露端口。

相关问题