KerberosをHadoopに実装する方法を学ぼうとしています。
このドキュメントを確認しました https://issues.apache.org/jira/browse/HADOOP-4487
基本的なKerberos関連のものも確認しました(https://www.youtube.com/watch?v=KD2Q-2ToloE)
1)Apacheドキュメントでは「トークン」という単語が使用されていますが、インターネット上の一般的なドキュメントでは「チケット」という用語が使用されています。
トークンとチケットは同じですか?
2)Apacheドキュメントも「DataNodesはそのデータブロックへのアクセスにアクセス制御を強制しません。
これにより、許可されていないクライアントがブロックIDを提供できる限り、データブロックを読み取ることができます。誰でも任意のデータブロックをDataNodeに書き込むことも可能です。」
これについての私の考え:-
次のコマンドを使用して、ファイルパスからブロックIDをフェッチできます。-
hadoop@Studio-1555:/opt/hadoop/hadoop-1.0.2/bin$ ./hadoop fsck /hadoop/mapred/system/jobtracker.info -files -blocks
FSCKは、パス/hadoop/mapred/system/jobtracker.infoの127.0.0.1からhadoopによってMon Jul 09 06:57:14 EDT 2012 /hadoop/mapred/system/jobtracker.info 4バイト、1ブロックで開始されました。 :OK0。blk_-9148080207111019586_1001len = 4 repl = 1
このファイルjobtracker.infoへのアクセスが許可されているため、上記のコマンドを使用してそのblockIDを見つけることができました。
このブロックIDにオフセットを追加して、そのデータノードに書き込むと思います。
HDFSにファイルを書き込むときにblockIDを明示的に指定するにはどうすればよいですか(コマンドは何ですか?)
任意のデータブロックをDataNodeに書き込む他の方法はありますか?
私のアプローチが間違っているかどうか教えてください。