- Subscribe to RSS Feed
- Mark Question as New
- Mark Question as Read
- Float this Question for Current User
- Bookmark
- Subscribe
- Mute
- Printer Friendly Page
How to kill Hive job with individual user ID when hive doas=false is set in HiveServer2 (hive impersonation)
- Labels:
-
Apache Hive
Created ‎05-16-2016 09:44 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
When a user submits a query via Beeline, HS2 in turn runs the query with user hive as doas is set to false.
How could a user kill the job? It should be a command via beeline to ask HS2 to kill on behalf of a user.
Snapshot:
XYZ $ yarn application -kill application_1461543063850_12340
16/05/16 11:56:13 INFO impl.TimelineClientImpl: Timeline service address: ...
16/05/16 11:56:13 INFO client.RMProxy: Connecting to ResourceManager at ...
Killing application application_1461543063850_12340
Exception in thread "main" org.apache.hadoop.yarn.exceptions.YarnException: java.security.AccessControlException: User XYZ cannot perform operation MODIFY_APP on application_1461543063850_12340
Created ‎05-16-2016 11:09 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If you enable yarn.acl.enable, you can use an user defined by yarn.admin.acl to kill the application.
Created ‎05-16-2016 11:09 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
If you enable yarn.acl.enable, you can use an user defined by yarn.admin.acl to kill the application.
Created ‎05-17-2016 07:11 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
That should work. My original thought is to grant a user the ability to kill his own job. It is OK to promote him to the admin of the Yarn queue.
Created ‎05-18-2016 12:33 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Only the Hive users can kill the job or the instance on which user job is running will have privileges to kill the job. If you want the By setting hive.server2.enable.doAs=true will give access to the user who running job can kill.
