Support Questions
Find answers, ask questions, and share your expertise
Announcements
Alert: Welcome to the Unified Cloudera Community. Former HCC members be sure to read and learn how to activate your account here.

java.io.IOException: No groups found for user while accessing OOZIE service via KNOX

Highlighted

java.io.IOException: No groups found for user while accessing OOZIE service via KNOX

New Contributor

HTTP Status 500 - java.io.IOException: No groups found for user demo


type Exception report

message java.io.IOException: No groups found for user demo

description The server encountered an internal error that prevented it from fulfilling this request.

exception

java.lang.RuntimeException: java.io.IOException: No groups found for user demo
	org.apache.oozie.servlet.JsonRestServlet.getUser(JsonRestServlet.java:570)
	org.apache.oozie.servlet.JsonRestServlet.service(JsonRestServlet.java:296)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
	org.apache.oozie.servlet.AuthFilter$2.doFilter(AuthFilter.java:171)
	org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:617)
	org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:576)
	org.apache.oozie.servlet.AuthFilter.doFilter(AuthFilter.java:176)
	org.apache.oozie.servlet.HostnameFilter.doFilter(HostnameFilter.java:86)
	org.apache.oozie.servlet.OozieXFrameOptionsFilter.doFilter(OozieXFrameOptionsFilter.java:48)
	org.apache.oozie.servlet.OozieCSRFFilter.doFilter(OozieCSRFFilter.java:62)

root cause

java.io.IOException: No groups found for user demo
	org.apache.hadoop.security.Groups.noGroupsForUser(Groups.java:190)
	org.apache.hadoop.security.Groups.access$400(Groups.java:69)
	org.apache.hadoop.security.Groups$GroupCacheLoader.load(Groups.java:307)
	org.apache.hadoop.security.Groups$GroupCacheLoader.load(Groups.java:257)
	com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3568)
	com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2350)
	com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2313)
	com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2228)
	com.google.common.cache.LocalCache.get(LocalCache.java:3965)
	com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3969)
	com.google.common.cache.LocalCache$LocalManualCache.get(LocalCache.java:4829)
	org.apache.hadoop.security.Groups.getGroups(Groups.java:215)
	org.apache.oozie.service.GroupsService.getGroups(GroupsService.java:79)
	org.apache.oozie.service.ProxyUserService.validateGroup(ProxyUserService.java:166)
	org.apache.oozie.service.ProxyUserService.validate(ProxyUserService.java:146)
	org.apache.oozie.servlet.JsonRestServlet.getUser(JsonRestServlet.java:567)
	org.apache.oozie.servlet.JsonRestServlet.service(JsonRestServlet.java:296)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
	org.apache.oozie.servlet.AuthFilter$2.doFilter(AuthFilter.java:171)
	org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:617)
	org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:576)
	org.apache.oozie.servlet.AuthFilter.doFilter(AuthFilter.java:176)
	org.apache.oozie.servlet.HostnameFilter.doFilter(HostnameFilter.java:86)
	org.apache.oozie.servlet.OozieXFrameOptionsFilter.doFilter(OozieXFrameOptionsFilter.java:48)
	org.apache.oozie.servlet.OozieCSRFFilter.doFilter(OozieCSRFFilter.java:62)

note The full stack trace of the root cause is available in the Apache Tomcat/6.0.53 logs.


Note:

I have setup-ed Ambari Kerberos cluster with KNOX Gateway. OpenLdap using for Knox authentication and authorization . The all external services are working fine( Webhdfs, Hive, YarnUi and AmbariUi ) abort from oozie via KNOX . I have put hadoop.proxyuser.knox.groups=users and hadoop.proxyuser.knox.hosts=* properties into required location (hdfs-site,core-site).

I have updated knox properties( hadoop.proxyuser.knox.groups=* and hadoop.proxyuser.knox.hosts=*) on oozie-site.xml then oozie service working fine via KNOX. But submit yarn Job into cluster i got following error

Application Error( on Yarn Cluser):

main : run as user is demo

main : requested yarn user is demo User demo not found Failing this attempt. Failing the application.