本文最后更新于0 天前,其中的信息可能已经过时,如有错误请发送邮件到big_fw@foxmail.com
备份方式说明
- 备份工具是基于mydumper完成,mydumper支持多线程备份,可以提高逻辑备份的效率
- 备份触发方式是通过k8s的cronjob实现
- 支持本地存储和上传S3
部署文件参考
apiVersion: batch/v1beta1
kind: CronJob
metadata:
name: mydumper
spec:
concurrencyPolicy: Allow
failedJobsHistoryLimit: 1
jobTemplate:
metadata:
creationTimestamp: null
spec:
activeDeadlineSeconds: 7200
backoffLimit: 3
completions: 1
parallelism: 1
template:
spec:
containers:
- env:
# 指定环境名称,用于告警
- name: ENV_NAME
value: sjsk-prod
# 指定mysql实例名称,当环境中存在多个mysql个实例时,用于区分
- name: MYSQL_NAME
value: geip
# 指定mysql用户名
- name: MYSQL_USER
value: root
# 指定mysql端口
- name: MYSQL_PORT
value: "3306"
# 指定mysql链接地址
- name: MYSQL_HOST
value: ha-cluster-mysql-0.mysql.public-service
# 指定mysql密码
- name: MYSQL_PASSWD
value: h4D!P4hV^Lo#jHdr
# 指定mysql备份时,本地保存数量
- name: MYSQL_SAVE_NUM
value: "3"
# 企微告警机器人token
- name: WX_TOKEN
value: 5159f03a-85c4-47db-9fda-038560052f34
# 企微@人员, 域账号即可
- name: MENTION_USER
value: chenf-o
# 是否开启压缩
- name: IS_COMPRESS
value: "true"
# 指定存储方式,可选:minio, local, oss
- name: STORAGE_TYPE
value: minio
# 指定S3的ak
- name: S3_ACCESS_KEY
value: AKIDXuwe13k8JAhuo44j68pIbaKUNwA4cuv1
# 指定s3的sk
- name: S3_SECRET_KEY
value: yiBK9friFRIp1siHZXATS7S9ckY19xQZ
# 指定s3的endpoint
- name: S3_ENDPOINT
value: http://minio-nfs.public-service:9000
# 指定s3的bucket, 需要创建
- name: S3_BUCKET
value: backup
# 指定备份时的并发数
- name: BACKUP_PARALLEL
value: "6"
- name: CPU_LIMIT
valueFrom:
resourceFieldRef:
containerName: mydumper
divisor: "0"
resource: limits.cpu
image: registry.cn-beijing.aliyuncs.com/gldsg-prod/mydumper:v1.2-20221108
imagePullPolicy: IfNotPresent
name: mydumper
resources:
limits:
cpu: 4
securityContext:
capabilities: {}
volumeMounts:
- mountPath: /data/mysql/
name: mysql-data
- mountPath: /etc/localtime
name: time
dnsPolicy: ClusterFirst
imagePullSecrets:
- name: cloud-reg
restartPolicy: Never
schedulerName: default-scheduler
securityContext:
runAsUser: 0
terminationGracePeriodSeconds: 30
volumes:
- hostPath:
path: /data/mysqlBackup
type: DirectoryOrCreate
name: mysql-data
- hostPath:
path: /etc/localtime
type: ""
name: time
schedule: 15 00 * * *
successfulJobsHistoryLimit: 3
suspend: false

