3

Я пытаюсь запустить экземпляр на Amazon EC2. Я исследовал эту проблему широко, но я не нашел полезной информации.Как правильно настроить Amazon EC2 AMI для «hadoop-ec2»?

Когда я запускаю команду hadoop-ec2 launch-cluster mycluster 2, я получаю следующее сообщение об ошибке:

Starting master with AMI. 
Required parameter 'AMI' missing (-h for usage) 

Я ввел свой ключ AWS, AWS секретный ключ, пары ключей AWS и т.д. Я использую Hadoop-1.0.4 , Я использую ведро по умолчанию S3 (hadoop-images), но я пробовал много других AMI, и я всегда получаю то же сообщение об ошибке.

Неужели кто-нибудь испытывает эту проблему раньше?

ответ

1

Основная проблема заключается в том, что поиск изображений, выполняемых сценарием launch-hadoop-master, не возвращает никаких результатов. Наиболее вероятная причина этого в связи с различными ОИМ, которые доступны в разных регионах (но это может быть связано с любыми изменениями, внесенными вами в S3_BUCKET и HADOOP_VERSION в hadoop-ec2-env.sh).

Из launch-hadoop-master сценария:

# Finding Hadoop image 
AMI_IMAGE=`ec2-describe-images -a | grep $S3_BUCKET 
            | grep $HADOOP_VERSION 
            | grep $ARCH 
            | grep available 
            | awk '{print $2}'` 

# Start a master 
echo "Starting master with AMI $AMI_IMAGE" 

Таким образом, оказывается, что AMI_IMAGE не быть установлено правильное изображение и, таким образом, поиск МАСС, которые соответствуют различным grep фильтров не удается (по умолчанию для Hadoop 1.0.4 - S3_BUCKET - hadoop-images, HADOOP_VERSION - 0.19.0 и ARCH - x86, если вы используете m1.small экземпляры). Если вы ищете public AMIs in the US-West-2 region, вы увидите, что изображений Hadoop не так много, но если вы найдете public AMIs in the US-East-1 region, вы увидите, что их довольно много. Таким образом, одним из способов решения этой проблемы является работа в регионе США-Восток-1 (это проще) или, альтернативно, установить EC2_URL в свой скрипт входа в систему через export EC2_URL=https://ec2.us-east-1.amazonaws.com, но теперь вам нужно убедиться, что вы поместите свои ключи в этом регионе из AWS-консоли.

Если вы действительно изменить HADOOP_VERSION к 1.0.4, отмечу, что

ec2-describe-images -a | grep hadoop-images 
         | grep "1.0.4"' 
         | grep x86 
         | grep available 

не возвращает изображения в американо-Восток-1 регионе. Обратите внимание, что версия (HADOOP_VERSION) дистрибутива Hadoop, в которой вы используете команду hadoop-ec2, не должна быть такой же, как версия Hadoop, что изображения будут работать.

Наконец, как тупой исправить, можно найти AMI, который вы хотите использовать, и сила установить AMI_IMAGE на имя изображения в launch-hadoop-master и launch-hadoop-cluster сценариев.

Смежные вопросы