【问题标题】:Resource Manager API using default user - webuser使用默认用户的资源管理器 API - webuser
【发布时间】:2016-10-12 05:14:35
【问题描述】:

我一直在尝试使用 hadoop 中的资源管理器 api 来提交作业(如 http://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/ResourceManagerRest.html#Cluster_Writeable_APIs 中给出的那样)。

当我尝试从任何用户(比如 hadoop)提交作业时,它会以用户身份 - webuser 提交,并且应用程序失败并显示一条消息,

org.apache.hadoop.security.AccessControlException: 用户 webuser 不能 提交申请到队列...

当我查看 hadoop 的配置文件时,我没有看到任何关于 webuser 的提及。也没有可用的本地网络用户。

这个用户是从哪里接上来的? 如何以原始用户身份通过​​资源管理器提交作业并继续申请?

感谢您提供有关此问题的任何指导。谢谢!


edit 1 - 为调用添加输入。 申请被接受。

{
"application-id": "application_1476245592339_0001",
"application-name": "rm-mr-test",
"queue": "default",
"am-container-spec": {
"commands": {
  "command": "hadoop jar /usr/hdp/2.3.0.0-2557/hadoop-mapreduce/hadoop-mapr educe-examples.jar teragen 100 /tmp/rm-api-test/1"
},
"unmanaged-AM": false,
"max-app-attempts": 2,
"resource": {
  "memory": 2250,
  "vCores": 8
},
"application-type": "MAPREDUCE",
"keep-containers-across-application-attempts": false
}
}

【问题讨论】:

  • @KrishnaChaitanyaReddy,这是用于获取/更改应用程序的队列。我在这里错过了什么吗?你能解释一下吗?
  • 尝试使用 "queue": "root.default"
  • 队列不是这里的问题。问题是应用程序以未配置的网络用户身份提交。

标签: hadoop hadoop2 resourcemanager


【解决方案1】:

webuser 用于匿名调用。 无需匿名使用,能够以预期用户的身份调用服务。

【讨论】:

    猜你喜欢
    • 2016-12-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-22
    • 2014-11-27
    • 2018-07-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多