TNBLOG
首页
博客
视频
资源
问答
猿趣
手机
关于
搜索
收藏
便签
笔记
消息
创作
登录
剑轩
故如虹,知恩;故如月,知明
博主信息
排名
6
文章
6
粉丝
16
评论
8
文章类别
CSS
15篇
微服务
41篇
Git
14篇
.NET
102篇
移动开发
33篇
软件架构
23篇
.NET Core
118篇
.NET MVC
11篇
英语
3篇
随笔
86篇
Bootstrap
3篇
Redis
21篇
编辑器
10篇
Js相关
15篇
虚拟化
8篇
更多
Oracle
7篇
Python
14篇
数据库
26篇
EF
17篇
微信
3篇
前端
151篇
消息队列
6篇
docker
41篇
多线程
1篇
Java
4篇
软件基础
2篇
C++
2篇
WCF
7篇
Linux
7篇
nginx
5篇
K8S
9篇
ABP
2篇
最新文章
最新评价
{{item.articleTitle}}
{{item.blogName}}
:
{{item.content}}
关于我们
ICP备案 :
渝ICP备18016597号-1
网站信息:
2018-2024
TNBLOG.NET
技术交流:
群号656732739
联系我们:
contact@tnblog.net
欢迎加群
欢迎加群交流技术
原
Windows下安装Consul与简单介绍
7230
人阅读
2020/5/25 20:39
总访问:
3842420
评论:
0
收藏:
0
手机
分类:
微服务
Consul 是一个用来实现分布式系统服务发现与配置的开源工具。它内置了服务注册与发现框架、分布一致性协议实现、健康检查、Key/Value存储、多数据中心方案,也可以作为配置中心。 **为什么需要服务注册与服务发现**: 我的理解:就是服务于服务之间不直接依赖,而是通过注册中心来管理。就类似依赖注入一样,类与类之间不支持依赖,而是通过依赖注入容器来管理。 和依赖注入类似,依赖于接口依赖于抽象不依赖于具体实现,用服务治理和就依赖于服务治理了不依赖于具体的服务了,相当于多加了一层 因为多加了一层,服务与服务之间的耦合度降低了,通过服务发现的方式去调用服务,可以支持动态扩展,比如动态的增加服务与减少服务 ####下载: https://download.tnblog.net/resource/index/836598dc6043401f9e8ab6634b303313 >这里吐槽下这个上传大小的限制...emmm项目要配置,iis要配置,nginx要配置,跨过一个坑又要一个坑 <br/> ####解压: 找一个位置解压,然后在你解压的位置输入启动命令(开发者模式): ``` consul agent -dev ``` 如图: ![](https://img.tnblog.net/arcimg/aojiancc2/d919399d2d0b4285a597c1cb25bb26cc.png) 输入命令正确启动即可不需要安装,启动成功后输入地址http://localhost:8500/ 就可以成功的访问到Consul的界面了 ![](https://img.tnblog.net/arcimg/aojiancc2/2876fb1386f143b3848de3f5f12109b5.png) nodes里边存放的是集群节点 ####Consul启动模式: **开发者模式** 通过命令:consul agent -dev 简单启动,就可以通过http://localhost:8500/ 来访问这个consul 但是,这种模式一般是自己开发的时候用的,因为它不带记忆功能,不能持久化数据,关闭后数据就没有了,也不能与其他consul互通。 外网访问: consul agent -dev 只能本地可以访问 要想通过ip可以访问,使用下面的使用即可 consul agent -dev -client 0.0.0.0 -ui 指定ip可以访问 **Client模式** 这种模式下,所有注册到当前节点的服务会被转发到Server,本身是不持久化这些信息。 Client模式不能脱离Server单独运行,因此无法实现单机模式 **Server模式** Consul 的 Server 模式,表明这个 Consul 是个 Server ,这种模式下,功能和 Client 都一样,唯一不同的是,它会把所有的信息持久化的本地,这样遇到故障,信息是可以被保留的。 运行命令: ``` consul agent -server -bootstrap-expect 1 -data-dir /soft/data/consul -node=consulServer1 -bind=10.267.83.220 -ui -rejoin -config-dir=/soft/config/consul/ -client 0.0.0.0 ``` 启动后可以通过http://10.267.83.220:8500 来访问这个consul的ui界面。 - server : 定义agent运行在server模式 - bootstrap-expect :在一个datacenter中期望提供的server节点数目,当该值提供的时候,consul一直等到达到指定sever数目的时候才会引导整个集群,该标记不能和bootstrap共用 - bind:该地址用来在集群内部的通讯,集群内的所有节点到地址都必须是可达的,默认是0.0.0.0 - node:节点在集群中的名称,在一个集群中必须是唯一的,默认是该节点的主机名 - ui: 开启consul的界面; - rejoin:使consul忽略先前的离开,在再次启动后仍旧尝试加入集群中。 - config-dir:配置文件目录,里面所有以.json结尾的文件都会被加载 - client:consul服务侦听地址,这个地址提供HTTP、DNS、RPC等服务,默认是127.0.0.1所以不对外提供服务,如果你要对外提供服务改成0.0.0.0 当然简单一点就直接consul agent -server就行 <br/> ####关于Consul Key/Value数据持久化的问题: 如果不用Consul本身的数据持久化,可以考虑自己存储这些持久化数据,然后可以在初始化的时候,把配置信息比如存储在数据库中的配置信息写到consul,然后在获取。
欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739
👈{{preArticle.title}}
👉{{nextArticle.title}}
评价
{{titleitem}}
{{titleitem}}
{{item.content}}
{{titleitem}}
{{titleitem}}
{{item.content}}