List of usage examples for org.apache.zookeeper.server.quorum QuorumPeerConfig getClientPortAddress
public InetSocketAddress getClientPortAddress()
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 ww w .ja v a 2 s . c o m 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//from w w w. jav a2 s.c om */ 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 {//from w w w . j a v a 2 s . c om 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.ZookeeperModule.java
License:Apache License
@Provides @Singleton/* w w w . j a va 2 s . c om*/ public NIOServerCnxn.Factory getConnectionFactory(final QuorumPeerConfig quorumPeerConfig) throws IOException { return new NIOServerCnxn.Factory(quorumPeerConfig.getClientPortAddress(), quorumPeerConfig.getMaxClientCnxns()); }
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 w w .jav a 2s . c om*/ 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 a 2s . 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 a2 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();/*ww w .ja va 2s.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.HQuorumPeer.java
License:Apache License
/** * Parse ZooKeeper configuration from HBase XML config and run a QuorumPeer. * @param args String[] of command line arguments. Not used. *//*from w w w.ja va 2 s. c o m*/ public static void main(String[] args) { Configuration conf = HBaseConfiguration.create(); try { Properties zkProperties = ZKConfig.makeZKProps(conf); writeMyID(zkProperties); QuorumPeerConfig zkConfig = new QuorumPeerConfig(); zkConfig.parseProperties(zkProperties); // login the zookeeper server principal (if using security) ZKUtil.loginServer(conf, "hbase.zookeeper.server.keytab.file", "hbase.zookeeper.server.kerberos.principal", zkConfig.getClientPortAddress().getHostName()); runZKServer(zkConfig); } catch (Exception e) { e.printStackTrace(); System.exit(-1); } }