nacos常见问题之集群异常如何解决

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
可观测可视化 Grafana 版,10个用户账号 1个月
简介: Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。

问题一:nacos有支持postgresql版本吗?


nacos有支持postgresql版本吗?


参考回答:

Nacos支持PostgreSQL数据库。自Nacos 2.0版本以来,Nacos增加了对PostgreSQL数据库的支持。用户可以使用PostgreSQL作为Nacos的持久化存储数据库,替代默认的MySQL数据库。在部署Nacos时,可以通过配置相关环境变量或修改配置文件来指定连接到PostgreSQL数据库。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/582901


问题二:Nacos默认的maxLifeTime数值是多少啊?


Nacos默认的maxLifeTime数值是多少啊?

2023-12-19 23:29:25,810 WARN HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@150eee61 (Communications link failure

The last packet successfully received from the server was 20,009 milliseconds ago. The last packet sent successfully to the server was 20,010 milliseconds ago.). Possibly consider using a shorter maxLifetime value. 日志显示是nacos的maxLifeTime过大。。


参考回答:

看下这个:https://blog.csdn.net/weixin_43159975/article/details/112644122

另外你看看是不是数据库压力太大了,升级数据库配置缓解一下试试。


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/582566


问题三:Nacos上述集群模式下告警,是因为连接mysql异常导致整个集群异常了吗?


Nacos上述集群模式下告警,是因为连接mysql异常导致整个集群异常了吗?

2023-12-19 23:29:25,810 WARN HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@150eee61 (Communications link failure

The last packet successfully received from the server was 20,009 milliseconds ago. The last packet sent successfully to the server was 20,010 milliseconds ago.). Possibly consider using a shorter maxLifetime value.

2023-12-19 23:29:27,179 INFO [Cluster-nacos1:8848] Server healthy check fail, currentConnection = 1702958250987_10.11.1.11_58150

2023-12-19 23:29:27,180 INFO [Cluster-nacos1:8848] Try to reconnect to a new server, server is not appointed, will choose a random server.

2023-12-19 23:29:28,039 INFO [Cluster-nacos3:8848] Server healthy check fail, currentConnection = 1702958241223_10.11.1.11_39560

2023-12-19 23:29:28,039 INFO [Cluster-nacos3:8848] Try to reconnect to a new server, server is not appointed, will choose a random server.

2023-12-19 23:29:28,273 WARN HikariPool-1 - Failed to validate connection com.mysql.cj.jdbc.ConnectionImpl@2eb23bbc (Communications link failure

The last packet successfully received from the server was 152,630 milliseconds ago. The last packet sent successfully to the server was 152,631 milliseconds ago.). Possibly consider using a shorter maxLifetime value.

2023-12-19 23:29:30,181 ERROR Server check fail, please check server nacos1 ,port 9849 is available , error ={}

