Seata版本1.4.2
can not get cluster name in registry config ‘service.vgroupMapping.default_tx_group’, please make sure registry config correct
确保在nacos中seata空的配置列表中存在 service.vgroupMapping.default_tx_group
如果不存在可以自行添加:
保险起见可以将 service.vgroupMapping.default_tx_group
和service.vgroupMapping.my_test_tx_group
都添加上,值都是default
因为在没有做出特别配置情况下,seata默认情况下两个文件
原因是客户端的yml配置和seata服务的配置信息不一致导致
下图是正确的配置:
# seata配置
seata:
# Seata 事务组编号,用于 TC 集群名
tx-service-group: default_tx_group
service:
vgroup-mapping:
default_tx_group: default
config:
type: nacos
nacos:
serverAddr: 172.19.113.220:8848
group: SEATA_GROUP
namespace: 9901bfad-77eb-4de9-8396-13338b1f378d
registry:
type: nacos
nacos:
server-addr: 172.19.113.220:8848
application: seata-server
group: SEATA_GROUP
namespace: 9901bfad-77eb-4de9-8396-13338b1f378d
接下说一下客户端的参数和服务的参数对应关系:
服务A的Yaml配置:
# seata配置
seata:
# Seata 事务组编号,用于 TC 集群名
tx-service-group: default_tx_group
service:
vgroup-mapping:
default_tx_group: default
Nacos中Seata的seataServer.properties配置:
#Transaction routing rules configuration, only for the client
service.vgroupMapping.default_tx_group=default
#If you use a registry, you can ignore it
service.default.grouplist=127.0.0.1:8091
service.enableDegrade=false
service.disableGlobalTransaction=false
yaml中default_tx_group要和seataServer.properties中的service.vgroupMapping.default_tx_group一致
seataServer.properties 这个配置文件怎么来的可以参考seata服务搭建文章有介绍,传送门:
https://blog.csdn.net/qq_33776323/article/details/135115849?spm=1001.2014.3001.5502
以上配置完之后重启服务,如果报以下异常则需要在进行配置:
no available service found in cluster ‘default’, please make sure registry config correct and keep your seata server running
出现以上错误,则需要在客户端的yaml配置中添加上参数:
namespace: 9901bfad-77eb-4de9-8396-13338b1f378d
namespace: 9901bfad-77eb-4de9-8396-13338b1f378d
附上完整的yaml配置:
# seata配置
seata:
# Seata 事务组编号,用于 TC 集群名
tx-service-group: default_tx_group
service:
vgroup-mapping:
default_tx_group: default
config:
type: nacos
nacos:
serverAddr: 172.19.113.220:8848
group: SEATA_GROUP
namespace: 9901bfad-77eb-4de9-8396-13338b1f378d
registry:
type: nacos
nacos:
server-addr: 172.19.113.220:8848
application: seata-server
group: SEATA_GROUP
namespace: 9901bfad-77eb-4de9-8396-13338b1f378d