[ 
https://issues.apache.org/jira/browse/OOZIE-2292?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14614767#comment-14614767
 ] 

davide anastasia commented on OOZIE-2292:
-----------------------------------------

To add more details to this ticket, I have put the S3 credential into the 
hadoop-conf/core-site.xml of my Oozie installation. As I am using Amazon 
Elastic MapReduce (EMR), I don't have S3 credential into the core-site.xml file 
of my Hadoop cluster (EMR uses EmrFs, which is a custom FileSystem 
implementation by Amazon for S3). How do the two interact?

> Oozie doesn't read S3 credentials from core-site.xml
> ----------------------------------------------------
>
>                 Key: OOZIE-2292
>                 URL: https://issues.apache.org/jira/browse/OOZIE-2292
>             Project: Oozie
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 4.2.0
>            Reporter: davide anastasia
>
> I have compiled Oozie 4.2.0 using Hadoop 2.4.0. I then changed my 
> configuration as explained in OOZIE-426. My coordinator/workflow XML(s) are 
> on HDFS, while my input data is in S3. Ideally I would have loved to have my 
> coordinator/workflow XML(s) on S3 too.
> When I perform a dry run, I get the following:
> {code}
> 2015-07-03 16:56:16,639  WARN CoordSubmitXCommand:523 - SERVER[englebert] 
> USER[davide] GROUP[-] TOKEN[] APP[my-app-coord] 
> JOB[0000000-150703165554194-oozie-davi-C] ACTION[-] ERROR:  
> java.lang.IllegalArgumentException: AWS Access Key ID and Secret Access Key 
> must be specified as the username or password (respectively) of a s3n URL, or 
> by setting the fs.s3n.awsAccessKeyId or fs.s3n.awsSecretAccessKey properties 
> (respectively).
>       at 
> org.apache.hadoop.fs.s3.S3Credentials.initialize(S3Credentials.java:70)
>       at 
> org.apache.hadoop.fs.s3native.Jets3tNativeFileSystemStore.initialize(Jets3tNativeFileSystemStore.java:73)
>       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.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:190)
>       at 
> org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:103)
>       at org.apache.hadoop.fs.s3native.$Proxy28.initialize(Unknown Source)
>       at 
> org.apache.hadoop.fs.s3native.NativeS3FileSystem.initialize(NativeS3FileSystem.java:272)
>       at 
> org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2397)
>       at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:89)
>       at 
> org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2431)
>       at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2413)
>       at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:368)
>       at 
> org.apache.oozie.service.HadoopAccessorService$4.run(HadoopAccessorService.java:488)
>       at 
> org.apache.oozie.service.HadoopAccessorService$4.run(HadoopAccessorService.java:486)
>       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:1548)
>       at 
> org.apache.oozie.service.HadoopAccessorService.createFileSystem(HadoopAccessorService.java:486)
>       at 
> org.apache.oozie.dependency.FSURIHandler.getFileSystem(FSURIHandler.java:166)
>       at 
> org.apache.oozie.dependency.FSURIHandler.exists(FSURIHandler.java:100)
>       at 
> org.apache.oozie.command.coord.CoordActionInputCheckXCommand.pathExists(CoordActionInputCheckXCommand.java:579)
>       at 
> org.apache.oozie.command.coord.CoordActionInputCheckXCommand.checkListOfPaths(CoordActionInputCheckXCommand.java:550)
>       at 
> org.apache.oozie.command.coord.CoordActionInputCheckXCommand.checkResolvedUris(CoordActionInputCheckXCommand.java:520)
>       at 
> org.apache.oozie.command.coord.CoordActionInputCheckXCommand.checkInput(CoordActionInputCheckXCommand.java:351)
>       at 
> org.apache.oozie.command.coord.CoordCommandUtils.dryRunCoord(CoordCommandUtils.java:573)
>       at 
> org.apache.oozie.command.coord.CoordCommandUtils.materializeOneInstance(CoordCommandUtils.java:541)
>       at 
> org.apache.oozie.command.coord.CoordMaterializeTransitionXCommand.materializeActions(CoordMaterializeTransitionXCommand.java:485)
>       at 
> org.apache.oozie.command.coord.CoordSubmitXCommand.getDryRun(CoordSubmitXCommand.java:316)
>       at 
> org.apache.oozie.command.coord.CoordSubmitXCommand.submitJob(CoordSubmitXCommand.java:248)
>       at 
> org.apache.oozie.command.coord.CoordSubmitXCommand.submit(CoordSubmitXCommand.java:203)
>       at 
> org.apache.oozie.command.SubmitTransitionXCommand.execute(SubmitTransitionXCommand.java:82)
>       at 
> org.apache.oozie.command.SubmitTransitionXCommand.execute(SubmitTransitionXCommand.java:30)
>       at org.apache.oozie.command.XCommand.call(XCommand.java:286)
>       at 
> org.apache.oozie.CoordinatorEngine.dryRunSubmit(CoordinatorEngine.java:561)
>       at 
> org.apache.oozie.servlet.V1JobsServlet.submitCoordinatorJob(V1JobsServlet.java:228)
>       at 
> org.apache.oozie.servlet.V1JobsServlet.submitJob(V1JobsServlet.java:95)
>       at 
> org.apache.oozie.servlet.BaseJobsServlet.doPost(BaseJobsServlet.java:102)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:643)
>       at 
> org.apache.oozie.servlet.JsonRestServlet.service(JsonRestServlet.java:304)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>       at org.apache.oozie.servlet.AuthFilter$2.doFilter(AuthFilter.java:171)
>       at 
> org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:392)
>       at org.apache.oozie.servlet.AuthFilter.doFilter(AuthFilter.java:176)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>       at 
> org.apache.oozie.servlet.HostnameFilter.doFilter(HostnameFilter.java:86)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
>       at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
>       at 
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:620)
>       at 
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
>       at java.lang.Thread.run(Thread.java:745)
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to