Я создал пару ключей EC2 и сохранил ее в моем домашнем каталоге на Mac. Также я изменил разрешения с помощью chmod 600 /path/to/saved/keypair/file.pem. Теперь я выполнил следующие инструкции, чтобы запустить работу со свиньей на EC2:
Чтобы настроить и подключиться к кластеру свиней, выполните следующие действия:
- Перейти к http://console.aws.amazon.com/elasticmapreduce/home вход в систему при необходимости.
- Нажмите «Создать кластер».
- Введите «Кластер назначения науки о данных» или что угодно в качестве имени кластера.
- Снимите флажок "Ведение журнала", чтобы он был отключен.
- Прокрутите вниз до Software Configuration и выберите AMI Version 2.4.2 (мы будем использовать Hadoop 1.x для совместимости с версией Pig).
- Прокрутите вниз до «Безопасность и доступ» и выберите пару ключей, которую вы создали выше.
- Прокрутите вниз и выберите «Создать кластер».
- На следующей странице будет отображена информация о вашем кластере. Он начнется в состоянии «Запуск» и может занять несколько минут для полного запуска.
- После запуска кластера вы увидите имя Master Public DNS в формате ec2-XX-XXX-X-XXX.compute-1.amazonaws.com. Запишите это; мы будем называть его master.public-dns-name.amazonaws.com.
- Теперь вы готовы подключиться к кластеру и запускать задания Pig. В терминале используйте следующую команду: $ ssh -o "ServerAliveInterval 10" -i /path/to/saved/keypair/file.pem hadoop@master.public-dns-name.amazonaws.com
- После успешного подключения просто введите
$ свинья- Теперь у вас должна быть подсказка свиньи
ворчание>
Выполнив команду ssh на шаге 10, я получаю приглашение '>' после нажатия клавиши Enter. Кроме того, если я напишу свинью в приглашении '>', я снова получу приглашение '>' в следующей строке вместо ожидается приглашение 'grunt>'. Я проверил, что ssh установлен на моем Mac, и удаленный вход включен для всех пользователей в настройках общего доступа в системных настройках. В чем, кажется, проблема?
Похоже, что проблема возникла из имени пути пары ключей EC2 в команде ssh на шаге 10. Моя пара ключей была на рабочем столе. Итак, ранее я попытался выполнить команду ssh из командной строки HOME $ и упомянул путь к файлу пары ключей в команде ssh шага 10 инструкций как '/desktop/key-pair-filename.pem', и он не работал .
Но затем в окне терминала я перешел в каталог рабочего стола («cd desktop»). После этого я выполнил команду ssh на этот раз, просто поместив 'key-pair-filename.pem' вместо '/desktop/key-pair-filename.pem', и это сработало.