You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

(warning) WARNING: Work In Progress (warning)

The descriptions of the interactions below take this form.

[Protocol] message( input ) : output

The [Protocol] portion describes the protocol, authentication mechanism and identities exchanged.

Suffixes are used in many cases to denote type
tgt = Kerberos Ticket Granting Ticket
kp = Kerberos Principal: nn-kp = The Kerberos principal for the NameNode nn.
kt = Kerberos Ticket: u-jt-kt = A Kerberos Ticket for User u to access the JobTracker jt.

Secure MapReduce Clientu Clientu KDC KDC NameNode NameNode DataNode DataNode JobTracker JobTracker TaskTracker TaskTracker Task Login 1[KRB]kinit(): tgt Setup 2[KRB]ticketRequest( tgt, jt-kp ): u-jt-kt 3[RPC+SASL/KRB:u-jt-kt]getNewJobId(): job-id 4[KRB]ticketRequest( tgt, nn-kp ): u-nn-kt 5[RPC+SASL/KRB:u-nn-kt]getDelegToken(): deleg-token 6[RPC+SASL/KRB:u-nn-kt]createFile( job-cfg-files, deleg-token ): block-loc, block-token Store jobconfig files 7[BTP]writeBlock( block-token, job-files ): void Submit 8[RPC+SASL/KRB:u-jt-kt]submitJob( job-id, job-cfg-dir ): status Execute 9[RPC?]heartbeat(): work opt[If deleg-token expired] 10[RPC?]renewDelegToken( deleg-token ): void How does JT know whenDT renewal is required? 11new() Task 12[RPC?]readFile( deleg-token ): block-loc, block-token Extract job filesto local dir 13[BTP]readBlock( block-token ): job-data 14exec( job-jar, job-dir ) 15[RPC?]writeFile( result-files, deleg-token ): block-loc, block-token Store jobresults 16[BTP]writeBlock( block-token, result-files ): void 17[RPC?]status( job-token, status ): void
  • No labels