[关闭]
@cyysu 2017-09-22T05:42:46.000000Z 字数 2537 阅读 719

zookeeper集群搭建

  • 时间:2017年9月8日
  • 作者:MJ-DZ chen yuan
  • 邮箱:chenyuan@ypmingjiang.cn
  • 描述:zookeeper搭建教程
  • 版本:V2.0

嵌入式Linux


简介

  1. Linux服务器一台、三台、五台、(2*n+1),Zookeeper集群的工作是超过半数才能对外提供服务,3台中超过两台超过半数,允许1台挂掉,是否可以用偶数,其实没必要。如果有四台那么挂掉一台还剩下三台服务器,如果在挂掉一个就不行了,这里记住是超过半数。
  2. 2Java jdk1.7 zookeeper是用java写的所以他的需要JAVA环境,java是运行在java虚拟机上的
  3. 3Zookeeper的稳定版本Zookeeper 3.4.6版本

软件

  1. #在下面这个链接中安装JDK
  2. 链接:http://pan.baidu.com/s/1kVmmBv5 密码:x0lc
  3. wget http://mirrors.cnnic.cn/apache/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz

安装教程

  1. # 解压
  2. tar xf zookeeper-3.4.6.tar.gz
  3. # 增加JAVA环境
  4. [root@master ~]# vim ~/.bashrc
  5. export JAVA_HOME=/usr/java/jdk1.7.0_71
  6. export PATH=$JAVA_HOME/bin:$PATH
  7. [root@master ~]# source !$
  8. source ~/.bashrc
  9. # 关闭防火墙和selinux
  10. service iptables stop
  11. chkconfig iptables off
  12. setenforce 0
  13. # 建立相应的文件夹
  14. [root@master zookeeper]# tree -L 2 /opt/
  15. /opt/
  16. ├── software
  17.    ├── apache-flume-1.7.0-bin.tar.gz
  18.    ├── apache-flume-1.7.0-src.tar.gz
  19.    ├── hadoop-2.6.2.tar.gz
  20.    ├── hbase-0.98.13-hadoop2-bin.tar.gz
  21.    ├── jdk-7u71-linux-x64.rpm
  22.    ├── kafka_2.10-0.9.0.1.tgz
  23.    └── zookeeper-3.4.5.tar.gz
  24. └── zookeeper
  25. ├── zkdata
  26. ├── zkdatalog
  27. ├── zookeeper-3.4.6
  28. ├── zookeeper-3.4.6.tar.gz
  29. └── zookeeper.out
  30. # 写入自己的ID
  31. # master
  32. echo "1" > /opt/zookeeper/zkdata/myid
  33. # node1
  34. echo "2" > /opt/zookeeper/zkdata/myid
  35. # node2
  36. echo "3" > /opt/zookeeper/zkdata/myid
  37. # 修改主机和IP
  38. # 下面你这两行内容不要删除
  39. 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
  40. ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
  41. 10.0.0.62 master
  42. 10.0.0.63 node1
  43. 10.0.0.64 node2
  44. 10.0.0.65 node3
  45. # 永久修改主机名,然后重新启动生效,如果想要临时可以用hostname
  46. [root@node2 zookeeper]# cat /etc/sysconfig/network
  47. HOSTNAME=node2
  48. # 复制配置文件
  49. mv zoo_sample.cfg.bak zoo.cfg
  50. # 配置文件内容
  51. [root@master conf]# cat zoo.cfg
  52. # ZK中的一个时间单元。ZK中所有时间都是以这个时间单元为基础,进行整数倍配置的。例如,session的最小超时时间是2*tickTime。
  53. tickTime=2000
  54. initLimit=10
  55. syncLimit=5
  56. # dataDir: 数据目录. 可以是任意目录.
  57. dataDir=/opt/zookeeper/zkdata
  58. # dataLogDir: log目录, 同样可以是任意目录. 如果没有设置该参数, 将使用和dataDir相同的设置.
  59. dataLogDir=/opt/zookeeper/zkdatalog/zookeeper.log
  60. # the port at which the clients will connect
  61. # 可以更改端口
  62. clientPort=2181
  63. server.1=10.0.0.62:2888:3888
  64. server.2=10.0.0.63:2888:3888
  65. server.3=10.0.0.64:2888:3888
  66. [root@master conf]#

测试

  1. # master测试结果
  2. [root@master zookeeper]# zookeeper-3.4.6/bin/zkServer.sh status
  3. JMX enabled by default
  4. Using config: /opt/zookeeper/zookeeper-3.4.6/bin/../conf/zoo.cfg
  5. Mode: follower
  6. # node1测试结果
  7. [root@node1 zookeeper]# zookeeper-3.4.6/bin/zkServer.sh status
  8. JMX enabled by default
  9. Using config: /opt/zookeeper/zookeeper-3.4.6/bin/../conf/zoo.cfg
  10. Mode: leader
  11. # node2测试结果
  12. [root@node2 zookeeper]# zookeeper-3.4.6/bin/zkServer.sh status
  13. JMX enabled by default
  14. Using config: /opt/zookeeper/zookeeper-3.4.6/bin/../conf/zoo.cfg
  15. Mode: follower

Q & A

  1. 出现问题时主要是配置文件中的设定的目录没有创建或者防火墙没有关闭。
  2. 出现问题详细看zookeeper.out这个文件
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注