Are you sure that you don't have SASL system properties set (such as zookeeper.server.realm)?
-JZ On Jan 23, 2013, at 5:32 PM, Matthew Daumen <[email protected]> wrote: > Well according to the ZK docs, 1.6 or higher is required. I was finally > able to get it to work using Curator 1.3.0, but only with zookeeper 3.4.3. > > On Tue, Jan 22, 2013 at 4:57 PM, Matthew Daumen <[email protected]>wrote: > >> I'm on a mac too running mountain lion, but I'm running java 1.6. Could >> that be it? >> >> -m >> >> >> On Tue, Jan 22, 2013 at 4:51 PM, Jordan Zimmerman < >> [email protected]> wrote: >> >>> FYI - I just tried your code snippet and it works fine for me: >>> >>> OS: MacOS X (latest) >>> JDK: openjdk version "1.7.0-ea" >>> ZooKeeper: 3.4.5 >>> >>> -JZ >>> >>> On Jan 22, 2013, at 4:45 PM, Matthew Daumen <[email protected]> wrote: >>> >>>> Folks, >>>> >>>> I'm looking for a solution to creating an embedded zookeeper server for >>>> testing. I was using Curator's TestingServer, but after Curator 1.2.3 >>> it >>>> is broken and fails to allow me to authenticate. >>>> >>>> I'm working from >>>> >>> http://zookeeper.apache.org/doc/r3.4.5/zookeeperAdmin.html#sc_minimumConfiguration >>>> >>>> So, I tried this out: >>>> >>>> Properties startupProperties = new Properties(); >>>> >>>> startupProperties.put("clientPort", 33333); >>>> startupProperties.put("dataDir", "/www/a/data/zookeeper/data"); >>>> startupProperties.put("tickTime", 2000); >>>> >>>> QuorumPeerConfig quorumConfiguration = new QuorumPeerConfig(); >>>> try { >>>> quorumConfiguration.parseProperties(startupProperties); >>>> } catch(Exception e) { >>>> throw new RuntimeException(e); >>>> } >>>> >>>> final ZooKeeperServerMain zooKeeperServer = new >>>> ZooKeeperServerMain(); >>>> final ServerConfig configuration = new ServerConfig(); >>>> configuration.readFrom(quorumConfiguration); >>>> >>>> new Thread() { >>>> public void run() { >>>> try { >>>> zooKeeperServer.runFromConfig(configuration); >>>> } catch (IOException e) { >>>> log.error("ZooKeeper Failed", e); >>>> } >>>> } >>>> }.start(); >>>> >>>> try { >>>> framework = CuratorFrameworkFactory.builder() >>>> .connectString("localhost:33333") >>>> .connectionTimeoutMs(60000) >>>> .retryPolicy(new RetryNTimes(5, 10000)) >>>> .build(); >>>> } catch (Exception e) { >>>> log.error("Error trying to instantiate ZK >>>> TestingServer...", e); >>>> } >>>> >>>> framework.start(); >>>> >>>> >>>> For some reason, when I try to connect to the server I've created using >>>> localhost:3333, I get the following: >>>> >>>> 2013-01-22 16:19:40 | ERROR | | Thread-13 | >>>> com.macys.stella.services.async.ZookeeperTestServer | ZooKeeper Failed >>>> java.io.IOException: Could not configure server because SASL >>> configuration >>>> did not allow the ZooKeeper server to authenticate itself properly: >>>> javax.security.auth.login.FailedLoginException: Password >>> Incorrect/Password >>>> Required >>>> at >>>> >>> org.apache.zookeeper.server.ServerCnxnFactory.configureSaslLogin(ServerCnxnFactory.java:205) >>>> at >>>> >>> org.apache.zookeeper.server.NIOServerCnxnFactory.configure(NIOServerCnxnFactory.java:87) >>>> at >>>> >>> org.apache.zookeeper.server.ZooKeeperServerMain.runFromConfig(ZooKeeperServerMain.java:110) >>>> at >>>> >>> com.macys.stella.services.async.ZookeeperTestServer$1.run(ZookeeperTestServer.java:52) >>>> 2013-01-22 16:19:40 | INFO | | RMI TCP Connection(2)-127.0.0.1 | >>>> com.netflix.curator.framework.imps.CuratorFrameworkImpl | Starting >>>> 2013-01-22 16:19:40 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:40 | INFO | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>>> com.netflix.curator.framework.state.ConnectionStateManager | State >>> change: >>>> CONNECTED >>>> >>>> This is followed by a lot of log entries like this: >>>> 2013-01-22 16:19:43 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:44 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:45 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:46 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:47 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:48 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:49 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:50 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:51 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:52 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:54 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:55 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:56 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:57 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:58 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:19:59 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:00 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:01 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:02 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:03 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:05 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:06 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:07 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:08 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:09 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:10 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:11 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:12 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:13 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:15 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:16 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:17 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:18 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:19 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:20 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:21 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:22 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:23 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:24 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:26 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:27 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:28 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:29 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:30 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:31 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:32 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:33 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:34 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:35 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> 2013-01-22 16:20:37 | ERROR | | RMI TCP >>>> Connection(2)-127.0.0.1-EventThread | >>> com.netflix.curator.ConnectionState | >>>> Authentication failed >>>> >>>> So I'm confused. If the above link to the zookeeper documentation truly >>>> represents a minimal configuration, suitable for running tests or for >>>> development scenarios, why is it that this config is not working for me? >>>> Why is SASL involved at all here? I even set up using digest auth >>>> provider with super digest detailed in the docs and it never got that >>> far, >>>> failing identically to what I've posted above. >>>> >>>> I'm using Curator 1.3.0 so the version of Zookeeper in my project >>> should be >>>> 3.4.5. I have heard this is a bug in 3.4.4 that was fixed, but it >>> appears >>>> the fix was incomplete. >>>> >>>> Can someone help me out here? I just need an embedded zookeeper for >>> testing >>>> and development scenarios, preferably without the need to maintain a >>> config >>>> for it. >>>> >>>> Thanks! >>>> >>>> Matthew D. >>> >>> >>
