2016-07-13 3 views
4

Мне было интересно, как настроить кластер h2o, используя несколько экземпляров AWS EC2 и R-Studio. Я не компьютерный ученый, поэтому извините за тривиальные вопросы (!)Установка нескольких узлов кластера с h2o на AWS EC2

На основе этого урока (http://amunategui.github.io/h2o-on-aws/) Я успешно установил h2o и R-Studio на экземпляр AWS EC2 (Linux). Но я скорее хочу создать кластер с несколькими экземплярами, и пусть скажем 4 экземпляра с 8 ядрами каждый.

После этого (http://h2o-release.s3.amazonaws.com/h2o/rel-lambert/5/docs-website/deployment/multinode.html) документа мне нужен файл flatfile.txt, где я могу перечислить все IP-адреса и порты каждого экземпляра EC2. На следующем шаге мне нужно скопировать этот файл на каждый узел кластера, а затем мне нужно запустить кластер через командную строку java ... Поскольку я не ученый-компьютер, как я уже упоминал, возникли вопросы:

  1. Где я могу найти IP-адреса и порты каждого экземпляра h2o?
  2. Как точно я могу скопировать полученный файл на каждый узел?
  3. С шага 5 я полностью смущен; где мне нужно вставить эту строку/где я могу найти строку java comand?
  4. Я не хочу использовать веб-интерфейс h2o, так как я могу получить доступ к кластеру из R-Studio (установленному на одном из экземпляров)?

Большое вам спасибо!

ответ

5

1a. Где получить IP-адреса? Вам сообщают, что вы создаете каждый экземпляр EC2. Это частный IP-адрес, который вы хотите (обычно начиная с 172.) (BTW, убедитесь, что вы создаете их все в одной и той же зоне доступности.)

1b. Используйте порт 54321 в качестве порта. Таким образом, ваш файл flatfile.txt для 3-х узлов может выглядеть так:

172.31.1.123:54321 
172.31.2.237:54321 
172.44.99.99:54321 

_2. Вы можете сделать файл flatfile.txt на своем ноутбуке, а затем scp его на каждый узел в своем домашнем каталоге. (Используйте публичный IP для scp.)

_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

Они делают почти все шаги для вас, в том числе делая FlatFile, распространение он и запуск H2O на каждом узле.Вам все равно нужно настроить группу безопасности (ну, пожалуй, я полагаю: по умолчанию для сценария не будет группы безопасности!), И вам нужно установить пароль для пользователя, которого вы будете использовать для входа в RStudio. И вам нужно установить пакет H2O R (I думаю, который может быть сделан изнутри RStudio, если у вас есть отвращение к командной строке).

+0

Спасибо, я применил ваш подход в выходные! – Constantin