加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

ZooKeeper 道理与处事器集群陈设

发布时间:2019-07-27 05:45:56 所属栏目:业界 来源:kefeng.wang博客
导读:ZooKeeper 是大型漫衍式体系中靠得住的和谐体系,它以树状布局存储数据,以率领推举和信息同步机制担保了集群的高可用性,以变乱关照机制帮忙变乱订阅者实时捕捉数据的变革,可帮忙实现 Dubbo、Kafka 等架构。本文以 CentOS 和 Windows 为例,总结了 ZooKeep

个中的 server.N = hostname : port1 : port2:

  • N(1,2,3): “必需”是一个数字(暗示这是第几号server),不然报错 java.lang.NumberFormatException: For input string: "xxx"
  • hostname(localhost): 是该 server 地址的域名或IP地点,为了通用,可替代为域名zk{n}.company.com 并在 hosts 里设置;
  • port1(2281,2282,2283): 当前 server 是 leader 时,监听此端口接管 followers 的毗连,留意followers不会监听此端口(直到它进级为 leader)
  • port2(2291,2292,2293): 是推举 leader 时所行使的端口。

必需天生文件 $ZOOKEEPER_HOME/data/%n/myid,其内容为 zoo.cnf 中的 N(处事器ID), 不然抛出非常 java.lang.IllegalArgumentException: $ZOOKEEPER_HOME/data/{n}/myid file is missing

2.4 处事的设置并启动

  1. ## sudo vim /usr/lib/systemd/system/zookeeper@.service 
  2. ## 个中的 %i 未来会被替代为详细的 1/2/3 
  3. [Unit] 
  4. Description=ZooKeeper 
  5. After=syslog.target network.target 
  6.  
  7. [Service] 
  8. Type=forking 
  9. Environment="ZOOCFG=zoo-%i.cfg" 
  10. ExecStart=/opt/zookeeper-3.4.11/bin/zkServer.sh start 
  11. ExecStop=/opt/zookeeper-3.4.11/bin/zkServer.sh stop 
  12.  
  13. [Install] 
  14. WantedBy=multi-user.target 

设置为自动启动,并当即启动:

  1. sudo systemctl daemon-reload 
  2. sudo systemctl enable zookeeper@{1,2,3} 
  3. sudo systemctl start zookeeper@{1,2,3} 
  4. sudo netstat -natp | grep LISTEN | grep -E "218|228|229" 
  5. # sudo systemctl stop zookeeper@{1,2,3} 

2.5 防火墙放行

假如非本机应用必要毗连 ZooKeeper,必需把全部 clientPort 端口放行。

  1. ### sudo vim /etc/sysconfig/iptables 
  2. -A INPUT -m state --state NEW -m tcp -p tcp --dport 2181 -j ACCEPT 
  3. -A INPUT -m state --state NEW -m tcp -p tcp --dport 2182 -j ACCEPT 
  4. -A INPUT -m state --state NEW -m tcp -p tcp --dport 2183 -j ACCEPT 
  5. ### 重启见效: sudo systemctl restart iptables 

2.6 客户端验证

  1. zkCli.sh -server localhost:2181 ## 进入呼吁行状态 
  2. help ## 表现全部呼吁名目 
  3. quit ## 退出呼吁行状态 
  4. history ## 表现汗青呼吁 
  5.  
  6. ls path [watch] 
  7. createpath data acl 
  8. delete path [version] 
  9. set path data [version] 
  10. get path [watch] 
  11. stat path [watch] 
  12. sync path 
  13.  
  14. listquota path 
  15. setquota -n|-b val path 
  16. delquota [-n|-b] path 
  17.  
  18. addauth scheme auth 
  19. setAcl path acl 
  20. getAcl path 
  21.  
  22. printwatches on|off 
  23. redo cmdno 

也可集毗连和呼吁于一行:

  1. zkCli.sh -server localhost:2181 ls / 

2.7 清空数据【慎用】

  1. sudo systemctl stop zookeeper@{1,2,3} 
  2. sudo rm -rf $ZOOKEEPER_HOME/{logs,data}/{1,2,3}/version-* 
  3. sudo systemctl start zookeeper@{1,2,3} 

2.8 卸载处事【慎用】

  1. sudo systemctl stop zookeeper@{1,2,3} 
  2. sudo systemctl disable zookeeper@{1,2,3} 
  3. sudo rm -rf $ZOOKEEPER_HOME 

3.Windows 下安装(可用于开拓)

3.1 下载

https://archive.apache.org/dist/zookeeper/

https://archive.apache.org/dist/zookeeper/zookeeper-3.4.11/

https://archive.apache.org/dist/zookeeper/zookeeper-3.4.11/zookeeper-3.4.11.tar.gz

3.2 安装

3.2.1 解压

3.2.2 修改体系情形变量

  1. set ZOOKEEPER_HOME={???}zookeeper-3.4.11 
  2. set PATH=%ZOOKEEPER_HOME%bin 

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读