0

Hadoop 1.2.1 を実行しており、ユーザー hadoopuser 用に構成されています。Windows マシンからジョブを送信しようとしていますが、Windows マシンでは Hadoop ユーザーではなくなったため、次のような問題が発生します。

security.UserGroupInformation: PriviledgedActionException

Windows マシンから Hadoop ユーザーのジョブを送信する方法はありますか?

更新: スタック トレース:

 ERROR security.UserGroupInformation: PriviledgedActionException as:windowsuser cause:org.apache.hadoop.security.AccessControlException: org.apache.hadoop.security.AccessControlException: Permission denied: user=windowsuser, access=WRITE, inode="mapred":hadoopuser:supergroup:rwxr-xr-x
org.apache.hadoop.security.AccessControlException: org.apache.hadoop.security.AccessControlException: Permission denied: user=windowsuser, access=WRITE, inode="mapred":hadoopuser:supergroup:rwxr-xr-x
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
    at org.apache.hadoop.ipc.RemoteException.instantiateException(RemoteException.java:95)
    at org.apache.hadoop.ipc.RemoteException.unwrapRemoteException(RemoteException.java:57)
    at org.apache.hadoop.hdfs.DFSClient.mkdirs(DFSClient.java:1459)
    at org.apache.hadoop.hdfs.DistributedFileSystem.mkdirs(DistributedFileSystem.java:362)
    at org.apache.hadoop.mapreduce.JobSubmissionFiles.getStagingDir(JobSubmissionFiles.java:126)
    at org.apache.hadoop.mapred.JobClient$2.run(JobClient.java:942)
    at org.apache.hadoop.mapred.JobClient$2.run(JobClient.java:936)
    at java.security.AccessController.doPrivileged(Native Method)
    at javax.security.auth.Subject.doAs(Subject.java:415)
    at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1190)
    at org.apache.hadoop.mapred.JobClient.submitJobInternal(JobClient.java:936)
    at org.apache.hadoop.mapred.JobClient.submitJob(JobClient.java:910)
    at org.apache.hadoop.mapred.JobClient.runJob(JobClient.java:1353)
    at com.rf.mapreduce.WordCount.main(WordCount.java:40)
4

1 に答える 1

0

エラーログ全体を投稿していただけますか?

ユーザーを変更したときに出力ファイルをクリーンアップしなかったことが問題だと思います。

試す :

hdfs dfs -rmr /home/hadoop/your-output-dir

パスは HDFS の実装によって異なります。

于 2013-11-05T14:02:45.397 に答える