Hi Zhankun,
There is "chuser" option, but this command only change the  owner in hdfs 
folder. hbase org.apache.hadoop.hbase.snapshot.ExportSnapshot -snapshot 
MySnapshot -copy-to hdfs://srv2:<hdfs_port>/hbase -chuser MyUser -chgroup 
MyGroup -chmod 700 -mappers 16/data/hadoop/logs/userlogs is a local folder 
create by nodemanager. 

 Since the service is configured to start with user magnews, he creates the 
folder with owner magnews.I tried putting both magnews and hbase in the same 
user group, but it didn't work anyway.
 Surely it would be reasonable to create the magnews user locally and use that 
user to run the command. But is there no way around this problem?The folder has 
magnews as owner, but anyway all users have write permissions in that folder.


    Il martedì 25 gennaio 2022, 04:57:43 CET, Zhankun Tang <zt...@apache.org> 
ha scritto:  
 
 Hi Hamado,Does the `ExportSnapshot` has option to use the same `magnews` user? 
Maybe you can try to create a same name user in local and use that to run this 
command again.
BR,Zhankun
On Tue, 25 Jan 2022 at 07:14, Hamado Dene <hamadod...@yahoo.com.invalid> wrote:

Hello hadoop community,
I'm trying to export an hbase snapshot from one hadoop cluster to another 
hadoop cluster using the export command:hbase 
org.apache.hadoop.hbase.snapshot.ExportSnapshot -snapshot MySnapshot -copy-to 
hdfs: // srv2: <hdfs_port> / hbase -mappers 16
When I execute the command, nodemanager side generates the exception:

2022-01-24 18:54:23,693 ERROR 
org.apache.hadoop.yarn.logaggregation.AggregatedLogFormat: Error aggregating 
log file. Log file : 
/data/hadoop/logs/userlogs/application_1643046451755_0001/container_e34_1643046451755_0001_01_000022/syslog.
 Owner 'magnews' for path 
/data/hadoop/logs/userlogs/application_1643046451755_0001/container_e34_1643046451755_0001_01_000022/syslog
 did not match expected owner 'hbase'java.io.IOException: Owner 'magnews' for 
path 
/data/hadoop/logs/userlogs/application_1643046451755_0001/container_e34_1643046451755_0001_01_000022/syslog
 did not match expected owner 'hbase'        at 
org.apache.hadoop.io.SecureIOUtils.checkStat(SecureIOUtils.java:284)        at 
org.apache.hadoop.io.SecureIOUtils.forceSecureOpenForRead(SecureIOUtils.java:218)
        at 
org.apache.hadoop.io.SecureIOUtils.openForRead(SecureIOUtils.java:203)        
at 
org.apache.hadoop.yarn.logaggregation.AggregatedLogFormat$LogValue.secureOpenFile(AggregatedLogFormat.java:278)
        at 
org.apache.hadoop.yarn.logaggregation.AggregatedLogFormat$LogValue.write(AggregatedLogFormat.java:230)
        at 
org.apache.hadoop.yarn.logaggregation.AggregatedLogFormat$LogWriter.append(AggregatedLogFormat.java:470)
        at 
org.apache.hadoop.yarn.server.nodemanager.containermanager.logaggregation.AppLogAggregatorImpl$ContainerLogAggregator.doContainerLogAggregation(AppLogAggregatorImpl.java:659)
        at 
org.apache.hadoop.yarn.server.nodemanager.containermanager.logaggregation.AppLogAggregatorImpl.uploadLogsForContainers(AppLogAggregatorImpl.java:347)
        at 
org.apache.hadoop.yarn.server.nodemanager.containermanager.logaggregation.AppLogAggregatorImpl.doAppLogAggregation(AppLogAggregatorImpl.java:548)
        at 
org.apache.hadoop.yarn.server.nodemanager.containermanager.logaggregation.AppLogAggregatorImpl.run(AppLogAggregatorImpl.java:504)
        at 
org.apache.hadoop.yarn.server.nodemanager.containermanager.logaggregation.LogAggregationService$2.run(LogAggregationService.java:404)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) 
       at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 
       at java.lang.Thread.run(Thread.java:748)


My hadoop cluster runs with the magnews user, but on the Hbase side, I launched 
the execution clearly with the hbase user.Is there any way to handle this?

Thanks,
Hamado Dene
  

Reply via email to