centos7 linux下 搭建 seata服务 (分布式事务)1.3.0版本

89 阅读4分钟

Seata 服务端搭建流程

  1. 相关组件下载

部署指南:seata.io/zh-cn/docs/…

下载包: github.com/seata/seata…

建表语句:github.com/seata/seata…

资源目录:github.com/seata/seata…

2.db模式搭建seata-server服务端

Server端存储模式支持三种:

file:单机模式。全局事务会话信息内存中读写并持久化本地文件root.data,性能较高(默认)

db:(5.7+)高可用模式。全局事务会话信息通过db共享,相应性能差些

redis:Seate-Server1.3及以上版本支持,性能较高,存在事务信息丢失的风险,请提前配置适合当前场景的redis持久化配置

2.1 db-nacos部署seata-server服务端

上传seata-server-1.3.0.tar.gz和script脚本到Linux服务器

下载script脚本,上传到Linux服务器

在MYSQL数据库创建SQL脚本文件,脚本地址【github.com/seata/seata…

1.下载script脚本步骤如下:

1.png

打开github.com/seata/seata… 下载

解压seata-1.3.0.zip文件夹,找到script文件夹,也上传到Linux服务器

2.png

如下图,将2个文件上传到了Linux服务器

在这里插入图片描述

2.创建SQL脚本,完成后,如下图所示

3.png

修改相关配置文件如下

1.解压seata-server-1.3.0.tar.gz文件,添加script脚本目录文件

解压命令

[root@VM-12-6-centos software]# tar -zxvf seata-server-1.3.0.tar.gz -C /usr/local

cd到/usr/local 重名seata文件

[root@VM-12-6-centos local]# mv seata seata-1.3.0

复制script目录 到/usr/local/seata-1.3.0 目录中中

[root@VM-12-6-centos software]# cp -r script /usr/local/seata-1.3.0

4.png

2.修改file.conf文件,修改成db模式,配置mysql数据源

file.conf文件位置

/usr/local/seata-1.3.0/conf

5.png

编辑file.conf文件

[root@VM-12-6-centos conf]# vim file.conf

修改内容如下

seata-server服务端的存储模式为:db模式

6.png

配置mySQL的连接数据源

7.png

编辑完后,保存文件

ESC键, :wq! 退出文件

3.修改registry.conf文件,配置nacos注册中心和nacos配置中心

registry.conf文件位置

/usr/local/seata-1.3.0/conf

8.png

编辑registry.conf文件

[root@VM-12-6-centos conf]# vim registry.conf

修改registry.conf文件的registry配置模式为nacos并配置nacos连接

9.png

修改registry.conf文件的config配置模式为nacos

10.png

保存修改后的文件并退出。

 :wq!

4.修改script目录下的config.txt配置文件,方便启动seata-server时自动注册到nacos服务的seata-test配置空间中

script目录下的config.txt文件的位置

/usr/local/seata-1.3.0/script/config-center

11.png

编辑config.txt文件

[root@VM-12-6-centos config-center]# vim config.txt

修改存储模式为db,修改mysql的连接数据源

12.png

配置事务分组,要与客户端配置的事务分组一致

红色框中的参数可以自定义

绿色框中的zzyProject 必须要等于/usr/local/seata-1.3.0/conf/registry.conf文件中cluster = “zzyProject”

13.png

保存修改后的文件并退出。

 :wq!

5.运行nacos-config.sh命令,将config.txt文件注册到nacos的配置中心命令

nacos-config.sh文件位置

/usr/local/seata-1.3.0/script/config-center/nacos

14.png

将config.txt文件注册到nacos的配置中心 命令

sh nacos-config.sh -h 1xx.2xx.xx.1xx -p 8847 -g SEATA_GROUP -t 28d63442-4342-4417-9174-68c7819a21e6

参数说明:

-h: host,默认值loaclhost,nacos服务注册中心的IP地址

-p:port,默认值8848

-g:配置分组,默认值为SEATA_GROUP

-t:租户信息,对应nacos的命名空间ID字段,默认值为空

运行上述命令后,如下图所示

15.png

来到nacos注册中心,在seata-test空间中,发现上面config.txt文件中的属性信息全部配置到了nacos中。如果实际开发中用不到config.txt文件中的一些属性,完全可以在config.txt文件中删除掉

16.png

6.运行seata服务端文件seata-server.sh。seata服务端的默认端口为8091

seata服务端文件seata-server.sh的位置

/usr/local/seata-1.3.0/bin

17.png

运行seata-server.sh文件的命令

1xx.2xx.2x.1xx 指的时nacos服务注册中心的IP地址

./seata-server.sh -h 1xx.2xx.2x.1xx -p 8091

启动成功后,去naocs注册中心,可以看到seata-server服务

18.png

集群启动模式:

bin/seata-server.sh -p 8091 -n 1
bin/seata-server.sh -p 8092 -n 2
bin/seata-server.sh -p 8093 -n 3

bin/seata-server.sh -h 1xx.2xx.2x.1xx -p 8091 -m db -n 1 -e prod

其他参数说明

参数 全写 作用 备注

-h –host 指定在注册中心注册的IP 指定定时获取当前的IP,外部访问部署在云环境和容器中的server,建议指定

-p –port 指定server启动的端口 默认为8091

-m –storeMode 事务日志存储方式 支持file,db,redis,默认为file,注:redis需seata-server1.3版本以上

-n –serverNode 用于指定seata-server节点ID 如1,2,3,…,默认为1

-e –seataEnv 指定seata-server运行环境 如dev,prod,test等,服务启动时会使用registry-dev.conf这样的配置

后台运行的方式启动

nohup sh seata-server.sh -h 192.168.233.134 -p 8091 >/dev/log/seata.log 2>&1 &