Zookeeper如何实现分布式服务配置中心
发表于:2025-11-12 作者:千家信息网编辑
千家信息网最后更新 2025年11月12日,本篇文章为大家展示了Zookeeper如何实现分布式服务配置中心,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。1 Linux安装并启动Zookeeper1.1
千家信息网最后更新 2025年11月12日Zookeeper如何实现分布式服务配置中心
本篇文章为大家展示了Zookeeper如何实现分布式服务配置中心,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
1 Linux安装并启动Zookeeper
1.1 安装
下载链接:https://archive.apache.org/dist/zookeeper/
1.1.1 安装
[root@iZ1608aqb7ntn9Z tmp]# lsapache-zookeeper-3.5.7-bin.tar.gz hsperfdata_root[root@iZ1608aqb7ntn9Z tmp]# tar -zxvf apache-zookeeper-3.5.7-bin.tar.gz apache-zookeeper-3.5.7-bin/docs/apache-zookeeper-3.5.7-bin/docs/skin/apache-zookeeper-3.5.7-bin/docs/images/......[root@iZ1608aqb7ntn9Z tmp]# mv apache-zookeeper-3.5.7-bin /usr/local/zookeeper[root@iZ1608aqb7ntn9Z tmp]# cd /usr/local/zookeeper[root@iZ1608aqb7ntn9Z zookeeper]# cd conf/[root@iZ1608aqb7ntn9Z conf]# lsconfiguration.xsl log4j.properties zoo_sample.cfg[root@iZ1608aqb7ntn9Z conf]# cp zoo_sample.cfg zoo.cfg[root@iZ1608aqb7ntn9Z conf]# lsconfiguration.xsl log4j.properties zoo.cfg zoo_sample.cfg[root@iZ1608aqb7ntn9Z conf]# vim zoo.cfg # 修改zoo.cfg配置文件 内容为:tickTime=2000initLimit=10syncLimit=5dataDir=/usr/local/zookeeper/dataclientPort=2181# 保存退出[root@iZ1608aqb7ntn9Z conf]# cd ..[root@iZ1608aqb7ntn9Z zookeeper]# mkdir data[root@iZ1608aqb7ntn9Z zookeeper]# lsbin conf data docs lib LICENSE.txt NOTICE.txt README.md README_packaging.txt
1.2 启动
[root@iZ1608aqb7ntn9Z zookeeper]# cd bin/[root@iZ1608aqb7ntn9Z bin]# ./zkServer start ......[root@iZ1608aqb7ntn9Z bin]# ./zkServer.sh statusZooKeeper JMX enabled by defaultUsing config: /usr/local/zookeeper/bin/../conf/zoo.cfgClient port found: 2181. Client address: localhost. Client SSL: false.Error contacting service. It is probably not running.
在上边我们发现了启动错误,查看日志,发现8080端口被占用,通过查阅Zookeeper3.5的官方文档,发现这是Zookeeper3.5的新特性:
所以我们需要再次修改配置文件,修改启动端口:
在配置文件中加入admin.serverPort=8888
然后再次启动,查看状态:
[root@iZ1608aqb7ntn9Z bin]# ./zkServer.sh statusZooKeeper JMX enabled by defaultUsing config: /usr/local/zookeeper3.5.7/bin/../conf/zoo.cfgClient port found: 2181. Client address: localhost.Mode: standalone
发现启动成功,接下来我们用客户端链接:
[root@iZ1608aqb7ntn9Z bin]# ./zkCli.sh Connecting to localhost:2181......WatchedEvent state:SyncConnected type:None path:null[zk: localhost:2181(CONNECTING) 0] ls /[zookeeper]
1.3 阿里云安全组放开2181端口
(略)
2 zookeeper配置
[zk: localhost:2181(CONNECTING) 0] ls /[zookeeper][zk: localhost:2181(CONNECTED) 4] create /configCreated /config[zk: localhost:2181(CONNECTED) 6] create /config/hello # config后的名称要与spring.name的名称对应Created /config/hello[zk: localhost:2181(CONNECTED) 7] create /config/hello/student.name zsCreated /config/hello/student.name[zk: localhost:2181(CONNECTED) 8] get /config/hello/student.name zs
3 Spring Boot配置
3.1 依赖
org.springframework.boot spring-boot-starter-web org.springframework.cloud spring-cloud-starter-zookeeper-discovery 2.1.4.RELEASE pom runtime org.springframework.cloud spring-cloud-starter-zookeeper-config 2.1.4.RELEASE pom runtime
注意:一定要注意Spring Boot和Spring Cloud的版本对应!
3.2 配置文件
application.yml
server: port: 0 # 表示随机端口student: name: 1
bootstrap.yml
spring: cloud: zookeeper: connect-string: 8.131.57.161:2181 # zk服务端地址 enabled: true # 启动远程配置 application: name: hello
3.3 项目代码
/** * @desc: 控制器 * @author: YanMingXin * @create: 2021/8/20-16:31 **/@RestControllerpublic class HelloController { @Value("${student.name}") private String name; @RequestMapping("/hello") public String getName() { return name; }}3.4 启动测试
下面我们来修改下远程配置,看下是不是真的使用了zookeeper的配置文件:
[zk: localhost:2181(CONNECTED) 9] delete /config/hello/student.name [zk: localhost:2181(CONNECTED) 10] get /config/hello/student.name org.apache.zookeeper.KeeperException$NoNodeException: KeeperErrorCode = NoNode for /config/hello/student.name[zk: localhost:2181(CONNECTED) 11] create /config/hello/student.name ls Created /config/hello/student.name[zk: localhost:2181(CONNECTED) 12] get /config/hello/student.name ls
重新启动项目:
上述内容就是Zookeeper如何实现分布式服务配置中心,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。
配置
文件
端口
服务
内容
分布式
服务配置
再次
名称
技能
知识
链接
项目
简明
成功
接下来
简明扼要
上边
代码
地址
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
五百万互联网科技有限公司
达梦数据库建表外键约束报错
计算机网络技术ABCD类
江山农商银行转账服务器异常
我的世界独立塔副本服务器
学网络技术能做什么的
中科可控应用服务器
固镇软件开发技术
携程数据库技术路线图
网络安全工作调研会议
小米枪战更新后没有服务器
网络安全秘钥是什么意思
网络安全视频资源共享
阿里云服务器镜像配置
流媒体服务器有什么用
网络技术速率是什么
大专软件开发电脑配置推荐
深圳富米网络技术有限公司
小公司软件开发项目管理
怎么管理国外的服务器
通信软件开发实训报告
手机我的世界可登入服务器
golden db数据库原理
江苏综合软件开发制造价格
税局的发票数据库
网络安全相关设计
网络技术中英文百度文库
巴中软件开发方案
数据库显示第8页信息
常用的图数据库查询语言