k8s安装seata单机版

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: k8s安装seata单机版

1.初始seata数据库

wget  https://raw.githubusercontent.com/apache/incubator-seata/1.3.0/script/server/db/mysql.sql
mysql -uroot -p
CREATE DATABASE IF NOT EXISTS seata DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci;
use seata;
source  /root/mysql.sql;
CREATE USER 'seata'@'%' IDENTIFIED BY 'MXl#GX8hw0wEv!ID';
GRANT ALL PRIVILEGES ON seata.* TO 'seata'@'%';
FLUSH PRIVILEGES;
exit;

2.创建seata配置文件

registry.conf

apiVersion: v1
kind: ConfigMap
metadata:
  name: t1-zdbl-seata-server-registry-config
  namespace: t1-zdbl
data:
  registry.conf: |
    registry {
        type = "nacos"
        nacos {
          application = "seata-server"
          serverAddr = "t1-zdbl-nacos.t1-zdbl.svc.cluster.local:8848"
          group = "SEATA_GROUP"
          namespace = "seata"
          cluster = "default"
          username = "nacos"
          password = "m5LqrxYsD7N1F6Cb"
        }
    }
    config {
      type = "file"
      file {
            name = "file:/seata-server/resources/file.conf"
          }
    }

file.conf

apiVersion: v1
kind: ConfigMap
metadata:
  name: t1-zdbl-seata-server-file-config
  namespace: t1-zdbl
data:
  file.conf: |
    store {
        mode = "db"    
        db {
           datasource = "druid"
           dbType = "mysql"
           driverClassName = "com.mysql.cj.jdbc.Driver"
           url = "jdbc:mysql://t1-zdbl-mysql.t1-zdbl.svc.cluster.local:3306/t1_zdbl_seata?useUnicode=true&characterEncoding=UTF-8"
           user = "seata"
           password = "xxxxx"  #连接nacos的密码不能包含特殊字符,否则会报错,403无法注册
           minConn = 5
           maxConn = 100
           globalTable = "global_table"
           branchTable = "branch_table"
           lockTable = "lock_table"
           queryLimit = 100
           maxWait = 5000
        }
    }

3.创建部署文件

apiVersion: apps/v1
kind: Deployment
metadata:
  name: t1-zdbl-seata-server
  namespace: t1-zdbl
  labels:
    k8s-app: t1-zdbl-seata-server
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s-app: t1-zdbl-seata-server
  template:
    metadata:
      labels:
        k8s-app: t1-zdbl-seata-server
    spec:
      containers:
        - name: seata-server
          image: seataio/seata-server:1.3.0
          #command: ["/bin/sh","-c","sleep 3600000"]
          env:
            - name: SEATA_PORT
              value: "8091"
          ports:
            - name: http
              containerPort: 8091
              protocol: TCP
          volumeMounts:
          - mountPath: /seata-server/resources/file.conf
            name: seata-file-conf
            subPath: file.conf
          - mountPath: /seata-server/resources/registry.conf
            name: seata-register-conf
            subPath: registry.conf
      volumes:
      - name: seata-file-conf
        configMap:
          defaultMode: 420
          name: t1-zdbl-seata-server-file-config
      - name: seata-register-conf
        configMap:
          defaultMode: 420
          name: t1-zdbl-seata-server-registry-config

4.创建svc文件

apiVersion: v1
kind: Service
metadata:
  name: t1-zdbl-seata-server
  namespace: t1-zdbl
  labels:
    k8s-app: t1-zdbl-seata-server
spec:
  ports:
    - port: 8091
      targetPort: 8091
      protocol: TCP
      name: http
  selector:
    k8s-app: t1-zdbl-seata-server

初始化数据库后,应用以上文件即可

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
17天前
|
Kubernetes NoSQL Redis
k8s快速部署Redis单机
k8s快速部署Redis单机
|
17天前
|
Kubernetes 关系型数据库 MySQL
k8s快速部署MySQL单机
k8s快速部署MySQL单机
|
17天前
|
Kubernetes Nacos 数据库
k8s快速部署nacos单机版
k8s快速部署nacos单机版
|
3天前
|
Kubernetes 应用服务中间件 nginx
Kubernetes上安装Metallb和Ingress并部署应用程序
Kubernetes上安装Metallb和Ingress并部署nginx应用程序,使用LoadBalancer类型的KubernetesService
27 2
|
17天前
|
消息中间件 Kubernetes 容器
k8s安装rabbbitmq
k8s安装rabbbitmq
|
17天前
|
Kubernetes NoSQL MongoDB
k8s安装YAPI
k8s安装YAPI
|
17天前
|
Kubernetes 关系型数据库 MySQL
k8s安装并迁移jumpserver
k8s安装并迁移jumpserver
|
1月前
|
存储 Kubernetes 容器
Kubernetes(K8S) kubesphere 安装
Kubernetes(K8S) kubesphere 安装
50 4
|
1月前
|
Kubernetes Linux Docker
Kubernetes(K8S) helm 安装
Kubernetes(K8S) helm 安装
27 1
|
17天前
|
Kubernetes 调度 容器
k8s descheduler 组件安装
k8s descheduler 组件安装