什么是Consul?

Consul是一种开源的服务发现和配置管理工具,由HashiCorp公司开发。它提供了一种分布式的、高可用的服务发现机制,可以帮助构建可弹性扩展的应用程序和服务。Consul可以用于服务发现、健康检查、负载均衡、故障恢复、安全认证、配置管理等方面。

安装Consul

非Docker安装可参考

Docker安装Consul

docker run -d -p 8500:8500 --name=consul1 consul:1.15.4

Consul - web端

127.0.0.1:8500

后续使用的报错

长时间不使用,重启后无法启动

Consul Server 节点,长时间停机 / 断连,离线时长超过集群限制阈值:168 小时(7 天)。 Consul 内置安全机制:长期离线的旧节点,集群 Raft 元数据已过期,禁止直接重新加入集群,防止集群数据错乱、脑裂。

Consul错误日志

error="refusing to rejoin cluster because server has been offline for more than the configured server_rejoin_age_max (168h0m0s) - consider wiping your data dir"
agent: Exit code: code=1

解决方案:

docker启动,追加:-Dconsul.server_rejoin_age_max=8760h

nohup java \
-Dtsf_consul_ip=10.88.36.48 \
-Dtsf_consul_port=8500 \
-Dconsul.server_rejoin_age_max=8760h \   <-- 加这一行(改成1年)
-jar jadp.jar > jadp.log 2>&1 &

或者找到配置文件,追加或者修改

server_rejoin_age_max = "8760h"
特殊说明:
上述文章均是作者实际操作后产出。烦请各位,请勿直接盗用!转载记得标注原文链接:www.zanglikun.com
第三方平台不会及时更新本文最新内容。如果发现本文资料不全,可访问本人的Java博客搜索:标题关键字。以获取最新全部资料 ❤

免责声明:
本站文章旨在总结学习互联网技术过程中的经验与见解。任何人不得将其用于违法或违规活动!所有违规内容均由个人自行承担,与作者无关。