Description
In #accumulo on freenode, championofcyrod1 had an issue where a tabletserver failed to start because it got a NoAuthException trying to create its znode for the zk lock.
org.apache.zookeeper.KeeperException$NoAuthException: KeeperErrorCode = NoAuth for /accumulo/217cf566-e487-4f48-a333-659e1634baf0/tservers/172.16.0.52:9997 at org.apache.zookeeper.KeeperException.create(KeeperException.java:113) at org.apache.zookeeper.KeeperException.create(KeeperException.java:51) at org.apache.zookeeper.ZooKeeper.create(ZooKeeper.java:783) at org.apache.accumulo.fate.zookeeper.ZooUtil.putData(ZooUtil.java:146) at org.apache.accumulo.fate.zookeeper.ZooUtil.putPersistentData(ZooUtil.java:126) at org.apache.accumulo.fate.zookeeper.ZooReaderWriter.putPersistentData(ZooReaderWriter.java:79) at org.apache.accumulo.server.tabletserver.TabletServer.announceExistence(TabletServer.java:2697) at org.apache.accumulo.server.tabletserver.TabletServer.run(TabletServer.java:2762) at org.apache.accumulo.server.tabletserver.TabletServer.main(TabletServer.java:3262) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at org.apache.accumulo.start.Main$1.run(Main.java:107) at java.lang.Thread.run(Thread.java:745) 2015-01-16 12:54:27,841 [tabletserver.TabletServer] ERROR: Uncaught exception in TabletServer.main, exiting java.lang.RuntimeException: org.apache.zookeeper.KeeperException$NoAuthException: KeeperErrorCode = NoAuth for /accumulo/217cf566-e487-4f48-a333-659e1634baf0/tservers/172.16.0.52:9997 at org.apache.accumulo.server.tabletserver.TabletServer.announceExistence(TabletServer.java:2743) at org.apache.accumulo.server.tabletserver.TabletServer.run(TabletServer.java:2762) at org.apache.accumulo.server.tabletserver.TabletServer.main(TabletServer.java:3262) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:483) at org.apache.accumulo.start.Main$1.run(Main.java:107) at java.lang.Thread.run(Thread.java:745) Caused by: org.apache.zookeeper.KeeperException$NoAuthException: KeeperErrorCode = NoAuth for /accumulo/217cf566-e487-4f48-a333-659e1634baf0/tservers/172.16.0.52:9997 at org.apache.zookeeper.KeeperException.create(KeeperException.java:113) at org.apache.zookeeper.KeeperException.create(KeeperException.java:51) at org.apache.zookeeper.ZooKeeper.create(ZooKeeper.java:783) at org.apache.accumulo.fate.zookeeper.ZooUtil.putData(ZooUtil.java:146) at org.apache.accumulo.fate.zookeeper.ZooUtil.putPersistentData(ZooUtil.java:126) at org.apache.accumulo.fate.zookeeper.ZooReaderWriter.putPersistentData(ZooReaderWriter.java:79) at org.apache.accumulo.server.tabletserver.TabletServer.announceExistence(TabletServer.java:2697)
If the tserver gets a NoAuthException, we can be fairly certain that there is a configuration mismatch on this node (specifically instance.secret) and can give a better error message as to solution.