Seata服务端搭建(nacos)

Seata服务集成nacos,下面主要讲解window环境下Seata采用nacos完成配置和服务注册。

一.前提条件

Seata服务端jar包,本demo采用的是seata-server-1.4.0;(官网地址:seata-1.4.0)

nacos服务端采用nacos-1.1.4;(官网地址:nacos,这里不做nacos的讲解,用本地已经搭建好的服务)

需要python环境,window下需要安装python(便于seata推送配置到nacos,官网地址:python-3.9.0);

二. Seata配置修改

Seata包下载后解压,找到对应的conf文件夹,如下图

conf文件夹

本demo咱们采用db的模式,所以咱们可以删除掉file.conf,打开文件README-zh.md,可以找到对应配置的地址:

seata服务端需要的sql脚本地址:服务端mysql建表,本demo采用mysql数据库

需要的config.txt配置文件地址:config地址,并选择nacos文件夹中的nacos-config.py,并把两个文件拷贝到seata中的conf文件夹中,如下图:

conf文件夹

接下来先创建db,打开上述的地址拷贝sql,并在mysql新建数据库seata执行sql,如下图:

Seata服务端数据库

数据库表建好后,剩下就是修改配置文件,第一个需要修改的配置文件registry.conf,本demo采用nacos(采用nacos,只需要保留nacos配置就可以),修改后的文件是:

注意:其中的namespace是nacos里面需要优先配置好的命名空间(后面推送配置到nacos需要用到)

第二个需要修改的config.txt文件:修改的文件如下(重要的修改用红色标注):

config.txt修改

三.Seata配置手动推送到nacos

Seata服务端启动不会主动推送config.txt配置到nacos,需要手动进行推送,本地是window系统,需要python脚本进行推送.

进入命令行,切换到Seata服务的conf目录,并执行如下命令:

python nacos-config.py nacos的ip地址:端口 df2011b0-ed94-4fd2-9a33-baa6f97f5af5

如下:出现init nacos config finished, please start seata-server. 表示推送成功:如下图


推送成功后

推送成功后,查询nacos中的配置如下:

可能出现的问题:

   1.官网这里给的命令是 python nacos-config.py nacosAddr,会有如下错误:

python nacos-config.py nacosAddr, 需要后面新增一个命名空间的uuid

    2.执行正确命令,可能有如下错误。

FileNotFoundError: [Errno 2] No such file or directory: '../config.txt',找不到配置文件。因为nacos-config.py和config.txt在同目录,所以找不到,“../config.txt”需要改为“./config.txt”;

四.启动Seata服务

启动Seata服务,Window服务可以直接点击根目录bin下的seata-server.bat,或者进入到命令行,启动seata-server.bat,推荐使用第二种(方便闪退后查看错误信息);

你可能感兴趣的:(Seata服务端搭建(nacos))