Seata 2.x 系列【5】直接部署

有道无术,术尚可求,有术无道,止于术。

本系列Seata 版本 2.0.0

本系列Spring Boot 版本 3.2.0

本系列Spring Cloud 版本 2023.0.0

源码地址:https://gitee.com/pearl-organization/study-seata-demo

1. 概述

Seata包含TCTMRM三大角色,其中TMRM属于Seata Client端,由业务系统集成,TC属于Seata Server端,需要单独部署。

Seata Server支持多种方式部署:

  • 直接部署
  • Docker
  • Docker-Compose
  • Kubernetes
  • Helm

接下面我们先讲解如何单机部署Seata服务端,另外篇章再讲解业务系统集成Seata客户端。

2. 环境要求

以下是部署 Seata-Server 的最低环境要求:

项目 要求
JDK JDK 8 或更高版本
CPU 1 核及以上,支持 64 位的 CPU
内存 2G 及以上
硬盘 无最小要求,需要根据日志、存储模式等配置具体调整
系统 64 位的 Linux、Mac OS X、Windows

3. 直接部署

直接部署 是指下载压缩包进行部署。

3.1 下载

Github地址下载压缩包:
在这里插入图片描述

3.2 目录介绍

下载完成后,解压到任意目录:

在这里插入图片描述

3.2.1 bin

bin目录下包含了四个脚本:
在这里插入图片描述
各脚本说明如下:

  • seata-server.bat:用于Windows、Mac 系统启动、重启、停止
  • seata-server.sh:用于Linux 系统启动、重启、停止
  • seata-setup.sh:用于设置JVM参数
  • startup.sh:无内容的空文件
3.2.2 conf

conf目录下包含了日志服务端程序配置文件及示例:
在这里插入图片描述
logback目录提供了多种Logback日志事件输出组件配置示例,例如输出到控制台、文件、KafkaLogstashSeata Metric等:
在这里插入图片描述
其他文件说明如下:

  • application.example.ymlSeata服务端配置示例
  • application.raft.example.yml:使用Raft事务存储模式服务端配置示例
  • application.ymlSeata服务端配置
  • logback-spring.xmlLogback日志配置文件
3.2.3 ext

ext目录提供了SkyWalking(应用性能监控工具)用到的一些插件、Agent包:
在这里插入图片描述
apm-skywalking目录下:
在这里插入图片描述
plugins目录下:
在这里插入图片描述

3.2.4 lib

lib目录存放了Seata服务端程序用到的相关Jar依赖包:

在这里插入图片描述

3.2.5 logs

logs目录用于存放Seata服务端程序输出日志:
在这里插入图片描述

3.2.6 script

script目录存放了一些脚本:

  • config-center:配置中心
  • logstashLogstash日志处理
  • server:服务端相关

在这里插入图片描述

config-center提供了集成配置中心时,导入配置用的相关脚本:
在这里插入图片描述
提供了日志收集处理时,使用logstash的相关配置示例:

在这里插入图片描述

server目录:

  • db:服务端使用数据库会话存储模式时的建表SQL脚本
  • docker-compose:使用docker-compose部署时的yml文件
  • helm:使用Helm部署时的yml文件
  • kubernetes:使用Kubernetes部署时的yml文件

在这里插入图片描述

3.2.7 target

target目录存放了Seata服务端jar包:

在这里插入图片描述

3.2.8 Dockerfile

DockerfileSeata服务端构建Docker镜像时用到的文件:

在这里插入图片描述

3.2.9 LICENSE

LICENSESeata声明的开源协议文件,可以看到使用的是Apache 2.0

在这里插入图片描述

3.3 启动

使用脚本直接启动即可。

Linux/Mac 下:

$ sh ./bin/seata-server.sh

Windows 下:

bin\seata-server.bat

支持的启动参数:

参数 全写 作用 备注
-h –host 指定在注册中心注册的 IP 不指定时获取当前的 IP,外部访问部署在云环境和容器中的 server 建议指定
-p –port 指定 server 启动的端口 默认为 8091
-m –storeMode 事务日志存储方式 支持file,db,redis,默认为 file 注:redis需seata-server 1.3版本及以上
-n –serverNode 用于指定seata-server节点ID 如 1,2,3…, 默认为 1
-e –seataEnv 指定 seata-server 运行环境 如 dev, test 等, 服务启动时会使用 registry-dev.conf 这样的配置

示例:

$ sh ./bin/seata-server.sh -p 8091 -h 127.0.0.1 -m file

启动完成后,日志中可以看到控制台的访问端口为7091,服务端通信端口为8091

在这里插入图片描述
访问http://localhost:7091/,使用seata/seata登录后,成功进入到控制台,部署成功:

在这里插入图片描述

相关推荐

  1. Jackson 2.x 系列5】注解大全篇一

    2024-03-11 16:00:04       49 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-11 16:00:04       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-11 16:00:04       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-11 16:00:04       82 阅读
  4. Python语言-面向对象

    2024-03-11 16:00:04       91 阅读

热门阅读

  1. web3 DePIN赛道之OORT

    2024-03-11 16:00:04       40 阅读
  2. TCP/IP超全笔记 - TCP篇

    2024-03-11 16:00:04       42 阅读
  3. Django——路由

    2024-03-11 16:00:04       47 阅读
  4. 嵌入式学习day33

    2024-03-11 16:00:04       41 阅读
  5. 前端安全方面

    2024-03-11 16:00:04       46 阅读
  6. 列表解析扩展使用

    2024-03-11 16:00:04       44 阅读
  7. nginx配置缓存静态资源

    2024-03-11 16:00:04       44 阅读
  8. c++ vector使用

    2024-03-11 16:00:04       47 阅读
  9. python中的错误和异常

    2024-03-11 16:00:04       36 阅读
  10. 网络安全风险评估:详尽百项清单要点

    2024-03-11 16:00:04       41 阅读
  11. C++中的常量指针和指针常量

    2024-03-11 16:00:04       43 阅读
  12. 自动化运维工具----Ansible入门详解

    2024-03-11 16:00:04       43 阅读
  13. multiprocessing快速入门和总结

    2024-03-11 16:00:04       35 阅读
  14. 突破编程_C++_STL教程( map 的基础知识)

    2024-03-11 16:00:04       27 阅读