如何指定注册到Consul上的IP地址

6 篇文章 0 订阅
4 篇文章 0 订阅

标注【通用】的,指的是不管你使用哪款服务发现组件(Eureka、Consul、Zookeeper…)配置都可生效。
【推荐】方式一、忽略指定名称的网卡【通用】
spring:
cloud:
inetutils:
ignored-interfaces:
- docker0
- veth.*
consul:
discovery:
prefer-ip-address: true
【推荐】方式二、指定想要的网段【通用】
spring:
cloud:
inetutils:
preferred-networks:
- 192.168
- 10.0
consul:
discovery:
prefer-ip-address: true
【不推荐】方式三、只使用站点本地地址【通用】
spring:
cloud:
inetutils:
use-only-site-local-interfaces: true
consul:
discovery:
prefer-ip-address: true
TIPS

站点本地地址:

https://4sysops.com/archives/ipv6-tutorial-part-6-site-local-addresses-and-link-local-addresses/
https://stackoverflow.com/questions/5619345/what-does-inetaddress-issitelocaladdress-actually-mean
【不推荐】方式四、手动指定IP【Consul专用】
spring:
cloud:
consul:
host: localhost
port: 8500
discovery:
prefer-ip-address: true
ip-address: 127.0.0.1

windows系统运行 consul(替换批处理里面的-bind参数为自己的ip然后运行批处理) Consul特性 基础特性 1.服务注册/发现 为什么微服务架构下就需要做服务注册和服务发现呢?微服务的目标就是要将原来大一统的系统架构,拆分成细粒度的按功能职责分成的小系统,这样就会出现很多小的系统,部署的节点也会随之增加。试想一下,如果没有一个统一的服务组件来管理各系统间的列表,微服务架构是很难落地实现的。 Consul提供的服务注册/发现功能在数据强一致性和分区容错性上都有非常好的保证,但在集群可用性下就会稍微差一些(相比Euerka来说)。 2.数据强一致性保证 Consul采用了一致性算法Raft来保证服务列表数据在数据中心中各Server下的强一致性,这样能保证同一个数据中心下不管某一台Server Down了,请求从其他Server中同样也能获取的最新的服务列表数据。数据强一致性带来的副作用是当数据在同步或者Server在选举Leader过程中,会出现集群不可用。 3.多数据中心 Consul支持多数据中心(Data Center),多个数据中心之间通过Gossip协议进行数据同步。多数据中心的好处是当某个数据中心出现故障时,其他数据中心可以继续提供服务,提升了可用性。 4.健康检查 Consul支持基本硬件资源方面的检查,如:CPU、内存、硬盘等 5.Key/Value存储 Consul支持Key/Value存储功能,可以将Consul作为配置中心使用,可以将一些公共配置信息配置到Consul,然后通过Consul提供的 HTTP API来获取对应Key的Value。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值