apiVersion: batch/v1
kind: CronJob
metadata:
annotations: {}
labels:
app/name: mysql-backup-arm
name: mysql-backup-arm
namespace: sre
spec:
concurrencyPolicy: Forbid
failedJobsHistoryLimit: 1
jobTemplate:
metadata:
creationTimestamp: null
labels:
app/name: mysql-backup-arm
spec:
template:
metadata:
creationTimestamp: null
spec:
containers:
- command:
- /bin/sh
- '-c'
- >
set -ex
mysqldump --host=$MYSQL_HOST --user=$MYSQL_BACKUP_USER
--password=$MYSQL_BACKUP_USER_PASSWORD --routines
--databases $MYSQL_DB --single-transaction >
/mysql-backup/mysql-$MYSQL_DB-`date +"%Y%m%d%H%M%S"`.sql &&
tar zcvf /mysql-backup/mysql-$MYSQL_DB-`date
+"%Y%m%d%H%M%S"`.tgz /mysql-backup/*.sql && rm -rf
/mysql-backup/*$MYSQL_DB*.sql
env:
- name: MYSQL_BACKUP_USER
value: root
- name: MYSQL_BACKUP_USER_PASSWORD
value: 123456
- name: MYSQL_HOST
value: mysql
- name: MYSQL_DB
value: ginBase
image: 'biarms/mysql:5.7.30-linux-arm64v8'
imagePullPolicy: IfNotPresent
name: mysql-backup-arm
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
volumeMounts:
- mountPath: /mysql-backup
name: mysql-backup
dnsPolicy: ClusterFirst
restartPolicy: Never
schedulerName: default-scheduler
securityContext: {}
terminationGracePeriodSeconds: 30
volumes:
- hostPath:
path: /backup/mysql-arm
type: Directory
name: mysql-backup
ttlSecondsAfterFinished: 86400
schedule: 0 2 * * *
successfulJobsHistoryLimit: 3
suspend: false