gpt4 book ai didi

consul - 从领事中删除失效的服务

转载 作者:行者123 更新时间:2023-12-03 09:29:30 24 4
gpt4 key购买 nike

我们有许多Spring Boot应用程序(通过Spring Cloud Consul)向Consul注册。如果我通过docker-compose stop myservice停止了这些应用程序,则它们将正确注销自身并从Consul中消失。

如果我使用docker-compose kill myservice,则不会发生注销。我了解在UNIX系统上无法捕获SIGKILL事件,因此无法强制取消注册。

因此,我们看到的是Consul中从未删除的服务(标记为critical,但在UI中仍然可见)。有没有一种方法可以强制Consul刷新已注册的内容,以便删除失效的服务?

谢谢

缺口

最佳答案

看来,您必须使用Consul HTTP API并手动注销不可用的服务。 API提供了两种注销某些服务的方法,第一种方法是通过agent endpoint这样

curl -v -X PUT http://%CONSUL_IP%:8500/v1/agent/service/deregister/<ServiceID>

第二个通过 catalog。不幸的是,在两种情况下,您都必须手动进行http请求。

关于consul - 从领事中删除失效的服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42185599/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com