Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Accumulo, mail # user - Resolving the "Permission Denied" Message On Accumulo Monitor Page


Copy link to this message
-
Re: Resolving the "Permission Denied" Message On Accumulo Monitor Page
Eric Newton 2012-10-23, 14:20
Actually, I run accumulo as myself on a test cluster.  The NameNode
monitoring doesn't work, but the monitor can talk to the master just fine.

The TaskTracker monitoring won't work in Hadoop 2+, so I'm probably going
to remove hadoop monitoring from accumulo 1.5.

Documenting users and permissions would be a good idea, especially with
regard to bulk imports.

-Eric

On Tue, Oct 23, 2012 at 10:15 AM, Drew Farris <[EMAIL PROTECTED]> wrote:

> For what it's worth, I encountered this when trying to set up a system
> where Accumulo is run by a user different than the one used to run
> hdfs.
>
> This will likely become more prevalent as people move towards hadoop
> 1+ where different users are used for hdfs and mapred -- the hadoop
> user becomes a less obvious choice for running Accumulo.
>
> In addition to the Namenode permission denied message, it seems that
> the monitor is unable to connect to the master when the accumulo user
> is not in the Hadoop supergroup (in 1.4.1)
>
> I observed the same error messages David recorded above, but didn't
> see anything that seemed specific to the master issue.
>
> I haven't had the chance to dig much further, has anyone looked in to
> this? Any thoughts on whether it might be possible for things to work
> without having to add the accumulo user to the hdfs supergroup?
>
> Perhaps a discussion of running Accumulo as a particular user could be
> added to the installation manual - I don't think the current manual
> covers anything related to user accounts at all.
>
> Drew
>
> On Thu, Jul 26, 2012 at 6:16 PM, David Medinets
> <[EMAIL PROTECTED]> wrote:
> > On Mon, Jul 23, 2012 at 8:35 PM, Josh Elser <[EMAIL PROTECTED]>
> wrote:
> >> Out of curiosity, what is the actual exception/stack-trace printed in
> the
> >> monitor's log?
> >
> > 26 21:43:37,848 [servlets.BasicServlet] DEBUG:
> > org.apache.hadoop.security.AccessControlException:
> > org.apache.hadoop.security.AccessControlException: Permission denied:
> > user=accumulo, access=READ_EXECUTE,
> > inode="system":hadoop:supergroup:rwx-wx-wx
> > org.apache.hadoop.security.AccessControlException:
> > org.apache.hadoop.security.AccessControlException: Permission denied:
> > user=accumulo, access=READ_EXECUTE,
> > inode="system":hadoop:supergroup:rwx-wx-wx
> >         at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
> Method)
> >         at
> sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
> >         at
> sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
> >         at
> java.lang.reflect.Constructor.newInstance(Constructor.java:525)
> >         at
> org.apache.hadoop.ipc.RemoteException.instantiateException(RemoteException.java:96)
> >         at
> org.apache.hadoop.ipc.RemoteException.unwrapRemoteException(RemoteException.java:58)
> >         at
> org.apache.hadoop.hdfs.DFSClient.getContentSummary(DFSClient.java:924)
> >         at
> org.apache.hadoop.hdfs.DistributedFileSystem.getContentSummary(DistributedFileSystem.java:232)
> >         at
> org.apache.accumulo.server.trace.TraceFileSystem.getContentSummary(TraceFileSystem.java:312)
> >         at
> org.apache.accumulo.server.monitor.servlets.DefaultServlet.doAccumuloTable(DefaultServlet.java:312)
> >         at
> org.apache.accumulo.server.monitor.servlets.DefaultServlet.pageBody(DefaultServlet.java:243)
> >         at
> org.apache.accumulo.server.monitor.servlets.BasicServlet.doGet(BasicServlet.java:61)
> >         at
> org.apache.accumulo.server.monitor.servlets.DefaultServlet.doGet(DefaultServlet.java:161)
> >         at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
> >         at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
> >         at
> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:502)
> >         at
> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:363)
> >         at
> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)