List of usage examples for org.apache.zookeeper.server.quorum QuorumPeerConfig getTickTime
public int getTickTime()
From source file:beans.SystemStartable.java
License:Apache License
@Override public void onStart() throws Throwable { // Initialize ZooKeeper. Properties properties = new Properties(); InputStream propertiesStream = getClass().getClassLoader().getResourceAsStream("zoo.cfg"); properties.load(propertiesStream);/*from w w w . j ava 2 s . com*/ QuorumPeerConfig quorumConfig = new QuorumPeerConfig(); quorumConfig.parseProperties(properties); zkServer = new ZooKeeperServer(); zkServer.setTickTime(quorumConfig.getTickTime()); zkServer.setMinSessionTimeout(quorumConfig.getMinSessionTimeout()); zkServer.setMaxSessionTimeout(quorumConfig.getMaxSessionTimeout()); zkDirectory = Files.createTempDirectory("zookeeper").toFile(); LOG.info("Using ZooKeeper directory: " + zkDirectory); FileTxnSnapLog txnLog = new FileTxnSnapLog(zkDirectory, zkDirectory); zkServer.setTxnLogFactory(txnLog); cnxnFactory = ServerCnxnFactory.createFactory(); cnxnFactory.configure(quorumConfig.getClientPortAddress(), quorumConfig.getMaxClientCnxns()); cnxnFactory.startup(zkServer); }
From source file:com.chiralBehaviors.autoconfigure.ZookeeperLauncher.java
License:Open Source License
/** * Copied from QuorumPeerMain// www. j av a 2s . com */ protected void runFromConfig(QuorumPeerConfig config) throws IOException { LOG.info("Starting quorum peer"); ServerCnxnFactory cnxnFactory = ServerCnxnFactory.createFactory(); cnxnFactory.configure(config.getClientPortAddress(), config.getMaxClientCnxns()); quorumPeer = new QuorumPeer(); quorumPeer.setClientPortAddress(config.getClientPortAddress()); quorumPeer .setTxnFactory(new FileTxnSnapLog(new File(config.getDataLogDir()), new File(config.getDataDir()))); quorumPeer.setQuorumPeers(config.getServers()); quorumPeer.setElectionType(config.getElectionAlg()); quorumPeer.setMyid(config.getServerId()); quorumPeer.setTickTime(config.getTickTime()); quorumPeer.setMinSessionTimeout(config.getMinSessionTimeout()); quorumPeer.setMaxSessionTimeout(config.getMaxSessionTimeout()); quorumPeer.setInitLimit(config.getInitLimit()); quorumPeer.setSyncLimit(config.getSyncLimit()); quorumPeer.setQuorumVerifier(config.getQuorumVerifier()); quorumPeer.setCnxnFactory(cnxnFactory); quorumPeer.setZKDatabase(new ZKDatabase(quorumPeer.getTxnFactory())); quorumPeer.setLearnerType(config.getPeerType()); quorumPeer.start(); }
From source file:com.glaf.cluster.catalina.session.QuorumPeerMain.java
License:Apache License
public void runFromConfig(QuorumPeerConfig config) throws IOException { try {// www . jav a 2s . c o m ManagedUtil.registerLog4jMBeans(); } catch (JMException e) { LOG.warn("Unable to register log4j JMX control", e); } LOG.info("Starting quorum peer"); try { ServerCnxnFactory cnxnFactory = ServerCnxnFactory.createFactory(); cnxnFactory.configure(config.getClientPortAddress(), config.getMaxClientCnxns()); quorumPeer = new QuorumPeer(); quorumPeer.setClientPortAddress(config.getClientPortAddress()); quorumPeer.setTxnFactory( new FileTxnSnapLog(new File(config.getDataLogDir()), new File(config.getDataDir()))); quorumPeer.setQuorumPeers(config.getServers()); quorumPeer.setElectionType(config.getElectionAlg()); quorumPeer.setMyid(config.getServerId()); quorumPeer.setTickTime(config.getTickTime()); quorumPeer.setMinSessionTimeout(config.getMinSessionTimeout()); quorumPeer.setMaxSessionTimeout(config.getMaxSessionTimeout()); quorumPeer.setInitLimit(config.getInitLimit()); quorumPeer.setSyncLimit(config.getSyncLimit()); quorumPeer.setQuorumVerifier(config.getQuorumVerifier()); quorumPeer.setCnxnFactory(cnxnFactory); quorumPeer.setZKDatabase(new ZKDatabase(quorumPeer.getTxnFactory())); quorumPeer.setLearnerType(config.getPeerType()); quorumPeer.start(); quorumPeer.join(); } catch (InterruptedException e) { // warn, but generally this is ok LOG.warn("Quorum Peer interrupted", e); } }
From source file:com.nesscomputing.service.discovery.server.zookeeper.ManagedQuorumPeer.java
License:Apache License
@Inject ManagedQuorumPeer(final QuorumPeerConfig quorumPeerConfig, final NIOServerCnxn.Factory cnxnFactory, final FileTxnSnapLog fileTxnSnapLog) { quorumPeer = new QuorumPeer(); quorumPeer.setClientPortAddress(quorumPeerConfig.getClientPortAddress()); quorumPeer.setTxnFactory(fileTxnSnapLog); quorumPeer.setQuorumPeers(quorumPeerConfig.getServers()); quorumPeer.setElectionType(quorumPeerConfig.getElectionAlg()); quorumPeer.setMyid(quorumPeerConfig.getServerId()); quorumPeer.setTickTime(quorumPeerConfig.getTickTime()); quorumPeer.setMinSessionTimeout(quorumPeerConfig.getMinSessionTimeout()); quorumPeer.setMaxSessionTimeout(quorumPeerConfig.getMaxSessionTimeout()); quorumPeer.setInitLimit(quorumPeerConfig.getInitLimit()); quorumPeer.setSyncLimit(quorumPeerConfig.getSyncLimit()); quorumPeer.setQuorumVerifier(quorumPeerConfig.getQuorumVerifier()); quorumPeer.setCnxnFactory(cnxnFactory); quorumPeer.setZKDatabase(new ZKDatabase(quorumPeer.getTxnFactory())); quorumPeer.setLearnerType(quorumPeerConfig.getPeerType()); }
From source file:com.nesscomputing.service.discovery.server.zookeeper.ManagedStandaloneZookeeper.java
License:Apache License
@Inject ManagedStandaloneZookeeper(final QuorumPeerConfig quorumPeerConfig, final NIOServerCnxn.Factory cnxnFactory, final FileTxnSnapLog fileTxnSnapLog) { zookeeperServer = new ZooKeeperServer(); this.cnxnFactory = cnxnFactory; zookeeperServer.setTxnLogFactory(fileTxnSnapLog); zookeeperServer.setTickTime(quorumPeerConfig.getTickTime()); zookeeperServer.setMinSessionTimeout(quorumPeerConfig.getMinSessionTimeout()); zookeeperServer.setMaxSessionTimeout(quorumPeerConfig.getMaxSessionTimeout()); }
From source file:com.splicemachine.test.SpliceZoo.java
License:Apache License
public SpliceZoo(QuorumPeerConfig config, int number) throws IOException { this.config = config; this.peer = new QuorumPeer(); ServerCnxnFactory cnxnFactory = ServerCnxnFactory.createFactory(); cnxnFactory.configure(config.getClientPortAddress(), config.getMaxClientCnxns()); peer.setClientPortAddress(config.getClientPortAddress()); peer.setTxnFactory(new FileTxnSnapLog(new File(config.getDataLogDir()), new File(config.getDataDir()))); peer.setQuorumPeers(config.getServers()); peer.setElectionType(config.getElectionAlg()); peer.setMyid(config.getServerId());/*w ww . j av a2s.c o m*/ peer.setTickTime(config.getTickTime()); peer.setMinSessionTimeout(config.getMinSessionTimeout()); peer.setMaxSessionTimeout(config.getMaxSessionTimeout()); peer.setInitLimit(config.getInitLimit()); peer.setSyncLimit(config.getSyncLimit()); peer.setQuorumVerifier(config.getQuorumVerifier()); peer.setCnxnFactory(cnxnFactory); peer.setZKDatabase(new ZKDatabase(peer.getTxnFactory())); peer.setLearnerType(config.getPeerType()); peer.setMyid(number); }
From source file:io.fabric8.core.zookeeper.FabricZooKeeperServer.java
License:Apache License
private Destroyable activateInternal(Map<String, ?> configuration) throws Exception { LOGGER.info("Creating zookeeper server with: {}", configuration); Properties props = new Properties(); for (Map.Entry<String, ?> entry : configuration.entrySet()) { props.put(entry.getKey(), entry.getValue()); }/* w w w . j a v a2 s .c o m*/ //Check required directories exist or create them. if (!dataDir.exists() && !dataDir.mkdirs()) { throw new IOException("Failed to create ZooKeeper dataDir at: " + dataDir.getAbsolutePath()); } if (!dataLogDir.exists() && !dataLogDir.mkdirs()) { throw new IOException("Failed to create ZooKeeper dataLogDir at: " + dataLogDir.getAbsolutePath()); } // Create myid file String serverId = (String) props.get(SERVER_ID); if (serverId != null) { props.remove(SERVER_ID); File myId = new File(dataDir, MY_ID); if (myId.exists() && !myId.delete()) { throw new IOException("Failed to delete " + myId); } if (myId.getParentFile() == null || (!myId.getParentFile().exists() && !myId.getParentFile().mkdirs())) { throw new IOException("Failed to create " + myId.getParent()); } FileOutputStream fos = new FileOutputStream(myId); try { fos.write((serverId + "\n").getBytes()); } finally { fos.close(); } } QuorumPeerConfig peerConfig = getPeerConfig(props); if (!peerConfig.getServers().isEmpty()) { NIOServerCnxnFactory cnxnFactory = new NIOServerCnxnFactory(); cnxnFactory.configure(peerConfig.getClientPortAddress(), peerConfig.getMaxClientCnxns()); QuorumPeer quorumPeer = new QuorumPeer(); quorumPeer.setClientPortAddress(peerConfig.getClientPortAddress()); quorumPeer.setTxnFactory( new FileTxnSnapLog(new File(peerConfig.getDataLogDir()), new File(peerConfig.getDataDir()))); quorumPeer.setQuorumPeers(peerConfig.getServers()); quorumPeer.setElectionType(peerConfig.getElectionAlg()); quorumPeer.setMyid(peerConfig.getServerId()); quorumPeer.setTickTime(peerConfig.getTickTime()); quorumPeer.setMinSessionTimeout(peerConfig.getMinSessionTimeout()); quorumPeer.setMaxSessionTimeout(peerConfig.getMaxSessionTimeout()); quorumPeer.setInitLimit(peerConfig.getInitLimit()); quorumPeer.setSyncLimit(peerConfig.getSyncLimit()); quorumPeer.setQuorumVerifier(peerConfig.getQuorumVerifier()); quorumPeer.setCnxnFactory(cnxnFactory); quorumPeer.setZKDatabase(new ZKDatabase(quorumPeer.getTxnFactory())); quorumPeer.setLearnerType(peerConfig.getPeerType()); try { LOGGER.debug("Starting quorum peer \"%s\" on address %s", quorumPeer.getMyid(), peerConfig.getClientPortAddress()); quorumPeer.start(); LOGGER.debug("Started quorum peer \"%s\"", quorumPeer.getMyid()); } catch (Exception e) { LOGGER.warn(String.format("Failed to start quorum peer \"%s\", reason : %s ", quorumPeer.getMyid(), e.getMessage())); quorumPeer.shutdown(); throw e; } // Register stats provider ClusteredServer server = new ClusteredServer(quorumPeer); return server; } else { ServerConfig serverConfig = getServerConfig(peerConfig); ZooKeeperServer zkServer = new ZooKeeperServer(); FileTxnSnapLog ftxn = new FileTxnSnapLog(new File(serverConfig.getDataLogDir()), new File(serverConfig.getDataDir())); zkServer.setTxnLogFactory(ftxn); zkServer.setTickTime(serverConfig.getTickTime()); zkServer.setMinSessionTimeout(serverConfig.getMinSessionTimeout()); zkServer.setMaxSessionTimeout(serverConfig.getMaxSessionTimeout()); NIOServerCnxnFactory cnxnFactory = new NIOServerCnxnFactory() { protected void configureSaslLogin() throws IOException { } }; cnxnFactory.configure(serverConfig.getClientPortAddress(), serverConfig.getMaxClientCnxns()); try { LOGGER.debug("Starting ZooKeeper server on address %s", peerConfig.getClientPortAddress()); cnxnFactory.startup(zkServer); LOGGER.debug("Started ZooKeeper server"); } catch (Exception e) { LOGGER.warn(String.format("Failed to start ZooKeeper server, reason : %s", e)); cnxnFactory.shutdown(); throw e; } // Register stats provider SimpleServer server = new SimpleServer(zkServer, cnxnFactory); return server; } }
From source file:io.fabric8.zookeeper.bootstrap.ZooKeeperServerFactory.java
License:Apache License
public ZooKeeperServerFactory(QuorumPeerConfig peerConfig, String serverId) throws IOException, InterruptedException { this.peerConfig = peerConfig; this.serverId = serverId; LOGGER.info("Creating zookeeper server with: {}", peerConfig); if (!peerConfig.getServers().isEmpty()) { NIOServerCnxnFactory cnxnFactory = new NIOServerCnxnFactory(); cnxnFactory.configure(peerConfig.getClientPortAddress(), peerConfig.getMaxClientCnxns()); QuorumPeer quorumPeer = new QuorumPeer(); quorumPeer.setClientPortAddress(peerConfig.getClientPortAddress()); quorumPeer.setTxnFactory(//from www . j a v a 2 s. c o m new FileTxnSnapLog(new File(peerConfig.getDataLogDir()), new File(peerConfig.getDataDir()))); quorumPeer.setQuorumPeers(peerConfig.getServers()); quorumPeer.setElectionType(peerConfig.getElectionAlg()); quorumPeer.setMyid(peerConfig.getServerId()); quorumPeer.setTickTime(peerConfig.getTickTime()); quorumPeer.setMinSessionTimeout(peerConfig.getMinSessionTimeout()); quorumPeer.setMaxSessionTimeout(peerConfig.getMaxSessionTimeout()); quorumPeer.setInitLimit(peerConfig.getInitLimit()); quorumPeer.setSyncLimit(peerConfig.getSyncLimit()); quorumPeer.setQuorumVerifier(peerConfig.getQuorumVerifier()); quorumPeer.setCnxnFactory(cnxnFactory); quorumPeer.setZKDatabase(new ZKDatabase(quorumPeer.getTxnFactory())); quorumPeer.setLearnerType(peerConfig.getPeerType()); try { LOGGER.debug("Starting quorum peer \"%s\" on address %s", quorumPeer.getMyid(), peerConfig.getClientPortAddress()); quorumPeer.start(); LOGGER.debug("Started quorum peer \"%s\"", quorumPeer.getMyid()); } catch (Exception e) { LOGGER.warn(String.format("Failed to start quorum peer \"%s\", reason : %s ", quorumPeer.getMyid(), e.getMessage())); quorumPeer.shutdown(); throw e; } updateZooKeeperURL(cnxnFactory.getLocalAddress(), cnxnFactory.getLocalPort()); // Register stats provider this.clusteredServer = new ClusteredServer(quorumPeer); /* registration = context.registerService(QuorumStats.Provider.class, server, null); */ } else { ServerConfig serverConfig = getServerConfig(peerConfig); ZooKeeperServer zkServer = new ZooKeeperServer(); FileTxnSnapLog ftxn = new FileTxnSnapLog(new File(serverConfig.getDataLogDir()), new File(serverConfig.getDataDir())); zkServer.setTxnLogFactory(ftxn); zkServer.setTickTime(serverConfig.getTickTime()); zkServer.setMinSessionTimeout(serverConfig.getMinSessionTimeout()); zkServer.setMaxSessionTimeout(serverConfig.getMaxSessionTimeout()); NIOServerCnxnFactory cnxnFactory = new NIOServerCnxnFactory() { protected void configureSaslLogin() throws IOException { } }; InetSocketAddress clientPortAddress = serverConfig.getClientPortAddress(); cnxnFactory.configure(clientPortAddress, serverConfig.getMaxClientCnxns()); updateZooKeeperURL(cnxnFactory.getLocalAddress(), cnxnFactory.getLocalPort()); try { LOGGER.debug("Starting ZooKeeper server on address %s", peerConfig.getClientPortAddress()); cnxnFactory.startup(zkServer); LOGGER.debug("Started ZooKeeper server"); } catch (Exception e) { LOGGER.warn(String.format("Failed to start ZooKeeper server, reason : %s", e)); cnxnFactory.shutdown(); throw e; } // Register stats provider this.simplerServer = new SimpleServer(zkServer, cnxnFactory); /* registration = context.registerService(ServerStats.Provider.class, server, null); */ } }
From source file:org.apache.aries.rsa.discovery.zookeeper.server.ZookeeperStarterTest.java
License:Apache License
public void testUpdateConfig() throws Exception { final File tempDir = new File("target"); IMocksControl control = EasyMock.createControl(); BundleContext bc = control.createMock(BundleContext.class); expect(bc.getDataFile("")).andReturn(tempDir); final MyZooKeeperServerMain mockServer = control.createMock(MyZooKeeperServerMain.class); control.replay();/*from w w w .j a v a2 s.c o m*/ ZookeeperStarter starter = new ZookeeperStarter(bc) { @Override protected void startFromConfig(QuorumPeerConfig config) { assertEquals(1234, config.getClientPortAddress().getPort()); assertTrue(config.getDataDir().contains(tempDir + File.separator + "zkdata")); assertEquals(2000, config.getTickTime()); assertEquals(10, config.getInitLimit()); assertEquals(5, config.getSyncLimit()); this.main = mockServer; } }; Dictionary<String, Object> props = new Hashtable<String, Object>(); props.put("clientPort", "1234"); starter.updated(props); assertNotNull(starter.main); control.verify(); }
From source file:org.apache.hadoop.hbase.zookeeper.HQuorumPeerTest.java
License:Apache License
/** @throws Exception */ public void testConfigInjection() throws Exception { String s = "tickTime=2000\n" + "initLimit=10\n" + "syncLimit=5\n" + "dataDir=${hbase.tmp.dir}/zookeeper\n" + "clientPort=2181\n" + "server.0=${hbase.master.hostname}:2888:3888\n"; InputStream is = new ByteArrayInputStream(s.getBytes()); Properties properties = HQuorumPeer.parseConfig(is); String userName = System.getProperty("user.name"); String dataDir = "/tmp/hbase-" + userName + "/zookeeper"; assertEquals(Integer.valueOf(2000), Integer.valueOf(properties.getProperty("tickTime"))); assertEquals(Integer.valueOf(10), Integer.valueOf(properties.getProperty("initLimit"))); assertEquals(Integer.valueOf(5), Integer.valueOf(properties.getProperty("syncLimit"))); assertEquals(dataDir, properties.get("dataDir")); assertEquals(Integer.valueOf(2181), Integer.valueOf(properties.getProperty("clientPort"))); assertEquals("localhost:2888:3888", properties.get("server.0")); QuorumPeerConfig.parseProperties(properties); int tickTime = QuorumPeerConfig.getTickTime(); assertEquals(2000, tickTime);/*from w ww . j av a2s . c o m*/ int initLimit = QuorumPeerConfig.getInitLimit(); assertEquals(10, initLimit); int syncLimit = QuorumPeerConfig.getSyncLimit(); assertEquals(5, syncLimit); assertEquals(dataDir, ServerConfig.getDataDir()); assertEquals(2181, ServerConfig.getClientPort()); Map<Long, QuorumServer> servers = QuorumPeerConfig.getServers(); assertEquals(1, servers.size()); assertTrue(servers.containsKey(Long.valueOf(0))); QuorumServer server = servers.get(Long.valueOf(0)); assertEquals("localhost", server.addr.getHostName()); // Override with system property. System.setProperty("hbase.master.hostname", "foo.bar"); is = new ByteArrayInputStream(s.getBytes()); properties = HQuorumPeer.parseConfig(is); assertEquals("foo.bar:2888:3888", properties.get("server.0")); QuorumPeerConfig.parseProperties(properties); servers = QuorumPeerConfig.getServers(); server = servers.get(Long.valueOf(0)); assertEquals("foo.bar", server.addr.getHostName()); // Special case for property 'hbase.master.hostname' being 'local' System.setProperty("hbase.master.hostname", "local"); is = new ByteArrayInputStream(s.getBytes()); properties = HQuorumPeer.parseConfig(is); assertEquals("localhost:2888:3888", properties.get("server.0")); QuorumPeerConfig.parseProperties(properties); servers = QuorumPeerConfig.getServers(); server = servers.get(Long.valueOf(0)); assertEquals("localhost", server.addr.getHostName()); }