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) > at > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766) > at > org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) > at > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) > at org.mortbay.jetty.Server.handle(Server.java:324) > at > org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:534) > at > org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:864) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:533) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:207) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:403) > at > org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228) > at > org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:522)
