zookeeper开始三步骤:部署,扩展,c的API生成

zookeeper部署,扩展,c的API生成

201,229

1. 依赖:安装JDK1.6或者以上版本并设置环境变量。

2. 安装:解压到指定目录,即安装完成:tar -xvf zookeeper-3.3.6.tar.gz  必须的

配置

3. cp conf/zoo_sample.cfg zoo.cfg  

zoo.cfg内容:

tickTime=2000

dataDir=/tmp/zookeeper

dataLogDir=/tmp/zookeeper/log

clientPort=2181

initLimit=5

syncLimit=2

server.1=10.0.6.201:2888:3888

Server.2=10.0.6.229:2888:3888

说明:

dataDir:数据目录,不同的Zookeeper对应的目录可以不一样

dataLogDir:日志目录,不同的Zookeeper对应的目录可以不一样

clientPort:客户端连接时用到的端口,不同的Zookeeper对应的目录可以不一样

“server.1=127.0.0.1:6660:7770”表示集群中的服务器,其格式为:server.X=A:B:C,X是服务器标识ID,即其myid文件中的内容;A是该Zookeeper的IP,B是选主的端口;C是集群中各Zookeeper服务器间通信端口。

如果是伪zookeeper集群,数据目录,日志目录,三个端口都必须不一样,防止端口冲突。

 

10.0.6.229

4. ssh [email protected]

5. mkdir /home/zookeeper

6. mkdir  /tmp/zookeeper

7. Echo "2" >/tmp/zookeeper/myid

8. service iptables stop

9. Exit

10.0.6.201

10. scp -r zookeeper-3.3.6/ [email protected]:/home/zookeeper   

11. mkdir  /tmp/zookeeper

12. Echo "1" >/tmp/zookeeper/myid

13. service iptables stop

测试

14. cd /home/zookeeper/zookeeper-3.3.6/bin

15. ./zkServer.sh

16. ./zkServer.sh start

17. jps

18. ./zkServer.sh status

19. ./zkCli.sh -server 10.0.6.201:2181

20. ./zkCli.sh -server 10.0.6.229:2181

21. create /testzk testdata

22. get /testzk

23. ls /

24. quit

 

 

 

扩展一台服务器测试  227

201,229

cd /home/zookeeper/zookeeper-3.3.6/conf/

vim zoo.cfg

Server.3 = 10.0.6.227::2888:3888

 

scp -r zookeeper-3.3.6/ [email protected]:/home/zookeeper

227

echo "3" >/tmp/zookeeper/myid

 

测试

201,227,229

cd /home/zookeeper/zookeeper-3.3.6/bin

./zkServer.sh

./zkServer.sh restart

./zkServer.sh status

小结:不科学啊,这样原有的zookeeper不就停止服务了吗。。。

 

API C:生成客户端动态链接库

25. tar -xvf zookeeper-3.3.6.tar.gz 

26. cd zookeeper-3.3.6/src/c

27. cd /home/libi/zookeeper/zookeeper-3.3.6/src/c

28. ./configure --prefix=/home/libi/zookeeper    //否则在/usr/local一定要经过这一步生成客户端环境,否则得在运行客户端代码的机器上,加载so文件(动态链接库)的路径

29. Make

30. Make install

31. Cd /usr/local

32.    生成了so文件

33. cp -r  lib/libzookeeper.so.2  /home/libi  //把动态链接库拷到当前测试代码目录下

34. gcc -g -o zkcli zkcli.c  -I /usr/local/include/zookeeper -L /usr/local/lib-lzookeeper_mt

35. gcc -g -o zkcli zkcli.c  -I /usr/local/include/zookeeper -L .-lzookeeper_mt

36. gcc zkcli.c -o zkcli -I . -lzookeeper_mt

 

你可能感兴趣的:(分布式协同服务)