天下風雲出我輩
一入江湖歲月催

k8s部署Yearning SQL审核平台

Yearning MYSQL SQL语句审核平台。提供查询审计,SQL审核等多种功能

Mysql安装

mysql 版本必须5.7及以上版本,请事先自行安装完毕且创建 Yearning 库,字符集应为 UTF8mb4 (仅 Yearning 所需 mysql 版本)

参考: 安装Mysql

Yearning 镜像构建

Yearning-go 提供二进制下载包

下载地址 https://github.com/cookieY/Yearning/releases

下载二进制包, 使用自带的dockerfile构建镜像,作者dockerfile中安装源3.1.2写错了需要改成3.12的,否则会构建失败。

更改conf.toml

SecretKey 是 token/数据库密码加密/解密的 salt。

建议所有用户在初次安装 Yearning 之前将 SecretKey 更改(不更改将存在安全风险)

格式: 大小写字母均可, 长度必须为 16 位 如长度不是16位将会导致无法新建数据源

特别注意:

此 key 仅可在初次安装时更改!之后不可再次更改!如再次更改会导致之前已存放的数据源密码无法解密,最终导致无法获取相关数据源信息

[General]   #数据库加解密key,只可更改一次。
SecretKey = "dbcjqheupqjsuwsm"

构建并推送镜像仓库

# 构建镜像
docker build -t anonym0x1/yearning:2.2.2 .

# 推送
docker push anonym0x1/yearning:2.2.2

K8S部署yaml

---
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: yearning
  name: yearning
  namespace: prd
spec:
  progressDeadlineSeconds: 600
  replicas: 1
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: yearning
  strategy:
    rollingUpdate:
      maxSurge: 25%
      maxUnavailable: 25%
    type: RollingUpdate
  template:
    metadata:
      labels:
        app: yearning
    spec:
      containers:
        - env:
            - name: MYSQL_ADDR
              value: '192.168.0.2:3306'
            - name: MYSQL_USER
              value: root
            - name: MYSQL_PASSWORD
              value: Mysqlpasswd
            - name: MYSQL_DB
              value: Yearning
          image: 'anonym0x1/yearning:2.2.2'
          imagePullPolicy: IfNotPresent
          name: yearning
          ports:
            - containerPort: 8000
              name: yearning
              protocol: TCP
          resources:
            limits:
              cpu: '1'
              memory: 2Gi
            requests:
              cpu: 500m
              memory: 500Mi
      restartPolicy: Always
      schedulerName: default-scheduler
      terminationGracePeriodSeconds: 30

---
apiVersion: v1
kind: Service
metadata:
  labels:
    app: yearning
  name: yearning
  namespace: prd
spec:
  ports:
    - name: http-8000
      nodePort: 38000
      port: 8000
      protocol: TCP
      targetPort: 8000
  selector:
    app: yearning
  sessionAffinity: None
  type: NodePort

使用env 变量注入参数,程序启动会先读。再使用Nodeport暴露控台地址

登录后台

浏览器: http://节点ip: 38000

默认账号/密码:admin/Yearning_admin

Yearning-dash

官方网址

参考文档

赞(1) 打赏
未经允许不得转载:Anonym0x1 » k8s部署Yearning SQL审核平台

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