Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
3.4.0
-
Reviewed
Description
Running Hadoop Archive tool (HAR) against source/dest that are not HDFS does not work today.
Example:
hadoop archive -archiveName foo.har -p ofs://ozone1/vol2/bucket2/src/ ofs://ozone1/vol2/bucket2/dst/
The command fails because it's essentially a MapReduce job and for some reason it does not obtain Ozone delegation token (only HDFS and KMS)
The failure:
22/11/30 18:12:10 INFO mapreduce.Job: Job job_1669745757520_0001 failed with state FAILED due to: Job setup failed : java.io.IOException: org.apache.hadoop.security.AccessControlException: Client cannot authenticate via:[TOKEN, KERBEROS] at org.apache.hadoop.ipc.Client$Connection$1.run(Client.java:789) at java.security.AccessController.doPrivileged(Native Method) ...
The workaround is to add the ozone path as the default file system:
export HADOOP_OPTS="$HADOOP_OPTS -Dfs.defaultFS=ofs://ozone1/vol2/bucket2"
A proper fix should make sure HAR requests delegation tokens from src/dest file system too.
Attachments
Issue Links
- links to