简体   繁体   中英

java.io.IOException: failure to login: No LoginModules configured for hadoop_simple

I'm trying to run my first Talend job from TAC. I'm trying to call big data batch from a standard job. It is running fine from the local cluster, but while running the same job from TAC i'm facing this error.

moment;pid;root_pid;father_pid;project;job;context;priority;type;origin;message;code
2017-02-13 07:54:29;20170213075427_jnxLB;20170213075427_jnxLB;20170213075427_jnxLB;ELT_3_0;CustomerDataLoad;hadoop;6;Java Exception;tRunJob_2;java.lang.RuntimeException:Child job returns 1. It doesn't terminate normally.
java.io.IOException: failure to login: No LoginModules configured for hadoop_simple
    at org.apache.hadoop.security.UserGroupInformation.loginUserFromSubject(UserGroupInformation.java:724)
    at org.apache.hadoop.security.UserGroupInformation.getLoginUser(UserGroupInformation.java:676)
    at org.apache.hadoop.security.UserGroupInformation.getCurrentUser(UserGroupInformation.java:560)
    at org.apache.hadoop.fs.FileSystem$Cache$Key.<init>(FileSystem.java:2784)
    at org.apache.hadoop.fs.FileSystem$Cache$Key.<init>(FileSystem.java:2776)
    at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2642)
    at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:404)
    at org.apache.hadoop.fs.FileSystem.getLocal(FileSystem.java:375)
    at org.apache.hadoop.util.GenericOptionsParser.validateFiles(GenericOptionsParser.java:392)
    at org.apache.hadoop.util.GenericOptionsParser.processGeneralOptions(GenericOptionsParser.java:288)
    at org.apache.hadoop.util.GenericOptionsParser.parseGeneralOptions(GenericOptionsParser.java:479)
    at org.apache.hadoop.util.GenericOptionsParser.<init>(GenericOptionsParser.java:170)
    at org.apache.hadoop.util.GenericOptionsParser.<init>(GenericOptionsParser.java:153)
    at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:64)
    at elt_3_0.hbase_customertable_0_1.Hbase_customertable.runJobInTOS(Hbase_customertable.java:38664)
    at elt_3_0.hbase_customertable_0_1.Hbase_customertable.main(Hbase_customertable.java:38642)
Caused by: javax.security.auth.login.LoginException: No LoginModules configured for hadoop_simple
    at javax.security.auth.login.LoginContext.init(LoginContext.java:272)
    at javax.security.auth.login.LoginContext.<init>(LoginContext.java:389)
    at org.apache.hadoop.security.UserGroupInformation.newLoginContext(UserGroupInformation.java:450)
    at org.apache.hadoop.security.UserGroupInformation.loginUserFromSubject(UserGroupInformation.java:696)
    ... 15 more

Am i missing any dependencies? Any help can be appreciated.

Solved it, by adding the property " -Djava.security.auth.login.config " in JVM props and pointed the property towards /opt/mapr/conf/mapr.login.conf. So, in mapr.login.conf there is hadoop login class

/**
 * simple login, just get OS creds
 */
hadoop_simple {
  org.apache.hadoop.security.login.GenericOSLoginModule required;
  org.apache.hadoop.security.login.HadoopLoginModule required;
};

Which enables the user to submit applications to the server which all the proper modules.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM