could you please give me a bit more details? I am really not good at kerberoes.
Thanks. Regards, Zheyi Rong On Tue, May 21, 2013 at 3:34 PM, Rahul Bhattacharjee < [email protected]> wrote: > I think you can have a keytab file for the user and use that for > authentication. It would renew the credentials when it expires. > > > > On Tue, May 21, 2013 at 4:01 PM, zheyi rong <[email protected]> wrote: > >> Hi all, >> >> I would like to run my hadoop job in a bash file for several times, e.g. >> #!/usr/bin/env bash >> for i in {1..10} >> do >> my-hadoop-job >> done >> >> Since I don't want to keep my laptop on for hours, I run this bash script >> on a server >> via a SSH session. >> >> However, the bash script always terminated after my logging out of that >> server by >> 'ctrl-z, bg, disown, exit'. >> >> Using GNU 'screen' detaching and reattaching, I can see the following >> exceptions: >> >> Caused by: java.io.IOException: javax.security.sasl.SaslException: GSS >> initiate failed [Caused by GSSException: No valid credentials provided >> (Mechanism level: Failed to find any Kerberos tgt)] >> at org.apache.hadoop.ipc.Client$Connection$1.run(Client.java:554) >> at java.security.AccessController.doPrivileged(Native Method) >> at javax.security.auth.Subject.doAs(Subject.java:396) >> at >> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1278) >> at >> org.apache.hadoop.ipc.Client$Connection.handleSaslConnectionFailure(Client.java:499) >> at >> org.apache.hadoop.ipc.Client$Connection.setupIOstreams(Client.java:601) >> at >> org.apache.hadoop.ipc.Client$Connection.access$2300(Client.java:212) >> at org.apache.hadoop.ipc.Client.getConnection(Client.java:1292) >> at org.apache.hadoop.ipc.Client.call(Client.java:1121) >> ... 30 more >> Caused by: javax.security.sasl.SaslException: GSS initiate failed [Caused >> by GSSException: No valid credentials provided (Mechanism level: Failed to >> find any Kerberos tgt)] >> at >> com.sun.security.sasl.gsskerb.GssKrb5Client.evaluateChallenge(GssKrb5Client.java:194) >> at >> org.apache.hadoop.security.SaslRpcClient.saslConnect(SaslRpcClient.java:134) >> at >> org.apache.hadoop.ipc.Client$Connection.setupSaslConnection(Client.java:415) >> at >> org.apache.hadoop.ipc.Client$Connection.access$1100(Client.java:212) >> at org.apache.hadoop.ipc.Client$Connection$2.run(Client.java:594) >> at org.apache.hadoop.ipc.Client$Connection$2.run(Client.java:591) >> at java.security.AccessController.doPrivileged(Native Method) >> at javax.security.auth.Subject.doAs(Subject.java:396) >> at >> org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1278) >> at >> org.apache.hadoop.ipc.Client$Connection.setupIOstreams(Client.java:590) >> ... 33 more >> Caused by: GSSException: No valid credentials provided (Mechanism level: >> Failed to find any Kerberos tgt) >> at >> sun.security.jgss.krb5.Krb5InitCredential.getInstance(Krb5InitCredential.java:130) >> at >> sun.security.jgss.krb5.Krb5MechFactory.getCredentialElement(Krb5MechFactory.java:106) >> at >> sun.security.jgss.krb5.Krb5MechFactory.getMechanismContext(Krb5MechFactory.java:172) >> at >> sun.security.jgss.GSSManagerImpl.getMechanismContext(GSSManagerImpl.java:209) >> at >> sun.security.jgss.GSSContextImpl.initSecContext(GSSContextImpl.java:195) >> at >> sun.security.jgss.GSSContextImpl.initSecContext(GSSContextImpl.java:162) >> at >> com.sun.security.sasl.gsskerb.GssKrb5Client.evaluateChallenge(GssKrb5Client.java:175) >> ... 42 more >> >> The cluster is deployed with cdh3. >> >> so how can I keep my script running after logging out ? >> >> Thank you in advance. >> >> Regards, >> Zheyi Rong >> > >
