首页 > 其他分享 >k8s集群-spring cloud 集成seata的时候:can not register RM,err:can not connect to services-server.

k8s集群-spring cloud 集成seata的时候:can not register RM,err:can not connect to services-server.

时间:2023-09-12 11:35:15浏览次数:38  
标签:netty 1.6 java seata err spring NettyClientChannelManager na

背景说明

  1. seate和其他微服务在k8s集群中部署,都在同一个命名空间。注册到nacos的同一个命名空间
  2. seate是官方提供,无改动

k8s中部署情况:

报错提示

core服务的报错内容:

2023-09-12 11:07:06.524 ERROR 7 --- [eoutChecker_2_1] i.s.c.r.netty.NettyClientChannelManager  : 0101 can not connect to 127.0.0.1:8091 cause:can not register RM,err:can not connect to services-server.

io.seata.common.exception.FrameworkException: can not register RM,err:can not connect to services-server.
	at io.seata.core.rpc.netty.NettyClientChannelManager.doConnect(NettyClientChannelManager.java:250) ~[seata-all-1.6.1.jar!/:1.6.1]
	at io.seata.core.rpc.netty.NettyClientChannelManager.acquireChannel(NettyClientChannelManager.java:112) ~[seata-all-1.6.1.jar!/:1.6.1]
	at io.seata.core.rpc.netty.NettyClientChannelManager.reconnect(NettyClientChannelManager.java:196) ~[seata-all-1.6.1.jar!/:1.6.1]
	at io.seata.core.rpc.netty.AbstractNettyRemotingClient$1.run(AbstractNettyRemotingClient.java:115) ~[seata-all-1.6.1.jar!/:1.6.1]
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) ~[na:na]
	at java.base/java.util.concurrent.FutureTask.runAndReset(Unknown Source) ~[na:na]
	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source) ~[na:na]
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) ~[na:na]
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ~[na:na]
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.92.Final.jar!/:4.1.92.Final]
	at java.base/java.lang.Thread.run(Unknown Source) ~[na:na]

排查过程

  1. 检查配置
    初步排查怀疑是这个service.default.grouplist=127.0.0.1:8091 配置导致。
    在k8s中,应该是用server name 来代替127.0.0.1

配置修改如下:

没有解决问题。

  1. 检查nacos中的注册ip

可以看到这个10.96.42.251是pod的ip。若其他微服务是通过这个ip进行访问seate的话,这个pod的ip是无法提供服务的。

  1. 检查core是如何调用

    从配置中可以看出,core并没有指定seate服务的服务名称,也没有指定seate的ip地址和端口。

标签:netty,1.6,java,seata,err,spring,NettyClientChannelManager,na
From: https://www.cnblogs.com/zoujiaojiao/p/17695730.html

相关文章

  • [SpringSecurity5.2.2源码分析七]:WebAsyncManagerIntegrationFilter
    1、作用• 是为了接口返回异步对象,然后执行异步任务也能通过SecurityContextHolder获取SecurityContext• 比如说返回值是WebAsyncTask的时候2、WebAsyncManagerIntegrationFilter• 源码很短就是在WebAsyncManager中注册了SecurityContextCallableProcessingInterceptorpublic......
  • Spring Boot 中调用外部接口的 3 种方式
    ......
  • springboot、jvm调优(设置运行的参数)
    1、工具jdk自带的工具位置:找到窗口->应用程序2、问题和方式在SpringBoot项目中,调优主要通过配置文件和配置JVM的参数的方式进行。2.1springboot修改配置文件调优关于修改配置文件application.properties。https://docs.spring.io/spring-boot/docs/current/reference/ht......
  • springboot解决循环依赖
    importorg.springframework.context.annotation.Lazy;@ServicepublicclassCService{privateAServiceaService;//去掉@Autowired//采用构造器方式,加入Lazy注解publicCService(@LazyAServiceaService){this.aService=aService;......
  • SpringCloud为啥要采用HTTP,不采用RPC
    1、首先SpringCloud开启WEB服务依赖于Tomcat,Tomcat内部采用HTTP协议,开发者编写JSON作为资源传输和响应,可以更加能灵活处理业务数据。2、RPC基于TCP协议,客户端和服务端需要三次握手,四次挥手进行数据传输。TCP是数据传输层,传输协议统一由服务端进行编写,进行二进制传输,依赖序列化和......
  • Springboot整合Quartz通用项目
    1.整合的意义:在某些应用场景下要求任务必须具备高可用性和可扩展性,单台服务器不能满足业务需求,这时就需要使用Quartz实现分布式定时任务当然分布式下Quartz并不是最好的,但是确是最简单易实现,实现快速开发。其他选择如:xxjob、powerjob...2.依赖:项目结构:pom依赖<dependenc......
  • Spring集成线程池
    在Spring中,可以使用TaskExecutor接口来集成线程池。以下是一个示例代码,演示如何在Spring中配置和使用线程池:1.首先,添加依赖项,以使用Spring的线程池支持。在Maven项目中,可以在pom.xml文件中添加以下依赖项:<dependencies><!--其他依赖项--><dependency><gr......
  • Spring 注入集合
    使用<property>标签的value属性配置原始数据类型和ref属性配置对象引用的方式来定义Bean配置文件。这两种情况都涉及将单一值传递给Bean。那么如果您想传递多个值,例如Java集合类型,如List、Set、Map和Properties怎么办?为了处理这种情况,Spring提供了四种类型的集合配置元素,如下所示:......
  • springcloud中网关起什么作用
    (目录)springcloud中网关起什么作用在SpringCloud中,网关起到了路由和过滤的作用。路由:网关通过配置路由规则,将请求转发到不同的服务实例上。它可以根据请求的URL、请求的HTTP方法、请求的Header等信息,将请求路由到相应的服务实例上。通过网关,可以实现请求的负载均衡和动态路......
  • Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的?
    是@SpringBootApplication由三个注解组成@EnableAutoConfiguration:开启自动配置@SpringBootConfiguration:和@Configuration作用类似,表明自己是一个配置类,不同的是@SpringBootConfiguration允许自动配置@ComponetScan:设置扫描路径......