广告网,seo优化排名服务,wordpress如何设置导航,网站推广 教程前言
关于ZooKeeper#xff0c;博主已完整的通过庖丁解牛式的“解法”#xff0c;完成了概述。我想掌握了这些基础原理和概念后#xff0c;工作的问题自然迎刃而解#xff0c;甚至offer也可能手到擒来#xff0c;真实一举两得#xff0c;美极了。
为了更有直观的体验博主已完整的通过庖丁解牛式的“解法”完成了概述。我想掌握了这些基础原理和概念后工作的问题自然迎刃而解甚至offer也可能手到擒来真实一举两得美极了。
为了更有直观的体验强化概念博主特别献上一篇实践文章。理论联系实践才能学到真本领。 一、环境准备
1. JDK
检查自身测试环境是否具备JDK命令java -version如返回如下图所示即已安装否则必须提前安装 2. ZK安装包
可自行前往官网下载如需请速戳ZooKeeper最新安装包。
二、安装部署
1. 创建server
首先根据ZK的 ·奇数·过半OK 特性我们需准备3个server。当然博主受限于资源数量仅以一台服务器为例进行集群搭建所谓“伪分布式集群”。
找一台服务器分别新建3个zkserver目录分别命名为zkserver1、zkserver2、zkserver3。预期效果如下图所示
2. 修改文件
2.1 zoo.cfg
上传服务器后第一件事修改 zoo.cfg 如下
tickTime2000
initLimit10
syncLimit5##########指定目录###########
dataDir/home/xxapp/zk/zkserver1/data
dataLogDir/home/xxapp/zk/zkserver1/data/log##########指定服务端口###########
clientPort2281##########指定管理端口###########
admin.serverPort3281##########指定集群端口###########
server.1localhost:2881:3881
server.2localhost:2882:3882
server.3localhost:2883:3883每个参数的含义如下
参数名参数简介tickTimeZK中的一个时间单元。ZK中所有时间都是以这个时间单元为基础initLimitLeader允许Follower在initLimit在完成数据同步否则无法对外提供服务syncLimitLeader通过syncLimit检测Follower的存活超时则认为已宕机dataDir存储快照文件snapshot的目录。当然默认也存储事务日志建议使用dataLogDirdataLogDir存储事务日志的目录clientPortZK对外服务端口默认2181Server.N设置集群信息代表Server.myid 集群节点IP : 与Leader交互接口 : 集群选举接口
如此有了参照可以copy 3份数据目录按序分别修改为server1、server2、server3clientPort与admin.serverPort分别顺序加1集群端口配置必须保持相同。
2.2 创建myid文件
myid文件用于指定每个server的编号从1开始顺序递增。 命令先touch后 vi预期如下
3. 修改防火墙
3.1 确认是否已开启防火墙
命令systemctl status firewalld如下图所示代表已启动。 3.2 端口放行
命令firewall-cmd --zonepublic --add-port你的端口/tcp --permanent如下图所属代表成功。 4. 启动server
4.1 启动zk
命令zkServer.sh start预期效果如下代表成功 其他两个server同理按序启动。
4.2 查看状态
命令zkServer.sh status预期效果如下代表成功。
zkserver1 zkserver2 zkserver3
4.3 注意事项
admin.serverPort建议指定默认8080否则端口占用server.N在“伪分布式集群”中所有server的交互端口和选举端口必须有所差异否则端口占用 结语
通过一文搭建ZooKeeper集群可以更好的理解它、掌握它。接下来可以基于集群进行相关操作了。比如创建Znode比如模拟宕机选举、又比如模拟数据同步等场景。
好了关于ZooKeeper的总结和介绍到此为止希望各位盆友有所收获 历史回顾 微服务实战系列之ZooKeeper下微服务实战系列之ZooKeeper中微服务实战系列之ZooKeeper上微服务实战系列之MQ微服务实战系列之通信微服务实战系列之J2Cache微服务实战系列之Cache技巧篇微服务实战系列之MemCache微服务实战系列之EhCache微服务实战系列之Redis微服务实战系列之Cache微服务实战系列之Nginx技巧篇微服务实战系列之Nginx微服务实战系列之Feign微服务实战系列之Sentinel微服务实战系列之Token微服务实战系列之Nacos微服务实战系列之Gateway微服务实战系列之加密RSA微服务实战系列之签名Sign