I am setting up a 2 nodes hadoop cluster with security, according to
the "Hadoop Security Guide" of Cloudera
(https://ccp.cloudera.com/display/CDHDOC/CDH3+Security+Guide).

Version info.
---------------
hadoop-1.0.0
kerberos-1.8.5
JDK 1.6.0_29
Redhat rhel 4u3

Cluster info.
---------------
host "slavez.demodomain" as NameNode
host "slavey.demodomain" as DataNode
host "master.dedomain" as Kerberos KDC and NTP server

(1) Firstly, the NameNode slavez starts, the DataNode slavez can join
in, and the HDFS works well. ( I am able to put files from local fs
into the HDFS, and to modify file attributes.)
(2) Then I starts the JobTracker at slavez, ant it begins waiting for
RPC from TaskTracker.
(3) But when I starts the TaskTracker at the same node, both the
JobTracker and the TaskTracker give out a
"security.UserGroupInformation" error for user
mapred/slavez.demodomain.


The following are detail logs and any suggestion is appreciated!


----------------------------------------------------------------------------------------------
JobTracker starts
----------------------------------------------------------------------------------------------
[mapred@slavez hadoop-1.0.0]$ ./bin/hadoop jobtracker
12/02/10 18:56:53 INFO mapred.JobTracker: STARTUP_MSG:
/************************************************************
STARTUP_MSG: Starting JobTracker
STARTUP_MSG:   host = slavez.demodomain/192.168.0.14
STARTUP_MSG:   args = []
STARTUP_MSG:   version = 1.0.0
STARTUP_MSG:   build =
https://svn.apache.org/repos/asf/hadoop/common/branches/branch-1.0 -r

1214675; compiled by 'hortonfo' on Thu Dec 15 16:36:35 UTC 2011
************************************************************/
12/02/10 18:56:53 INFO impl.MetricsConfig: loaded properties from
hadoop-metrics2.properties
12/02/10 18:56:53 INFO impl.MetricsSourceAdapter: MBean for source
MetricsSystem,sub=Stats

registered.
12/02/10 18:56:53 INFO impl.MetricsSystemImpl: Scheduled snapshot
period at 10 second(s).
12/02/10 18:56:53 INFO impl.MetricsSystemImpl: JobTracker metrics system started
12/02/10 18:56:53 INFO impl.MetricsSourceAdapter: MBean for source
QueueMetrics,q=default

registered.
12/02/10 18:56:54 INFO impl.MetricsSourceAdapter: MBean for source ugi
registered.
12/02/10 18:56:54 INFO security.UserGroupInformation: Login successful for user

mapred/slavez.demodom...@hadoop.demo.com using keytab file
/etc/hadoop/conf/mapred.keytab
12/02/10 18:56:54 INFO
delegation.AbstractDelegationTokenSecretManager: Updating the current

master key for generating delegation tokens
12/02/10 18:56:54 INFO mapred.JobTracker: Scheduler configured with
(memSizeForMapSlotOnJT,

memSizeForReduceSlotOnJT, limitMaxMemForMapTasks,
limitMaxMemForReduceTasks) (-1, -1, -1, -

1)
12/02/10 18:56:54 INFO util.HostsFileReader: Refreshing hosts
(include/exclude) list
12/02/10 18:56:54 INFO
delegation.AbstractDelegationTokenSecretManager: Starting expired

delegation token remover thread, tokenRemoverScanInterval=60 min(s)
12/02/10 18:56:54 INFO
delegation.AbstractDelegationTokenSecretManager: Updating the current

master key for generating delegation tokens
12/02/10 18:56:54 INFO mapred.JobTracker: Starting jobtracker with
owner as mapred
12/02/10 18:56:54 INFO impl.MetricsSourceAdapter: MBean for source

RpcDetailedActivityForPort9001 registered.
12/02/10 18:56:54 INFO impl.MetricsSourceAdapter: MBean for source
RpcActivityForPort9001

registered.
12/02/10 18:56:54 INFO ipc.Server: Starting SocketReader
12/02/10 18:56:54 INFO mortbay.log: Logging to org.slf4j.impl.Log4jLoggerAdapter

(org.mortbay.log) via org.mortbay.log.Slf4jLog
12/02/10 18:56:55 INFO http.HttpServer: Added global filtersafety

(class=org.apache.hadoop.http.HttpServer$QuotingInputFilter)
12/02/10 18:56:55 INFO http.HttpServer: Port returned by
webServer.getConnectors()

[0].getLocalPort() before open() is -1. Opening the listener on 50030
12/02/10 18:56:55 INFO http.HttpServer: listener.getLocalPort() returned 50030

webServer.getConnectors()[0].getLocalPort() returned 50030
12/02/10 18:56:55 INFO http.HttpServer: Jetty bound to port 50030
12/02/10 18:56:55 INFO mortbay.log: jetty-6.1.26
12/02/10 18:56:55 WARN mortbay.log: Can't reuse
/tmp/Jetty_0_0_0_0_50030_job____yn7qmk,

using /tmp/Jetty_0_0_0_0_50030_job____yn7qmk_2577057088123560744
12/02/10 18:56:55 INFO mortbay.log: Started SelectChannelConnector@0.0.0.0:50030
12/02/10 18:56:55 INFO impl.MetricsSourceAdapter: MBean for source jvm
registered.
12/02/10 18:56:55 INFO impl.MetricsSourceAdapter: MBean for source
JobTrackerMetrics

registered.
12/02/10 18:56:55 INFO mapred.JobTracker: JobTracker up at: 9001
12/02/10 18:56:55 INFO mapred.JobTracker: JobTracker webserver: 50030
12/02/10 18:56:55 INFO mapred.JobTracker: Cleaning up the system directory
12/02/10 18:56:55 WARN fs.FileSystem: "slavez.demodomain" is a
deprecated filesystem name.

Use "hdfs://slavez.demodomain/" instead.
12/02/10 18:56:55 WARN fs.FileSystem: "slavez.demodomain" is a
deprecated filesystem name.

Use "hdfs://slavez.demodomain/" instead.
12/02/10 18:56:55 INFO mapred.JobTracker: History server being
initialized in embedded mode
12/02/10 18:56:55 WARN fs.FileSystem: "slavez.demodomain" is a
deprecated filesystem name.

Use "hdfs://slavez.demodomain/" instead.
12/02/10 18:56:55 WARN fs.FileSystem: "slavez.demodomain" is a
deprecated filesystem name.

Use "hdfs://slavez.demodomain/" instead.
12/02/10 18:56:55 INFO mapred.JobHistoryServer: Started job history server at:

localhost:50030
12/02/10 18:56:55 INFO mapred.JobTracker: Job History Server web
address: localhost:50030
12/02/10 18:56:55 INFO mapred.CompletedJobStatusStore: Completed job
store is inactive
12/02/10 18:56:55 INFO mapred.JobTracker: Refreshing hosts information
12/02/10 18:56:55 INFO util.HostsFileReader: Setting the includes file to
12/02/10 18:56:55 INFO util.HostsFileReader: Setting the excludes file to
12/02/10 18:56:55 INFO util.HostsFileReader: Refreshing hosts
(include/exclude) list
12/02/10 18:56:55 INFO mapred.JobTracker: Decommissioning 0 nodes
12/02/10 18:56:55 INFO ipc.Server: IPC Server Responder: starting
12/02/10 18:56:55 INFO ipc.Server: IPC Server listener on 9001: starting
12/02/10 18:56:55 INFO ipc.Server: IPC Server handler 0 on 9001: starting
12/02/10 18:56:55 INFO ipc.Server: IPC Server handler 1 on 9001: starting
12/02/10 18:56:55 INFO ipc.Server: IPC Server handler 2 on 9001: starting
12/02/10 18:56:55 INFO ipc.Server: IPC Server handler 3 on 9001: starting
12/02/10 18:56:55 INFO ipc.Server: IPC Server handler 4 on 9001: starting
12/02/10 18:56:55 INFO ipc.Server: IPC Server handler 5 on 9001: starting
12/02/10 18:56:55 INFO ipc.Server: IPC Server handler 6 on 9001: starting
12/02/10 18:56:55 INFO ipc.Server: IPC Server handler 7 on 9001: starting
12/02/10 18:56:55 INFO ipc.Server: IPC Server handler 8 on 9001: starting
12/02/10 18:56:55 INFO mapred.JobTracker: Starting RUNNING
12/02/10 18:56:55 INFO ipc.Server: IPC Server handler 9 on 9001: starting

(begin waiting)


----------------------------------------------------------------------------------------------
TaskTracker starts
----------------------------------------------------------------------------------------------

[mapred@slavez hadoop-1.0.0]$ ./bin/hadoop tasktracker
12/02/10 18:57:09 INFO mapred.TaskTracker: STARTUP_MSG:
/************************************************************
STARTUP_MSG: Starting TaskTracker
STARTUP_MSG:   host = slavez.demodomain/192.168.0.14
STARTUP_MSG:   args = []
STARTUP_MSG:   version = 1.0.0
STARTUP_MSG:   build =
https://svn.apache.org/repos/asf/hadoop/common/branches/branch-1.0 -r

1214675; compiled by 'hortonfo' on Thu Dec 15 16:36:35 UTC 2011
************************************************************/
12/02/10 18:57:09 INFO impl.MetricsConfig: loaded properties from
hadoop-metrics2.properties
12/02/10 18:57:09 INFO impl.MetricsSourceAdapter: MBean for source
MetricsSystem,sub=Stats

registered.
12/02/10 18:57:09 INFO impl.MetricsSystemImpl: Scheduled snapshot
period at 10 second(s).
12/02/10 18:57:09 INFO impl.MetricsSystemImpl: TaskTracker metrics
system started
12/02/10 18:57:10 INFO impl.MetricsSourceAdapter: MBean for source ugi
registered.
12/02/10 18:57:10 INFO mortbay.log: Logging to org.slf4j.impl.Log4jLoggerAdapter

(org.mortbay.log) via org.mortbay.log.Slf4jLog
12/02/10 18:57:10 INFO http.HttpServer: Added global filtersafety

(class=org.apache.hadoop.http.HttpServer$QuotingInputFilter)
12/02/10 18:57:11 INFO mapred.TaskLogsTruncater: Initializing logs'
truncater with

mapRetainSize=-1 and reduceRetainSize=-1
12/02/10 18:57:11 WARN security.UserGroupInformation: Terminating renewal thread
12/02/10 18:57:11 INFO security.UserGroupInformation: Asked the TGT
renewer thread to

terminate
12/02/10 18:57:11 INFO security.UserGroupInformation: Login successful for user

mapred/sla...@hadoop.demo.com using keytab file /etc/hadoop/conf/mapred.keytab
12/02/10 18:57:11 INFO mapred.TaskTracker: Starting tasktracker with
owner as mapred
12/02/10 18:57:11 INFO mapred.TaskTracker: Good mapred local directories are:

/home/hadoop0209/hadoop-cluster/mapred/local
12/02/10 18:57:11 WARN util.NativeCodeLoader: Unable to load
native-hadoop library for your

platform... using builtin-java classes where applicable
12/02/10 18:57:11 INFO impl.MetricsSourceAdapter: MBean for source jvm
registered.
12/02/10 18:57:11 INFO impl.MetricsSourceAdapter: MBean for source
TaskTrackerMetrics

registered.
12/02/10 18:57:11 INFO ipc.Server: Starting SocketReader
12/02/10 18:57:11 INFO impl.MetricsSourceAdapter: MBean for source

RpcDetailedActivityForPort32958 registered.
12/02/10 18:57:11 INFO impl.MetricsSourceAdapter: MBean for source
RpcActivityForPort32958

registered.
12/02/10 18:57:11 INFO ipc.Server: IPC Server Responder: starting
12/02/10 18:57:11 INFO ipc.Server: IPC Server listener on 32958: starting
12/02/10 18:57:11 INFO ipc.Server: IPC Server handler 0 on 32958: starting
12/02/10 18:57:11 INFO ipc.Server: IPC Server handler 1 on 32958: starting
12/02/10 18:57:11 INFO ipc.Server: IPC Server handler 2 on 32958: starting
12/02/10 18:57:11 INFO mapred.TaskTracker: TaskTracker up at:

localhost.localdomain/127.0.0.1:32958
12/02/10 18:57:11 INFO mapred.TaskTracker: Starting tracker

tracker_slavez:localhost.localdomain/127.0.0.1:32958
12/02/10 18:57:11 INFO ipc.Server: IPC Server handler 3 on 32958: starting
12/02/10 18:57:11 ERROR security.UserGroupInformation:
PriviledgedActionException

as:mapred/sla...@hadoop.demo.com
cause:org.apache.hadoop.ipc.RemoteException: Failure to

initialize security context
12/02/10 18:57:11 INFO security.UserGroupInformation: Initiating logout for

mapred/sla...@hadoop.demo.com
12/02/10 18:57:11 INFO security.UserGroupInformation: Initiating re-login for

mapred/sla...@hadoop.demo.com
12/02/10 18:57:13 INFO mapred.TaskTracker: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down TaskTracker at slavez.demodomain/192.168.0.14
************************************************************/



----------------------------------------------------------------------------------------------
JobTracker response
----------------------------------------------------------------------------------------------

12/02/10 18:57:11 ERROR security.UserGroupInformation:
PriviledgedActionException

as:mapred/slavez.demodom...@hadoop.demo.com
cause:javax.security.sasl.SaslException: Failure

to initialize security context [Caused by GSSException: No valid
credentials provided

(Mechanism level: Failed to find any Kerberos Key)]
12/02/10 18:57:11 INFO ipc.Server: IPC Server listener on 9001:
readAndProcess threw

exception javax.security.sasl.SaslException: Failure to initialize
security context [Caused

by GSSException: No valid credentials provided (Mechanism level:
Failed to find any Kerberos

Key)]. Count of bytes read: 0
javax.security.sasl.SaslException: Failure to initialize security
context [Caused by

GSSException: No valid credentials provided (Mechanism level: Failed
to find any Kerberos

Key)]
        at 
com.sun.security.sasl.gsskerb.GssKrb5Server.<init>(GssKrb5Server.java:95)
        at 
com.sun.security.sasl.gsskerb.FactoryImpl.createSaslServer(FactoryImpl.java:67)
        at javax.security.sasl.Sasl.createSaslServer(Sasl.java:491)
        at org.apache.hadoop.ipc.Server$Connection$1.run(Server.java:989)
        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:1083)
        at 
