首页 新闻 会员 周边 捐助

Ocelot怎么保证Consul高可用?

0
悬赏园豆:20 [待解决问题]

如题,在使用Ocelot+Consul的过程中,遇到一个疑问,我搭建了由三个节点组成的Consul集群,在使用Ocelot集成Consul的时候,发现配置Consul地址只有一个,这里问题就来了,如果配置的Consul节点挂掉了,那么网关本身不也就挂掉了么?那我搭建Consul集群用处在哪里?怎么保证Consul节点挂掉了之后,网关本身调用其他的可用Consul节点?

調調的主页 調調 | 菜鸟二级 | 园豆:202
提问于:2020-12-24 11:24
< >
分享
所有回答(3)
0

你三个节点组成的集群,挂也是这三个节点种的一个挂,但是consul还是好的,只要不是三个都挂,还能用

不知道风往哪儿吹 | 园豆:2035 (老鸟四级) | 2020-12-24 15:04

你没有明白我的意思,consul任意一个节点挂掉,是不会影响整个集群,问题是网关ocelot对应服务发现consul配置的节点只能一个,如果这个节点挂掉了,网关不就瘫痪了
如果网关配置consul的地方:

支持(0) 反对(0) 調調 | 园豆:202 (菜鸟二级) | 2020-12-25 15:03
0

集群本身consul 出问题,相当于系统直接挂了,如果是节点挂了,服务提供一个心跳检测的方法,用于consul定时检测服务实例是否健康,polly。

HSCOrange | 园豆:206 (菜鸟二级) | 2020-12-24 15:33

consul集群挂掉一个节点,是不会有什么影响,问题是网关依赖于consul,且配置节点只有一个,这个节点挂掉,网关不就挂掉了,你consul集群还在有什么用?

支持(0) 反对(0) 調調 | 园豆:202 (菜鸟二级) | 2020-12-25 15:05

@調調: Consul的集群通过Nginx代理出一个端口,Ocelot网关这里配置是这个代理的端口,通过代理端口和Consul集群通信,其中, 集群的服务内部均衡机制由Consul自身维护

支持(0) 反对(0) 天~~ | 园豆:200 (初学一级) | 2021-04-26 10:26

@調調: 我目前就是通过这样处理的,但是发现压力测试的时候,吞吐量上不去,我也是个水手,学习中。。

支持(0) 反对(0) 天~~ | 园豆:200 (初学一级) | 2021-04-26 10:27
0

很简单啊,你一个Consul下面集群了多个服务,你如果有一个服务挂了,其他服务会顶上去,同理,你Consul只有一个你怕不稳地怕挂了系统没法用,那你就把Consul做主从集群,只要主的挂了,会自动从其他从的Consul中再推举一个做为主的,我现在纠结的是要是我Ocelot网关挂了怎么办,用Nginx做主从集群反向代理网关?

金同学 | 园豆:67 (初学一级) | 2021-09-30 22:03

我这个问题最好就是不用网关了,直接Consul做主从集群,既保证了高可用,又保证了伸缩性

支持(0) 反对(0) 金同学 | 园豆:67 (初学一级) | 2021-09-30 22:08
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册