Использование снега (и снегопада) с AWS для параллельной обработки в R
-
27-10-2019 - |
Вопрос
Что касается моего более раннего аналогичного вопроса SO , я попробовал использование снега / снегопада на AWS для параллельных вычислений.
Я сделал следующее:
- В функции
sfInit()
я предоставил общедоступный DNS для параметраsocketHosts
, например,sfInit(parallel=TRUE,socketHosts =list("ec2-00-00-00-000.compute-1.amazonaws.com"))
- Возвращена ошибка сгенерированного кода тега
- Затем я выполнил инструкции (полагаю, правильно!) на http:// www. imbi.uni-freiburg.de/parallel/ в разделе "Вход в безопасную оболочку без пароля (SSH)"
- Я просто помещаю содержимое файла .pem, который я создал на AWS, в ~ / .ssh / authorized_keys экземпляра AWS, к которому я хочу подключиться, из моего главного экземпляра AWS, а также для главного экземпляра AWS
Я что-то упускаю? Буду очень признателен, если пользователи поделятся своим опытом использования снега на AWS.
Большое спасибо за ваши предложения.
ОБНОВЛЕНИЕ: Я просто хотел обновить решение, которое я нашел для моей конкретной проблемы:
- Я использовал StarCluster для настройки своего кластера AWS: StarCluster
- Установлен пакет
Permission denied (publickey)
на всех узлах кластера. - С главного узла выданы следующие команды
-
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])
- Информация об IP подтверждает, что узлы AWS используются.
Решение
Я считаю, что @Anatoliy прав: вы используете сертификат X.509.Точные шаги, которые необходимо предпринять для добавления ключей SSH, см. В разделе «Типы учетных данных» в Руководство для начинающих по EC2 .
Чтобы загрузить свои собственные ключи SSH, загляните на эту страницу от Alestic .
Поначалу это немного сбивает с толку, но вы должны четко указать, какие у вас ключи доступа, сертификаты и пары ключей, которые могут отображаться в текстовых файлах с DSA или RSA.
Другие советы
Выглядит неплохо, но файл pem неправильный.Но иногда это не так просто, и многим приходится с этим бороться.В этом посте вы найдете множество советов:
- https://forums.aws.amazon.com/message.jspa?messageID= 241341
- Или поищите в Google другие сообщения.
По моему опыту, у большинства людей возникают проблемы на следующих этапах:
- Можете ли вы войти в систему через ssh?(ssh ec2-00-00-00-000.compute-1.amazonaws.com).Попробуйте использовать для подключения публичный DNS, а не публичный IP.
- Вам следует проверить свои «Группы безопасности» в AWS, если порт 22 открыт для всех машин!
Если вы планируете запустить более 10 рабочих машин, вам следует поработать над установкой MPI на своих машинах (гораздо лучше!)
Маркус с cloudnumbers.com :-)