Hi, Hadoop experts:

Do you know how to grant an account permission to run the "refreshNodes"
command? Thanks. Have a nice day.

The following is the exception:

2024-01-20 23:00:47,328 INFO
SecurityLogger.org.apache.hadoop.ipc.Server (Socket Reader #1 for port
8030): Auth successful for appattempt_1675084155030_1215916_000001
(auth:SIMPLE)
2024-01-20 23:00:48,339 WARN
org.apache.hadoop.yarn.server.resourcemanager.AdminService (IPC Server
handler 0 on default port 8033): User hadoop doesn't have permission
to call 'refreshNodes'
2024-01-20 23:00:48,339 WARN
org.apache.hadoop.yarn.server.resourcemanager.RMAuditLogger (IPC
Server handler 0 on default port 8033):
USER=hadoop     IP=10.120.41.105        OPERATION=refreshNodes  
TARGET=AdminService     RESULT=FAILURE  DESCRIPTION=Unauthorized
user    PERMISSIONS=
2024-01-20 23:00:48,340 INFO org.apache.hadoop.ipc.Server (IPC Server
handler 0 on default port 8033): IPC Server handler 0 on default port
8033, call Call#0 Retry#0
org.apache.hadoop.yarn.server.api.ResourceManagerAdministrationProtocolPB.refreshNodes
from 10.120.41.105:55664
org.apache.hadoop.yarn.exceptions.YarnException:
org.apache.hadoop.security.AccessControlException: User hadoop doesn't
have permission to call 'refreshNodes'
        at 
org.apache.hadoop.yarn.ipc.RPCUtil.getRemoteException(RPCUtil.java:38)
        at 
org.apache.hadoop.yarn.server.resourcemanager.AdminService.checkAcls(AdminService.java:228)
        at 
org.apache.hadoop.yarn.server.resourcemanager.AdminService.refreshNodes(AdminService.java:450)
        at 
org.apache.hadoop.yarn.server.api.impl.pb.service.ResourceManagerAdministrationProtocolPBServiceImpl.refreshNodes(ResourceManagerAdministrationProtocolPBServiceImpl.java:144)
        at 
org.apache.hadoop.yarn.proto.ResourceManagerAdministrationProtocol$ResourceManagerAdministrationProtocolService$2.callBlockingMethod(ResourceManagerAdministrationProtocol.java:273)
        at 
org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:507)
        at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:1034)
        at org.apache.hadoop.ipc.Server$RpcCall.run(Server.java:1003)
        at org.apache.hadoop.ipc.Server$RpcCall.run(Server.java:931)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:422)
        at 
org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1926)
        at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2854)
Caused by: org.apache.hadoop.security.AccessControlException: User
hadoop doesn't have permission to call 'refreshNodes'
        at 
org.apache.hadoop.yarn.server.resourcemanager.RMServerUtils.verifyAdminAccess(RMServerUtils.java:414)
        at 
org.apache.hadoop.yarn.server.resourcemanager.RMServerUtils.verifyAdminAccess(RMServerUtils.java:379)
        at 
org.apache.hadoop.yarn.server.resourcemanager.AdminService.checkAccess(AdminService.java:221)
        at 
org.apache.hadoop.yarn.server.resourcemanager.AdminService.checkAcls(AdminService.java:226)
        ... 11 more

Reply via email to