k8s上部署seata-server集群并注册到nacos上
创始人
2024-01-13 03:31:22

部署前准备

第一步:

创建seata-server需要的表,有现成的阿里云RDS,就直接在RDS上创建数据库了,方便后面统一管理。
具体的 SQL 参考script/server/db ,这里使用的是 MySQL 的脚本,数据库名称为 seata,还需要创建undo_log 表, 可以参考script/client/at/db/

第二步:

  • 修改seata-server配置

将以下配置保存为config.txt

service.vgroupMapping.my_test_tx_group=default
store.mode=db
store.db.datasource=druid
store.db.dbType=mysql
store.db.driverClassName=com.mysql.jdbc.Driver
store.db.url=jdbc:mysql://xxx.mysql.rds.aliyuncs.com/seata?useUnicode=true
store.db.user=数据库的用户
store.db.password=数据库的密码
  • 创建nacos目录,将nacos-config.sh存放到nacos目录,层级结构如上,执行shell脚本,将配置导入Nacos配置中心,具体添加方法可以参考script/config-center

  • 执行shell

sh ./nacos/nacos-config.sh -h xx.xx.xx.xx -p 8848 -g SEATA_GROUP -u username -w password
参数说明:
-h: Nacos主机地址,默认是localhost
-p: Nacos主机端口,默认是8848
-g: 配置分组, the default value is 'SEATA_GROUP'.
-t: 租户信息, 与Nacos的 "命名空间ID" 字段相对应, the default value is ''.
-u: Nacos用户名, the default value is ''.
-w: Nacos密码, the default value is ''.

由于执行上面的shell脚本这种方式在nacos会生成一堆配置信息,看着比较乱,修改seata-server这步可以换成在nacos的配置管理-配置列表里导入配置
在这里插入图片描述
在这里插入图片描述
Data ID:xx-seata.yaml
Group: DEFAULT_GROUP
配置内容:

# Seata配置
seata:# 默认关闭enabled: true# Seata 应用编号application-id: ${spring.application.name}# Seata 事务组编号,用于 TC 集群名 default_tx_grouptx-service-group: ${spring.application.name}-group#  # 关闭自动代理enable-auto-data-source-proxy: false# 服务配置项
#  service:
#    # 虚拟组和分组的映射
#    vgroup-mapping:
#      test-platform-layer-group: defaultconfig:type: nacosnacos:server-addr: ${spring.cloud.nacos.config.server-addr}group: SEATA_GROUPnamespace: ${spring.profiles.active}data-id: xxx-seata-server.propertiesusername: ${spring.cloud.nacos.username}password: ${spring.cloud.nacos.password}registry:type: nacosnacos:application: ${spring.application.name}-seataserver-addr: ${spring.cloud.nacos.config.server-addr}group: SEATA_GROUPnamespace: ${spring.profiles.active}username: ${spring.cloud.nacos.username}password: ${spring.cloud.nacos.password}

部署 seata-server 到 Kubernetes

由于新版本里启动配置文件把registry.conf和file.conf去掉了,现在新版本默认的配置文件只用到了application.yml文件,所以需要把application.yml文件挂载到seata-server 服务里的/seata-server/resources/目录下,替换掉服务默认的application.yml文件。
需要将application.yml从宿主机挂载到pod内,部署的全部yaml文件如下:

apiVersion: v1
kind: Service
metadata:name: seata-ha-servernamespace: defaultlabels:app.kubernetes.io/name: seata-ha-server
spec:type: NodePortports:- port: 8091protocol: TCPtargetPort: 8091name: httpselector:app.kubernetes.io/name: seata-ha-server---
apiVersion: apps/v1
kind: StatefulSet
metadata:name: seata-ha-servernamespace: defaultlabels:app.kubernetes.io/name: seata-ha-server
spec:serviceName: seata-ha-serverreplicas: 3selector:matchLabels:app.kubernetes.io/name: seata-ha-servertemplate:metadata:labels:app.kubernetes.io/name: seata-ha-serverspec:nodeSelector: app: seatacontainers:- name: seata-ha-serverimage: seataio/seata-server:1.5.2imagePullPolicy: IfNotPresentvolumeMounts: - mountPath: /seata-server/resources/application.ymlname: seata-ha-server-configports:- name: httpcontainerPort: 8091hostPort: 8091protocol: TCPvolumes:- name: seata-ha-server-confighostPath:path: /root/seata/application.ymltype: File

kubectl create -f seata-server.yaml

部署完以后,seata-server服务会注册到nacos上
在这里插入图片描述

相关内容

热门资讯

demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
阿西吧是什么意思 阿西吧相当于... 即使你没有受到过任何外语培训,你也懂四国语言。汉语:你好英语:Shit韩语:阿西吧(아,씨발! )日...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
阿西吧是什么意思 阿西吧相当于... 即使你没有受到过任何外语培训,你也懂四国语言。汉语:你好英语:Shit韩语:阿西吧(아,씨발! )日...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...