1. 准备介质
seata-server-1.5.2.tar.gz
2. 解压
tar-xzvf seata-server-1.5.2.tar.gz
3. 创建数据库
数据库脚本位置:seata/script/server/db
4. 修改配置文件
bin目录 ---> 运行脚本
conf目录 ---> 配置文件
lib目录 ---> 依赖库
logs目录 ---> 日志文件
打开conf配置文件目录,打开application.yml
和application.example.yml
文件,参考application.example.yml
文件,修改application.yml
配置文件内容。
config
:读取TC服务端的配置文件的方式registry
:TC服务的注册中心类型store
:存储的方式,db为数据库
本次部署注册中心采用nacos,配置文件参考如下:
server:
port: 7091
spring:
application:
name: seata-server
logging:
config: classpath:logback-spring.xml
file:
path: /cib/ctmp/logs/seata
extend:
logstash-appender:
destination: 127.0.0.1:4560
kafka-appender:
bootstrap-servers: 127.0.0.1:9092
topic: logback_to_logstash
console:
user:
username: seata
password: seata
seata:
config:
# support: nacos, consul, apollo, zk, etcd3
type: nacos
nacos:
server-addr: 10.1.192.126:8845,10.1.192.127:8848,10.1.192.127:8845
namespace:
group: SEATA_GROUP
username: nacos
password: nacos
##if use MSE Nacos with auth, mutex with username/password attribute
#access-key: ""
#secret-key: ""
data-id: seataServer.properties
registry:
# support: nacos, eureka, redis, zk, consul, etcd3, sofa
type: nacos
preferred-networks: 30.240.*
nacos:
application: seata-server
server-addr: 10.1.192.126:8845,10.1.192.127:8848,10.1.192.127:8845
group: DEFAULT_GROUP
namespace:
cluster: CD
username: nacos
password: nacos
##if use MSE Nacos with auth, mutex with username/password attribute
#access-key: ""
#secret-key: ""
store:
# support: file 、 db 、 redis
mode: db
db:
datasource: druid
db-type: mysql
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://10.1.186.179:3306/seata1308?rewriteBatchedStatements=true
user: root
password:
min-conn: 5
max-conn: 100
global-table: global_table
branch-table: branch_table
lock-table: lock_table
distributed-lock-table: distributed_lock
query-limit: 100
max-wait: 5000
# server:
# service-port: 8091 #If not configured, the default is '${server.port} + 1000'
security:
secretKey: SeataSecretKey0c382ef121d778043159209298fd40bf3850a017
tokenValidityInMilliseconds: 1800000
ignore:
urls: /,//*.css,//.js,/**/.html,//*.map,//.svg,/**/.png,//*.ico,/console-fe/public/,/api/v1/auth/login
5. 在nacos添加配置
具体配置参考如下:
store.mode=db
store.db.datasource=druid
store.db.dbType=mysql
store.db.driverClassName=com.mysql.jdbc.Driver
store.db.url=jdbc:mysql://10.1.186.179:3306/seata1308?rewriteBatchedStatements=true
store.db.user=root
store.db.password=*****
store.db.minConn=5
store.db.maxConn=100
store.db.globalTable=global_table
store.db.branchTable=branch_table
store.db.lockTable=lock_table
store.db.distributedLockTable=distributed_lock
store.db.queryLimit=100
store.db.maxWait=5000
server.servicePort=8091
server.maxCommitRetryTimeout=-1
server.maxRollbackRetryTimeout=-1
server.rollbackRetryTimeoutUnlockEnable=false
server.enableCheckAuth=true
server.enableParallelRequestHandle=true
server.retryDeadThreshold=130000
server.xaerNotaRetryTimeout=60000
server.recovery.handleAllSessionPeriod=1000
server.recovery.committingRetryPeriod=3000
server.recovery.asynCommittingRetryPeriod=3000
server.recovery.rollbackingRetryPeriod=3000
server.recovery.timeoutRetryPeriod=3000
server.undo.logSaveDays=7
server.undo.logDeletePeriod=86400000
server.session.branchAsyncQueueSize=5000
server.session.enableBranchAsyncRemove=false
transport.serialization=seata
transport.compressor=none
transport.rpcTcRequestTimeout=30000
transport.enableTcServerBatchSendResponse=false
transport.shutdown.wait=3
transport.threadFactory.bossThreadPrefix=NettyBoss
transport.threadFactory.workerThreadPrefix=NettyServerNIOWorker
transport.threadFactory.bossThreadSize=1
metrics.enabled=false
metrics.registryType=compact
metrics.exporterList=prometheus
metrics.exporterPrometheusPort=9898
6. 启动
# 进入bin目录
./seata-server.sh
7. 验证
8.高可用
高可用配置,增加配置seata实例数即可。