Etcd3 配置中心

Etcd3 是 Seata 组件中重要的配置中心实现.

预备工作

当您将Etcd3整合到您的 Seata工程之前,请确保后台已经启动 Etcd3 Server服务。如果您尚且不熟悉 Etcd3的基本使用的话,可先行参考 Etcd3快速入门。建议使用 Etcd3 3.5.0 及以上的版本。

快速上手

Seata 融合 Etcd3 注册中心的操作步骤非常简单,大致步骤可分为“增加 Maven 依赖”以及“配置注册中心“。

增加 Maven 依赖

首先,您需要将 jetcd-core 的 Maven 依赖添加到您的项目 pom.xml 文件中,建议使用 jetcd-core 0.3.0+,spring-cloud-starter-alibaba-seata的版本与对应微服务版本对应关系请参考版本说明

  1. <dependency>
  2. <groupId>io.seata</groupId>
  3. <artifactId>seata-spring-boot-starter</artifactId>
  4. <version>最新版</version>
  5. </dependency>
  6. <!-- Etcd3 客户端依赖 -->
  7. <dependency>
  8. <groupId>io.etcd</groupId>
  9. <artifactId>jetcd-core</artifactId>
  10. <version>0.3.0及以上</version>
  11. </dependency>

Client端配置中心

application.yml 中加入对应的配置中心,其余配置参考

  1. seata:
  2. config:
  3. type: etcd3
  4. etcd3:
  5. server-addr: http://localhost:2379

Server端配置中心

registry.conf 中加入对应配置中心,其余配置参考

  1. config {
  2. type = "etcd3"
  3. etcd3 {
  4. serverAddr = "http://localhost:2379"
  5. }
  6. }

上传配置至Etcd3配置中心

通过脚本上传配置到Etcd3

参考https://github.com/seata/seata/tree/develop/script/config-center 的config.txt并修改,之后运行仓库中提供的etcd3脚本,将信息提交到Etcd3服务端,如果有需要更改,可直接通过控制台更改.

eg: sh ${SEATAPATH}/script/config-center/etcd3/etcd3-config.sh -h localhost -p 2379

详细解析参考 Readme文档

随后,启动 Seata-Server 和 Client(业务侧)应用,如果在导入配置至Etcd3前,已启动Seata-Server 和Client(业务侧)应用需要进行重启。