org.apache.hadoop.ipc.Server$Connection.saslReadAndProcess(Server.java:986)
        at 
org.apache.hadoop.ipc.Server$Connection.readAndProcess(Server.java:1180)
        at org.apache.hadoop.ipc.Server$Listener.doRead(Server.java:537)
        at org.apache.hadoop.ipc.Server$Listener$Reader.run(Server.java:344)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask

(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:662)
Caused by: GSSException: No valid credentials provided (Mechanism
level: Failed to find any

Kerberos Key)
        at sun.security.jgss.krb5.Krb5AcceptCredential.getInstance

(Krb5AcceptCredential.java:95)
        at sun.security.jgss.krb5.Krb5MechFactory.getCredentialElement

(Krb5MechFactory.java:111)
        at 
sun.security.jgss.GSSManagerImpl.getCredentialElement(GSSManagerImpl.java:178)
        at sun.security.jgss.GSSCredentialImpl.add(GSSCredentialImpl.java:384)
        at sun.security.jgss.GSSCredentialImpl.<init>(GSSCredentialImpl.java:42)
        at 
sun.security.jgss.GSSManagerImpl.createCredential(GSSManagerImpl.java:139)
        at 
com.sun.security.sasl.gsskerb.GssKrb5Server.<init>(GssKrb5Server.java:78)
        ... 13 more
12/02/10 18:57:22 INFO mapred.JobTracker: SHUTDOWN_MSG:
/************************************************************
SHUTDOWN_MSG: Shutting down JobTracker at slavez.demodomain/192.168.0.14
************************************************************/







--
Ian Jiang

Reply via email to