Nacos FAQ Python NacosClient Python语言的NacosClient使用Python的Logging模块,会和应用的Logging模块保持一致并输出到应用的日志中。 C++ NacosClient C++语言的NacosClient的日志默认在应用所在目录下,文件名为nacossdkcpp.log, 可通过Logger.cpp中的setBaseDir设置日志目录。 引擎升级或重启时,出现访问异常或中断服务 集群升级或重启会轮转进行。不同节点数量的集群可能出现的情况不同。 1. 3个节点以上的集群:不会出现中断服务,无法访问的情况,但仍可能出现少量的短时间的请求失败,客户端会立刻重试恢复。 2. 单节点集群:会导致集群不可用并中断服务。仅开发版集群为单节点,不保证高可用。 控制台还能查到不存在的服务实例IP如何处理的 问题现象 应用服务实例停止,注册配置中心控制台仍能看到该服务实例。 应用服务重启或发布后,注册配置中心控制台仍能看到该服务实例。 可能原因 服务实例并未彻底关闭,进程仍然存在并发送心跳维持连接,导致Nacos未摘除服务提供。 有额外的应用进程在发送心跳维持连接,导致Nacos未摘除服务提供者。 解决方案 1. 确认该服务实例已经不应该在线的情况下,先在MSE控制台上对该服务提供者执行下线操作,防止有更多流量进入到该故障节点。 2. 根据部署环境的不同排查服务提供者是否未彻底关闭: 直接部署到云主机:登录到对应IP的云主机上,使用ps ef grep ${应用名}、netstat anp grep 48588或netstat anp grep 47588等命令,查看服务提供者进程是否还存在,是否与Nacos还保持着连接。如果是,则确认后关闭该进程。 通过自建Kubernetes、Docker或容器服务部署:检查是否存在幽灵Pod或Container(即Pod或Container已经不可见,但对应的程序进程未终止销毁),可通过在Node或宿主机上执行ps ef grep ${应用名}等命令,查看是否该应用提供者的个数等同于期望个数。如果不相同,则确认后找到该幽灵Pod并彻底关闭。
来自: