Kubernetes的H2O

Ale*_*ani 6 kubernetes h2o

有没有人设法在Kubernetes运行H2O集群?

我尝试了2个选项,使用flatfile 1)使用StatefulSet,但由于为pod生成的ip可以改变集群是不可靠的2)使用一堆服务/部署并指定flatfile服务的dns名称但是群集无法正常启动

没有上述工作.有没有办法使它工作?

Tom*_*vic 2

如果多播数据包可以在 Pod 之间传输,那么您可以依靠它来形成集群。只需为要共享的所有节点指定一个唯一的名称即可。如果可行的话,这很容易,无需更改代码。

更新(2018/04/21)——我的一位同事说:

我使用 weave 作为网络层,它的作用是为该 kubernetes pod 组的所有容器之间提供连接,然后您不需要在 H2O 中使用平面文件,因为 h2o 将在启动时进行多播,weave 将接受多播并发送它到 pod 的所有实例。

在 K8s 中运行:kubectl apply --filename https://git.io/weave-kube-1.6


如果不能选择多播,据我所知,目前 Kubernetes 还没有现成的解决方案。

您将需要一个协调器来分发平面文件信息。

H2O github 存储库中至少有三个针对其他环境执行此操作的代码示例。

  1. EC2脚本

https://github.com/h2oai/h2o-3/tree/master/ec2

  1. hadoop 驱动程序

https://github.com/h2oai/h2o-3/blob/master/h2o-hadoop/h2o-mapreduce-generic/src/main/java/water/hadoop/h2omapper.java

特别是,看看这个类是如何被重写的:

https://github.com/h2oai/h2o-3/blob/master/h2o-core/src/main/java/water/init/AbstractEmbeddedH2OConfig.java

  1. 苏打水存储库中的苏打水驱动程序。