Что касается моего более раннего аналогичного вопроса SO , я попытался использовать снег / снегопад на AWS для параллельных вычислений.
То, что я сделал, было:
- В функции
sfInit()
я предоставил общедоступный DNS для параметра socketHosts
следующим образом: sfInit(parallel=TRUE,socketHosts =list("ec2-00-00-00-000.compute-1.amazonaws.com"))
- Возвращена ошибка:
Permission denied (publickey)
- Затем я следовал инструкциям (полагаю, правильно!) в http://www.imbi.uni -freiburg.de / parallel / в разделе «Вход в систему без пароля в защищенной оболочке (SSH)»
- Я просто отслеживаю содержимое созданного мной файла .pemна AWS в ~ / .ssh / authorized_keys экземпляра AWS, к которому я хочу подключиться, из моего основного экземпляра AWS, а также для основного экземпляра AWS
Есть ли что-то, что я пропускаю?Я был бы очень признателен, если бы пользователи могли поделиться своим опытом использования снега на AWS.
Большое спасибо за ваши предложения.
ОБНОВЛЕНИЕ: Я просто хотел обновить найденное мной решениек моей конкретной проблеме:
- Я использовал StarCluster для настройки моего кластера AWS: StarCluster
- Установленный пакет
snowfall
на всех узлах кластера - Из мастер-узла выдаются следующие команды
hostslist <- list("ec2-xxx-xx-xxx-xxx.compute-1.amazonaws.com","ec2-xx-xx-xxx-xxx.compute-1.amazonaws.com")
sfInit(parallel=TRUE, cpus=2, type="SOCK",socketHosts=hostslist)
l <- sfLapply(1:2,function(x)system("ifconfig",intern=T))
lapply(l,function(x)x[2])
sfStop()
- Информация ip подтвердила, что узлы AWS использовались