现在,我们尝试使用H2o构建训练集群。通过运行java -jar ./h2o.jar
易于使用,并且我们可以使用包含多个IP和端口的简单flatfile.txt
来设置集群。
但是我们发现不可能在docker容器中设置h2o集群。尽管我们可以启动多个容器来运行java -jar ./h2o.jar
并添加准备好的flatfile.txt
,但是h2o进程将尝试绑定与flatfile.txt
中的本地(容器的eth0)ip。我们可以java -jar ./h2o.jar -ip $ip
来设置flatfile.txt
中的一个,但是如果没有此“外部” ip,h2o实例将无法运行。
答案 0 :(得分:1)
如果您使用“ docker run --network = host ...”,它将起作用。
答案 1 :(得分:0)
请参阅我对类似问题here的答复。我描述了如何使用平面文件和docker swarm启动H2O集群。基本上,您必须在启动H2O之前在每个服务中运行脚本,以标识群集的正确IP地址。这是因为docker为每个服务分配了两个IP。平面文件需要为每个群集成员使用$ HOSTNAME IP,这很难事先确定。