메뉴 건너뛰기

Bigdata, Semantic IoT, Hadoop, NoSQL

Bigdata, Hadoop ecosystem, Semantic IoT등의 프로젝트를 진행중에 습득한 내용을 정리하는 곳입니다.
필요한 분을 위해서 공개하고 있습니다. 문의사항은 gooper@gooper.com로 메일을 보내주세요.


hadoop 2.6.0환경에서 sqoop 1.4.6을 설치하고 sqoop-import를 실행하면 아래와 같은 오류가 발생하는데..

sqoop이 사용하는 jar파일과 설치된 hadoop jar파일중 일부에서 변경사항이 생겨서 문제가 발생한것이다.

(https://issues.apache.org/jira/browse/MAPREDUCE-6167)

 

Exception in thread "main" java.lang.NoSuchMethodError: org.apache.hadoop.http.HttpConfig.getSchemePrefix()Ljava/lang/String;

 

-->해결방법(sqoop : sqoop-1.4.6.bin__hadoop-2.0.4-alpha, hadoop : hadoop 2.6.0인 경우)이 설치된 폴더에서)...

cp /usr/local/hadoop/share/hadoop/mapreduce/*.jar /usr/local/sqoop/lib하고 실행시키면 정상적으로 작동된다.

====> 처음 한번정도 실행되지만 이후는 map 100% reduce 0%에서 멈춰있다가.. 아래와 같은 오류가 발생하면서 job이 fail된다.

Container killed on request. Exit code is 143
Container exited with a non-zero exit code 143

 

===> oozie가 사용하는 sharelibs의 sqoop등 관련 라이브러리를 hadoop2로 변경및 hadoop2기반으로 생성된 lib로 교체해주어야 한다.

===>인터넷 사이트 참조할것

 

 

----참고--------

 

sqoop-export  --connect jdbc:postgresql://server.mydb.com:5432/destdb --username abc --password abcpass --table test --input-fields-terminated-by '01' --input-lines-terminated-by 'n'  --input-null-string '\N' --input-null-non-string '\N' --export-dir /user/hive/warehouse/test 

 
 
-----------오류내용-----------
14/11/17 23:47:45 INFO mapreduce.JobSubmitter: Cleaning up the staging area /user/zjshen/.staging/zjshen/.staging/job_1416270549965_0014
java.lang.NoSuchMethodError: org.apache.hadoop.http.HttpConfig.getSchemePrefix()Ljava/lang/String;
        at org.apache.hadoop.mapred.ClientServiceDelegate.getJobStatus(ClientServiceDelegate.java:428)
        at org.apache.hadoop.mapred.YARNRunner.submitJob(YARNRunner.java:302)
        at org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:430)
        at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
        at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:415)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1628)
        at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
        at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
        at org.apache.hadoop.examples.QuasiMonteCarlo.estimatePi(QuasiMonteCarlo.java:306)
        at org.apache.hadoop.examples.QuasiMonteCarlo.run(QuasiMonteCarlo.java:354)
        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
        at org.apache.hadoop.examples.QuasiMonteCarlo.main(QuasiMonteCarlo.java:363)
        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.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:71)
        at org.apache.hadoop.util.ProgramDriver.run(ProgramDriver.java:144)
        at org.apache.hadoop.examples.ExampleDriver.main(ExampleDriver.java:74)
        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.hadoop.util.RunJar.run(RunJar.java:221)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:136)	
{code}

b. In the following scenarios:

1. Either insecure or secure;
2. MR 2.2 with old shuffle on NM;
3. Submitting via old client.

We will see the following exception in the AM Log:
{code}
2014-11-17 15:09:06,157 INFO [main] org.apache.hadoop.mapreduce.v2.app.MRAppMaster: Created
MRAppMaster for application appattempt_1416264695865_0007_000001
2014-11-17 15:09:06,436 FATAL [main] org.apache.hadoop.mapreduce.v2.app.MRAppMaster: Error
starting MRAppMaster
java.lang.NoSuchMethodError: org.apache.hadoop.http.HttpConfig.setPolicy(Lorg/apache/hadoop/http/HttpConfig$Policy;)V
        at org.apache.hadoop.mapreduce.v2.app.MRAppMaster.main(MRAppMaster.java:1364)
2014-11-17 15:09:06,439 INFO [Thread-1] org.apache.hadoop.mapreduce.v2.app.MRAppMaster: MRAppMaster
received a signal. Signaling RMCommunicator and JobHistoryEventHandler.
{code}

The two exceptions are actually the same problem, but using the old client prevents it happening
during app submission. Will file a separate Jira for it.


was (Author: zjshen):
a. In the following scenarios:

1. Either insecure or secure;
2. MR 2.2 with either old or new shuffle handler on NM;
3. Submitting via new client.

We will see the following console exception:
{code}
14/11/17 23:47:45 INFO mapreduce.JobSubmitter: Cleaning up the staging area /user/zjshen/.staging/zjshen/.staging/job_1416270549965_0014
java.lang.NoSuchMethodError: org.apache.hadoop.http.HttpConfig.getSchemePrefix()Ljava/lang/String;
        at org.apache.hadoop.mapred.ClientServiceDelegate.getJobStatus(ClientServiceDelegate.java:428)
        at org.apache.hadoop.mapred.YARNRunner.submitJob(YARNRunner.java:302)
        at org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:430)
        at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1268)
        at org.apache.hadoop.mapreduce.Job$10.run(Job.java:1265)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:415)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1628)
        at org.apache.hadoop.mapreduce.Job.submit(Job.java:1265)
        at org.apache.hadoop.mapreduce.Job.waitForCompletion(Job.java:1286)
        at org.apache.hadoop.examples.QuasiMonteCarlo.estimatePi(QuasiMonteCarlo.java:306)
        at org.apache.hadoop.examples.QuasiMonteCarlo.run(QuasiMonteCarlo.java:354)
        at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
        at org.apache.hadoop.examples.QuasiMonteCarlo.main(QuasiMonteCarlo.java:363)
        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.hadoop.util.ProgramDriver$ProgramDescription.invoke(ProgramDriver.java:71)
        at org.apache.hadoop.util.ProgramDriver.run(ProgramDriver.java:144)
        at org.apache.hadoop.examples.ExampleDriver.main(ExampleDriver.java:74)
        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.hadoop.util.RunJar.run(RunJar.java:221)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:136)	
{code}

b. In the following scenarios:
1. Either insecure or secure;
2. MR 2.2 with old on NM;
3. Submitting via old client.

We will see the following exception in the AM Log:
{code}
2014-11-17 15:09:06,157 INFO [main] org.apache.hadoop.mapreduce.v2.app.MRAppMaster: Created
MRAppMaster for application appattempt_1416264695865_0007_000001
2014-11-17 15:09:06,436 FATAL [main] org.apache.hadoop.mapreduce.v2.app.MRAppMaster: Error
starting MRAppMaster
java.lang.NoSuchMethodError: org.apache.hadoop.http.HttpConfig.setPolicy(Lorg/apache/hadoop/http/HttpConfig$Policy;)V
        at org.apache.hadoop.mapreduce.v2.app.MRAppMaster.main(MRAppMaster.java:1364)
2014-11-17 15:09:06,439 INFO [Thread-1] org.apache.hadoop.mapreduce.v2.app.MRAppMaster: MRAppMaster
received a signal. Signaling RMCommunicator and JobHistoryEventHandler.
{code}

The two exceptions are actually the same problem, but using the old client prevents it happening
during app submission. Will file a separate Jira for it.

> Compatibility validation between YARN 2.2/2.4 and 2.6
> -----------------------------------------------------
>
>                 Key: YARN-2879
>                 URL: https://issues.apache.org/jira/browse/YARN-2879
>             Project: Hadoop YARN
>          Issue Type: Bug
>            Reporter: Zhijie Shen
>            Assignee: Zhijie Shen
>
> Recently, I did some simple backward compatibility experiments. Bascially, I've taken
the following 2 steps:
> 1. Deploy the application (MR and DistributedShell) that is compiled against *old* YARN
API (2.2/2.4) on *new* YARN cluster (2.6). The application is submitted via *new* Hadoop (2.6)
client.
> 2. Deploy the application (MR and DistributedShell) that is compiled against *old* YARN
API (2.2/2.4) on *new* YARN cluster (2.6). The application is submitted via *old* Hadoop (2.2/2.4)
client that comes with the app.
> I've tried these 2 steps on both insecure and secure cluster. Here's a short summary:
> || || || DS 2.2 || DS 2.4 || MR 2.2 + Shuffle 2.2 || MR 2.2 + Shuffle 2.6 || MR 2.4 +
Shuffle 2.4 || MR 2.4 + Shuffle 2.6 ||
> | Insecure | New Client | OK | OK | Client Incompatible | Client Incompatible | OK |
OK |
> | Insecure | Old Client | OK | OK | AM Incompatible | Client Incompatible | OK | OK |
> | secure | New Client | OK | OK | Client Incompatible | Client Incompatible | OK | OK
|
> | secure | Old Client | OK | OK | AM Incompatible | Client Incompatible | OK | OK |
> Note that I've tried to run NM with both old and new shuffle handler version.
> In general, the compatibility looks good overall. There're a few issues that are related
to MR, but they seem to be not the YARN issue. I'll post the individual problem in the follow-up
comments.
번호 제목 글쓴이 날짜 조회 수
480 conda를 이용한 jupyterhub(v0.9)및 jupyter설치 (v4.4.0) 총관리자 2018.07.30 421
479 컬럼및 라인의 구분자를 지정하여 sqoop으로 데이타를 가져오고 hive테이블을 생성하는 명령문 총관리자 2018.08.03 418
478 CDP에서 AD와 Kerberos를 활용하여 인증 환경을 구축하는 3가지 방법 gooper 2022.06.10 416
477 kafka 0.9.0.1 for scala 2.1.1 설치및 테스트 총관리자 2016.05.02 412
476 Permission denied: user=hadoop, access=EXECUTE, inode="/tmp":root:supergroup:drwxrwx--- 오류해결방법 총관리자 2015.05.17 412
475 S2RDF를 실행부분만 추출하여 1건의 triple data를 HDFS에 등록, sparql을 sql로 변환, sql실행하는 방법및 S2RDF소스 컴파일 방법 총관리자 2016.06.15 410
474 원보드 컴퓨터 비교표 file 총관리자 2014.08.04 408
473 2개 data를 join하고 마지막으로 code정보를 join하여 결과를 얻는 mr 프로그램 총관리자 2014.06.30 408
472 Job이 끝난 log을 볼수 있도록 설정하기 총관리자 2016.05.30 403
» Exception in thread "main" java.lang.NoSuchMethodError: org.apache.hadoop.http.HttpConfig.getSchemePrefix()Ljava/lang/String; 해결->실패 총관리자 2015.06.14 402
470 [백업] 리눅스 시스템 백업하기 (Linux System Backup) - TAR 사용 시스템 전체 백업 총관리자 2022.01.19 399
469 source, sink를 직접 구현하여 사용하는 예시 총관리자 2019.05.30 398
468 Eclipse실행시 Java was started but returned exit code=1이라는 오류가 발생할때 조치방법 총관리자 2016.11.07 397
467 Cassandra 3.4(3.10) 설치/설정 (5대로 clustering) 총관리자 2016.04.11 397
466 Error: E0501 : E0501: Could not perform authorization operation, User: hadoop is not allowed to impersonate hadoop 해결하는 방법 총관리자 2015.06.07 385
465 hive metadata(hive, impala, kudu 정보가 있음) 테이블에서 db, table, owner, location를 조회하는 쿼리 총관리자 2020.02.07 380
464 sparql 문법구조 설명 file 총관리자 2015.12.09 378
463 특정문자열이나 URI를 임의로 select 절에 지정하여 사용할때 사용하는 sparql 문장 총관리자 2016.08.25 376
462 namenode오류 복구시 사용하는 명령 총관리자 2016.04.01 375
461 scan의 startrow, stoprow지정하는 방법 총관리자 2015.04.08 375

A personal place to organize information learned during the development of such Hadoop, Hive, Hbase, Semantic IoT, etc.
We are open to the required minutes. Please send inquiries to gooper@gooper.com.

위로