java.util.concurrent.TimeoutException: Waited 3000 milliseconds (plus 86087 nanoseconds delay) for io.grpc.stub.ClientCallsGrpcFuture@37bda231[status=PENDING, info=[GrpcFuture{clientCall=ClientCallImpl{method=MethodDescriptor{fullMethodName=Request/request, type=UNARY, idempotent=false, safe=false, sampledToLocalTracing=true, requestMarshaller=io.grpc.protobuf.lite.ProtoLiteUtilsGrpcFuture@37bda231[status=PENDING, info=[GrpcFuture{clientCall=ClientCallImpl{method=MethodDescriptor{fullMethodName=Request/request, type=UNARY, idempotent=false, safe=false, sampledToLocalTracing=true, requestMarshaller=io.grpc.protobuf.lite.ProtoLiteUtilsGrpcFuture@37bda231[status=PENDING, info=[GrpcFuture{clientCall=ClientCallImpl{method=MethodDescriptor{fullMethodName=Request/request, type=UNARY, idempotent=false, safe=false, sampledToLocalTracing=true, requestMarshaller=io.grpc.protobuf.lite.ProtoLiteUtilsMessageMarshaller@794b08c8, responseMarshaller=io.grpc.protobuf.lite.ProtoLiteUtilsMessageMarshaller@82645e5,schemaDescriptor=com.alibaba.nacos.api.grpc.auto.RequestGrpcMessageMarshaller@82645e5,schemaDescriptor=com.alibaba.nacos.api.grpc.auto.RequestGrpcMessageMarshaller@82645e5, schemaDescriptor=com.alibaba.nacos.api.grpc.auto.RequestGrpcRequestMethodDescriptorSupplier@61a8356c}}}]]

at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:508)

at com.alibaba.nacos.common.remote.client.grpc.GrpcClient.serverCheck(GrpcClient.java:196)

at com.alibaba.nacos.common.remote.client.grpc.GrpcClient.connectToServer(GrpcClient.java:307)

at com.alibaba.nacos.common.remote.client.RpcClient.reconnect(RpcClient.java:498)

at com.alibaba.nacos.common.remote.client.RpcClient.lambdastartstartstart2(RpcClient.java:339)

at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)

at java.util.concurrent.FutureTask.run(FutureTask.java:266)

at java.util.concurrent.ScheduledThreadPoolExecutorScheduledFutureTask.accessScheduledFutureTask.accessScheduledFutureTask.access201(ScheduledThreadPoolExecutor.java:180)

at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)

at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)

at java.lang.Thread.run(Thread.java:750)

2023-12-19 23:29:31,041 ERROR Server check fail, please check server nacos3 ,port 9849 is available , error ={}


参考回答:

最后一句说的很明白,检查下nacos3的9849端口。

2023-12-19 23:29:31,041 ERROR Server check fail, please check server nacos3 ,port 9849 is available , error ={}


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/582565


问题四:prometheus 能从nacos 拉取微服务监控指标吗?跟eureka一样。


prometheus 能从nacos 拉取微服务监控指标吗?跟eureka一样。


参考回答:

可以的,看看这个文档。

https://nacos.io/zh-cn/docs/monitor-guide.html


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/582564


问题五:请教一个问题。nacos2.2.3版本。发布配置的时候。是不是少了什么配置?


请教一个问题。nacos2.2.3版本。发布配置的时候。获取不到 ENCRYPTED_DATA_KEY 导致 入库 HIS_CONFIG_INFO 失败。是不是少了什么配置?


参考回答:

在Nacos 2.2.3版本中,如果在发布配置时获取不到ENCRYPTED_DATA_KEY,并且因此导致无法成功入库到HIS_CONFIG_INFO表,可能存在以下几种情况:

  1. 加密功能未启用或配置不正确
    确保你在Nacos服务端已经启用了配置的加密功能,并且在客户端也正确配置了加密相关的设置。这可能涉及到在Nacos的配置文件中设置加密算法、密钥等信息。
  2. 缺少加密Key的生成或传递
    在发布配置时,如果使用了加密,Nacos服务端应该会生成一个ENCRYPTED_DATA_KEY并将其与配置内容一起返回给客户端。检查你的发布配置代码或者调用过程,确保在请求中包含了生成或获取加密Key的步骤,并且这个Key被正确地用于加密配置内容。
  3. 数据库表结构不匹配
    根据之前的知识库信息,Nacos 2.1及以后的版本需要HIS_CONFIG_INFO表包含encrypted_data_key字段。确认你的数据库表结构是否与Nacos 2.2.3版本的要求相匹配,包括字段名称、类型和注释。
  4. 升级或迁移问题
    如果你是从之前的Nacos版本升级到2.2.3,可能存在数据库表结构未正确更新的问题。确保在升级过程中执行了所有必要的数据库迁移脚本,包括添加encrypted_data_key字段的ALTER TABLE语句。
  5. 服务端 bug 或兼容性问题
    尽管这种情况相对较少,但也不能完全排除Nacos服务端存在bug或与特定环境的兼容性问题


关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/581944

目录
相关文章
|
19天前
|
JSON Java Serverless
nacos常见问题之cpu和内存占用高如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
113 0
|
19天前
|
人工智能 Serverless 测试技术
nacos常见问题之Serverless 应用引擎2.0不支持 MSE nacos如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
23 0
|
19天前
|
运维 Java Nacos
nacos常见问题之读取不到配置文件如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
175 2
|
5天前
|
存储 应用服务中间件 Nacos
Nacos集群搭建
官方给出的Nacos集群图: 其中包含3个nacos节点,然后一个负载均衡器代理3个Nacos。这里负载均衡器可以使用nginx。
30 3
|
19天前
|
Java 数据库连接 Nacos
nacos常见问题之启动不了如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
41 0
|
19天前
|
Dubbo Java 应用服务中间件
nacos常见问题之dubbo的耗时严重如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
48 0
|
19天前
|
负载均衡 安全 Java
nacos常见问题之双写关闭如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
35 4
|
19天前
|
运维 Kubernetes Nacos
nacos常见问题之服务注册IP白名单如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
20 0
|
19天前
|
编解码 Java Nacos
nacos常见问题之密码加密配置如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
121 0
|
19天前
|
安全 前端开发 Nacos
nacos常见问题之配置注册的白名单如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
76 0