2014-09-10 5 views
0

Я пытаюсь установить sqoop 2 (версия 1.99.3) на кластере EMR Amazon (версия AMI 3.2.0/версия Hadoop 2.4.0). Когда я начинаю сервер sqoop, я вижу эту ошибку в localhost.log:ошибка при запуске сервера sqoop2 на Amazon EMR с пряжей

Sep 10, 2014 4:55:56 PM org.apache.catalina.core.StandardContext listenerStart 
SEVERE: Exception sending context initialized event to listener instance of class org.apache.sqoop.server.ServerInitializer 
java.lang.RuntimeException: Failure in server initialization 
    at org.apache.sqoop.core.SqoopServer.initialize(SqoopServer.java:57) 
    at org.apache.sqoop.server.ServerInitializer.contextInitialized(ServerInitializer.java:36) 
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4206) 
    at org.apache.catalina.core.StandardContext.start(StandardContext.java:4705) 
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:799) 
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:779) 
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:601) 
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:943) 
    at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:778) 
    at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:504) 
    at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1317) 
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:324) 
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:142) 
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1065) 
    at org.apache.catalina.core.StandardHost.start(StandardHost.java:840) 
    at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1057) 
    at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:463) 
    at org.apache.catalina.core.StandardService.start(StandardService.java:525) 
    at org.apache.catalina.core.StandardServer.start(StandardServer.java:754) 
    at org.apache.catalina.startup.Catalina.start(Catalina.java:595) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289) 
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414) 
Caused by: org.apache.sqoop.common.SqoopException: MAPREDUCE_0002:Failure on submission engine initialization 
    at org.apache.sqoop.submission.mapreduce.MapreduceSubmissionEngine.initialize(MapreduceSubmissionEngine.java:115) 
    at org.apache.sqoop.framework.JobManager.initialize(JobManager.java:215) 
    at org.apache.sqoop.core.SqoopServer.initialize(SqoopServer.java:53) 
    ... 25 more 
Caused by: java.io.IOException: Cannot initialize Cluster. Please check your configuration for mapreduce.framework.name and the correspond server addresses. 
    at org.apache.hadoop.mapreduce.Cluster.initialize(Cluster.java:120) 
    at org.apache.hadoop.mapreduce.Cluster.<init>(Cluster.java:82) 
    at org.apache.hadoop.mapreduce.Cluster.<init>(Cluster.java:75) 
    at org.apache.hadoop.mapred.JobClient.init(JobClient.java:470) 
    at org.apache.hadoop.mapred.JobClient.<init>(JobClient.java:449) 
    at org.apache.sqoop.submission.mapreduce.MapreduceSubmissionEngine.initialize(MapreduceSubmissionEngine.java:113) 
    ... 27 more 

Вот что я сделал, согласно installation instructions. Обратите внимание, что с помощью EMR $ HADOOP_HOME является/home/hadoop.

  • Я скачал sqoop-1.99.3-бен-hadoop200.tar.gz из Apache и экстрагируют его в $ HADOOP_HOME/sqoop.
  • добавил следующее в common.loader свойства в catalina.properties: /home/hadoop/share/hadoop/common/*.jar,/home/hadoop/share/hadoop/common/lib/*.jar, /home/hadoop/share/hadoop/mapreduce/*.jar,/home/hadoop/share/hadoop/yarn/*.jar
  • В sqoop.properties:
    • я заменил @ LogDir @ с/дома/Hadoop/sqoop/журнал
    • я заменил @ BASEDIR @ с/дома/Hadoop/sqoop
    • для недвижимости org.apache.sqoop.submission.engine.mapreduce.configuration.directory, я заменил/и т.д./Hadoop/конф/with/home/hadoop/conf/
  • А потом я начал сервер: бен/sqoop.sh запуск сервера

Насколько я могу сказать от ошибки, источником проблемы является эта строка:

Caused by: java.io.IOException: Cannot initialize Cluster. Please check your configuration for mapreduce.framework.name and the correspond server addresses. 

и это свойство установлено в mapred-site.xml:

<property><name>mapreduce.framework.name</name><value>yarn</value></property> 

и это то, что я хочу, чтобы это было.

Я чувствую, что мне не хватает некоторых параметров в установке/конфигурации sqoop, и я пробовал несколько других вещей (например, попробовать AMI 3.0.4/Hadoop 2.2.0), но не смог для запуска сервера sqoop.

fyi. Я прочитал этот пост на Kyle Mulka's blog, но он ссылается на разные версии Hadoop и sqoop и, похоже, не дает понимания моей конфигурации. И я прочитал несколько других страниц на этом сайте, но еще не нашел тот, который ссылается на версии Hadoop и sqoop, которые я использую. И я видел, что эта конфигурация работает с Cloudera (sqoop2 и Hadoop 2 с пряжей), хотя и не смогла выяснить, как это приведет к установке EMR.

ответ

1

Благодаря обратной связи на this post, я изменил свойство common.loader в catalina.properties от того, что у меня было раньше:

common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,${catalina.home}/../lib/*.jar,/home/hadoop/share/hadoop/common/*.jar,/home/hadoop/share/hadoop/common/lib/*.jar,/home/hadoop/share/hadoop/mapreduce/*.jar,/home/hadoop/share/hadoop/yarn/*.jar 

к этому:

common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,${catalina.home}/../lib/*.jar,/home/hadoop/share/hadoop/common/*.jar,/home/hadoop/share/hadoop/common/lib/*.jar,/home/hadoop/share/hadoop/hdfs/*.jar,/home/hadoop/share/hadoop/hdfs/lib/*.jar,/home/hadoop/share/hadoop/mapreduce/*.jar,/home/hadoop/share/hadoop/mapreduce/lib/*.jar,/home/hadoop/share/hadoop/tools/lib/*.jar,/home/hadoop/share/hadoop/yarn/*.jar,/home/hadoop/share/hadoop/yarn/lib/*.jar 

После этого сервер sqoop начался успешно.

+0

Майк, это сработало для вас? Я все еще сталкиваюсь с проблемами с запуском реального sqoop. Sqoop-сервер работает нормально, однако, когда я запускаю клиент для тестирования, он, похоже, терпит неудачу либо с ошибкой Kerberos, либо с некоторой другой ошибкой.Дайте мне знать, если вам удастся продвинуться вперед с помощью sqoop2. благодаря! – user3327034

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

  • Нет связанных вопросов^_^