我已经在我希望删除的consul集群中创建了一堆测试服务,我尝试使用/ v1 / agent / service / deregister / {service id} - 并确保它在每个节点上运行正常 - 我可以在每个节点上看到这个运行
[INFO]代理:已注销的服务' ci'
还有其他方法可以手动清理这些旧服务吗?
谢谢,
答案 0 :(得分:2)
试试这个
$ curl \
--request PUT \
https://consul.rocks/v1/agent/service/deregister/my-service-id
答案 1 :(得分:1)
获取服务信息curl $CONSUL_AGETNT_ADDR:8500/v1/catalog/service/$SERVICE_NAME | python -mjson.tool
:
{
"Address": "10.0.1.2",
"CreateIndex": 30242768,
"Datacenter": "",
"ID": "",
"ModifyIndex": 30550079,
"Node": "log-0",
"NodeMeta": null,
"ServiceAddress": "",
"ServiceEnableTagOverride": false,
"ServiceID": "log",
"ServiceName": "log",
"ServicePort": 9200,
"ServiceTags": [
"log"
],
"TaggedAddresses": null
},
...
准备一个json文件,使用上面的输出cat > data.json
:
{
"Datacenter": "",
"Node": "log-0",
"ServiceID": "log-0"
}
取消注册:curl -X PUT -d @data.json $CONSUL_AGETNT_ADDR:8500/v1/catalog/deregister
答案 2 :(得分:0)
您可以在配置目录中手动清除服务配置
答案 3 :(得分:0)
登录到领事机,并发出如下命令:
consul services deregister -id={Your Service Id}