After Upgrade to BDA V4.4/CDH 5.5.1 Logging into the File Browser Raises: "java.io.IOExcepton: Failed on local exception: java.io.IOException, Couldn't set up connection for hdfs@EXAMPLE.COM" (Doc ID 2121400.1)

Last updated on MARCH 30, 2016

Applies to:

Big Data Appliance Integrated Software - Version 4.4.0 and later
Linux x86-64

Symptoms

After upgrading to BDA V4.4/CDH 5.5.1 logging into the File Browser raises:

Error
java.io.IOExcepton: Failed on local exception: java.io.IOException, Couldn't set up connection for hdfs/example.com@EXAMPLE.COM to
bdanode01.example.com; Host Details : local host is bdanode03.example.com , destination host is bdanode01.example.com

The logs also show:

2016-03-08 16:02:25,084 WARN *@scm-web-155571:com.cloudera.api.ApiExceptionMapper: Unexpected exception.
java.lang.RuntimeException: java.io.IOException: Login failure for hdfs/example.com@EXAMPLE.COM from keytab
/tmp/*-0/hadoop*.keytab
  at com.cloudera.cmf.cdhclient.util.SecurityUtil.performLogin(SecurityUtil.java:118)
  at com.cloudera.cmf.cdhclient.util.SecurityUtil.reloginFromKeytab(SecurityUtil.java:89)
  at com.cloudera.cmf.cdhclient.CdhExecutor$SecurityWrapper.doWork(CdhExecutor.java:182)
  at com.cloudera.cmf.cdhclient.CdhExecutor$1.call(CdhExecutor.java:125)
  at java.util.concurrent.FutureTask.run(FutureTask.java:262)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
  at java.lang.Thread.run(Thread.java:745)
Caused by: java.io.IOException: Login failure for hdfs/example.com@EXAMPLE.COM from keytab
/tmp/*-0/hadoop*.keytab
  at org.apache.hadoop.security.UserGroupInformation.reloginFromKeytab(UserGroupInformation.java:1036)
  at com.cloudera.cmf.cdh5client.security.UserGroupInformationImpl.reloginFromKeytab(UserGroupInformationImpl.java:81)
  at com.cloudera.cmf.cdhclient.util.SecurityUtil.performLogin(SecurityUtil.java:113)
  ... 7 more
Caused by: javax.security.auth.login.LoginException: Unable to obtain password from user
  at com.sun.security.auth.module.Krb5LoginModule.promptForPass(Krb5LoginModule.java:856)
  at com.sun.security.auth.module.Krb5LoginModule.attemptAuthentication(Krb5LoginModule.java:719)
  at com.sun.security.auth.module.Krb5LoginModule.login(Krb5LoginModule.java:584)
  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 javax.security.auth.login.LoginContext.invoke(LoginContext.java:762)
  at javax.security.auth.login.LoginContext.access$000(LoginContext.java:203)
  at javax.security.auth.login.LoginContext$4.run(LoginContext.java:690)
  at javax.security.auth.login.LoginContext$4.run(LoginContext.java:688)
  at java.security.AccessController.doPrivileged(Native Method)
  at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:687)
  at javax.security.auth.login.LoginContext.login(LoginContext.java:595)
  at org.apache.hadoop.security.UserGroupInformation.reloginFromKeytab(UserGroupInformation.java:1028)
  ... 9 more

This exception occurs when an attempt to use the keytab to log in fails. The java krb5 code then attempts to prompt for password which, of course, fails.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms