cause:can not register RM,err:can not connect to services-server.

请添加图片描述

👨🏻‍💻 热爱摄影的程序员
👨🏻‍🎨 喜欢编码的设计师
🧕🏻 擅长设计的剪辑师
🧑🏻‍🏫 一位高冷无情的全栈工程师
欢迎分享 / 收藏 / 赞 / 在看!

【问题】

在使用 Seata 时,客户端一直报无法连接服务端:

- 0101 can not connect to 172.18.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:240)
	at io.seata.core.rpc.netty.NettyClientChannelManager.acquireChannel(NettyClientChannelManager.java:109)
	at io.seata.core.rpc.netty.NettyClientChannelManager.reconnect(NettyClientChannelManager.java:186)
	at io.seata.core.rpc.netty.AbstractNettyRemotingClient$1.run(AbstractNettyRemotingClient.java:115)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539)
	at java.base/java.util.concurrent.FutureTask.runAndReset$$$capture(FutureTask.java:305)
	at java.base/java.util.concurrent.FutureTask.runAndReset(FutureTask.java)
	at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
	at java.base/java.lang.Thread.run(Thread.java:840)
2024-01-20 02:04:03 [timeoutChecker_2_1] INFO  i.s.c.r.n.NettyClientChannelManager
 - will connect to 172.18.0.1:8091
2024-01-20 02:04:03 [timeoutChecker_2_1] INFO  i.s.c.r.netty.RmNettyRemotingClient
 - RM will register :jdbc:mysql://10.211.55.9:3306/bchtx-cloud
2024-01-20 02:04:03 [timeoutChecker_2_1] INFO  i.s.c.rpc.netty.NettyPoolableFactory
 - NettyPool create channel to transactionRole:RMROLE,address:172.18.0.1:8091,msg:< RegisterRMRequest{resourceIds='jdbc:mysql://10.211.55.9:3306/bchtx-cloud', version='1.7.1', applicationId='bchtx-system', transactionServiceGroup='bchtx-system-group', extraData='null'} >
2024-01-20 02:04:13 [timeoutChecker_1_1] ERROR i.s.c.r.n.NettyClientChannelManager
 - 0304 register RM failed.

在这里插入图片描述

【解决】

在查看 Nacos 的服务列表信息中发现,Seata 服务端的 IP 与其他服务不在同一网段,而是处于 Docker 容器内部的网络中。

经过排查,确定是启动 Nacos 容器时漏加了 network_mode 参数,导致问题的产生。只要保证 Seata 服务端与其他服务在同一网段即可。

在这里插入图片描述

在这里插入图片描述

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编程洪同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值