如何解决Nacos持久化实例HTTP/TCP的健康检查不通过问题

本文介绍如何解决Nacos持久化实例HTTP/TCP的健康检查不通过问题。

问题现象

当在MSE Nacos中注册的持久化服务提供者选择健康检查方式为HTTP/TCP时,服务提供者的健康状态始终显示为不健康,但服务提供者配置或状态正常。

可能原因

MSE的Nacos为托管类产品,不与应用程序部署在一起。出于安全规范的考量,MSE Nacos在网络层面禁止从服务端向用户服务器发起的TCP连接/HTTP请求(用户服务器向Nacos服务端发送请求时不受影响)。上述原因可能导致健康检查始终会以超时等网络原因显示失败。

排查步骤&解决方案

将注册的服务类型修改为非持久化。即注册服务提供者时,指定ephemeral字段为true或移除对ephemeral字段的设置(ephemeral字段缺省值为true)。