1 package org.apache.helix.tools;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.I0Itec.zkclient.IDefaultNameSpace;
23 import org.I0Itec.zkclient.ZkClient;
24 import org.I0Itec.zkclient.ZkServer;
25
26
27
28
29
30
31 public class LocalZKServer
32 {
33 public void start(int port, String dataDir, String logDir) throws Exception
34 {
35
36 IDefaultNameSpace defaultNameSpace = new IDefaultNameSpace()
37 {
38
39 @Override
40 public void createDefaultNameSpace(ZkClient zkClient)
41 {
42
43 }
44 };
45 ZkServer server = new ZkServer(dataDir, logDir, defaultNameSpace, port);
46 server.start();
47 Thread.currentThread().join();
48 }
49
50 public static void main(String[] args) throws Exception
51 {
52 int port = 2199;
53 String rootDir = System.getProperty("java.io.tmpdir") + "/zk-helix/"
54 + System.currentTimeMillis();
55 String dataDir = rootDir + "/dataDir";
56 String logDir = rootDir + "/logDir";
57
58 if (args.length > 0)
59 {
60 port = Integer.parseInt(args[0]);
61 }
62 if (args.length > 1)
63 {
64 dataDir = args[1];
65 logDir = args[1];
66 }
67
68 if (args.length > 2)
69 {
70 logDir = args[2];
71 }
72 System.out.println("Starting Zookeeper locally at port:" + port
73 + " dataDir:" + dataDir + " logDir:" + logDir);
74 LocalZKServer localZKServer = new LocalZKServer();
75
76 localZKServer.start(port, dataDir, logDir);
77 }
78 }