Nacos 持久化实例 删不掉问题( Please unregister instance first )

文章目录

  • 一、报错现象:
  • 二、问题解决过程:
  • 三、最终解决方案:
  • 四、注销实例API:

请直接看第三部分

一、报错现象:

Nacos 持久化实例 删不掉问题( Please unregister instance first )_第1张图片

二、问题解决过程:

尝试将服务下线:

Nacos 持久化实例 删不掉问题( Please unregister instance first )_第2张图片
再次点击删除按钮:

Nacos 持久化实例 删不掉问题( Please unregister instance first )_第3张图片

还是不行,在Nacos控制台摸索了一会,但无法找到解决方法,只好转而百度。最终发现需要调用官方的注销实例 API。
Open API指南

找到注销实例API:

Nacos 持久化实例 删不掉问题( Please unregister instance first )_第4张图片

详细文档内容如下:

Nacos 持久化实例 删不掉问题( Please unregister instance first )_第5张图片
打开postman执行API,看结果已经执行成功了

Nacos 持久化实例 删不掉问题( Please unregister instance first )_第6张图片

再次查看nacos控制台如下:发现还是没删除掉:

Nacos 持久化实例 删不掉问题( Please unregister instance first )_第7张图片

三、最终解决方案:

发现,少了几个参数,把参数都填上就对了,完整地地址如下:

http://localhost:8848/nacos/v2/ns/instance?serviceName=consumer&ip=192.168.153.1&port=8101&weight=1&groupName=DEFAULT_GROUP&namespaceId=public&ephemeral=false&clusterName=DEFAULT

Nacos 持久化实例 删不掉问题( Please unregister instance first )_第8张图片

再次查看nacos控制台,发现终于没有了。

Nacos 持久化实例 删不掉问题( Please unregister instance first )_第9张图片
完结。

四、注销实例API:

接口描述

注销指定实例

请求方式

DELETE
Content-Type:application/x-www-form-urlencoded

请求URL

/nacos/v2/ns/instance

请求Body

参数名 参数类型 是否必填 描述说明
namespaceId String 命名空间Id,默认为public
groupName String 分组名,默认为DEFAULT_GROUP
serviceName String 服务名
ip String IP地址
port int 端口号
clusterName String 集群名称,默认为DEFAULT
healthy boolean 是否只查找健康实例,默认为true
weight double 实例权重,默认为1.0
enabled boolean 是否可用,默认为true
metadata JSON格式String 实例元数据
ephemeral boolean 是否为临时实例

返回数据

参数名 参数类型 描述
data boolean 是否执行成功

示例

  • 请求示例
curl -d 'serviceName=test_service' \
  -d 'ip=127.0.0.1' \
  -d 'port=8090' \
  -d 'weight=0.9' \
  -d 'ephemeral=true' \
  -X DELETE 'http://127.0.0.1:8848/nacos/v2/ns/instance'
  • 返回示例
{
      "code": 0,
      "message": "success",
      "data": true
}

Nacos 持久化实例 删不掉问题( Please unregister instance first )_第10张图片

你可能感兴趣的:(#,Nacos,java)