r - AWS EC2 上使用 h2o 进行多节点集群安装

标签 r amazon-web-services amazon-ec2 cluster-computing h2o

我想知道如何使用多个 AWS EC2 实例和 R-Studio 设置 h2o 集群。我不是计算机科学家,很抱歉提出这些琐碎的问题(!)

根据本教程 ( http://amunategui.github.io/h2o-on-aws/ ),我在 AWS EC2 实例 (Linux) 上成功安装了 h2o 和 R-Studio。但我更想创建一个多实例集群,其中包含 4 个实例,每个实例有 8 个核心。

在此 ( http://h2o-release.s3.amazonaws.com/h2o/rel-lambert/5/docs-website/deployment/multinode.html ) 文档之后,我需要一个 flatfile.txt,其中可以列出每个 EC2 实例的所有 IP 和端口。在下一步中,我必须将此文件复制到集群中的每个节点,然后我需要通过 java 命令行启动集群...由于我不是我已经提到的计算机科学家,因此出现了一些问题:

  1. 在哪里可以找到每个 h2o 实例的 IP 和端口?
  2. 如何将生成的文件复制到每个节点?
  3. 从第 5 步开始,我完全困惑了;我必须在哪里插入这一行/在哪里可以找到 java 命令行?
  4. 我不想使用 h2o 的 Web UI,那么如何从 R-Studio(安装在其中一个实例上)访问集群?

提前非常感谢您!

最佳答案

1a。哪里可以获得IP? 当您创建每个 EC2 实例时,您会收到通知。这是您想要的私有(private)IP(通常以172开头。) (顺便说一句,请确保您在同一可用区域中创建它们。)

1b。使用 54321 作为端口。因此,3 节点的 flatfile.txt 可能如下所示:

172.31.1.123:54321
172.31.2.237:54321
172.44.99.99:54321

_2。您可以在笔记本上创建 flatfile.txt,然后将其 scp 到主目录中的每个节点。 (使用 scp 的公共(public) IP。)

_3。依次 ssh 到每台机器,然后从主目录键入该命令,例如

 java -Xmx20g -jar h2o.jar -flatfile flatfile.txt -port 54321

_4。首先确保端口 8787 在您的 Amazon 防火墙(又名“安全组”)中打开。一旦您确保 H2O 集群正在运行(并且假设您已经安装了 H2O R 软件包,并确保它与集群中每个节点上的版本完全相同),那么您只需执行以下操作:

library(h2o)
h2o.init()

h2o.init() 在本地计算机上查找集群中的任何节点。

<小时/>

旁白:

我一直在使用的是在这里找到的脚本:

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

他们会为您完成几乎所有步骤,包括制作平面文件、分发它以及在每个节点上启动 H2O。您仍然需要设置一个安全组(嗯,可选,我想:脚本默认是没有安全组!),并且您需要为用于登录 RStudio 的用户设置密码。并且您需要安装 H2O R 软件包(我认为,如果您不喜欢命令行,可以从 RStudio 内部完成)。

关于r - AWS EC2 上使用 h2o 进行多节点集群安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38351835/

相关文章:

amazon-web-services - 有没有一种简单的方法可以从实例获取 OpsWorks id?

java - 如何使用 kms 角色将文件上传到 Amazon S3?

amazon-web-services - 如何自由保存EC2实例

r - 同时为 dplyr 中的分组值导出唯一值和汇总值的有效方法

amazon-ec2 - Amazon EC2 使用之间的差异

node.js - AWS,NodeJS - 将应用程序连接到另一个 EC2 实例上的 Mongodb

amazon-web-services - 如何将ec2实例连接到域名

SunburstR 图的 Javascript 排序

r - 具有多个约束的所有组合

r - 我的问题是关于 R : How to number each repetition in a table in R?