93 lines
2.7 KiB
YAML
93 lines
2.7 KiB
YAML
apiVersion: argoproj.io/v1alpha1
|
|
kind: CronWorkflow
|
|
metadata:
|
|
name: db-backup-cron
|
|
spec:
|
|
schedule: "0 5 * * *"
|
|
timezone: "Asia/Seoul"
|
|
workflowSpec:
|
|
entrypoint: db-backup
|
|
templates:
|
|
- name: db-backup
|
|
container:
|
|
image: nexus2.exem-oss.org/dsk-middleware-backup:v3.0
|
|
command: ["sh", "-c"]
|
|
args:
|
|
- |
|
|
# SSH 키를 파일로 저장
|
|
echo -n "$SSH_KEY" > /tmp/id_rsa
|
|
chmod 600 /tmp/id_rsa
|
|
cat /tmp/id_rsa
|
|
# SSH 터널링 설정
|
|
|
|
ssh -i /tmp/id_rsa -fN -L $MONGO_MANIFEST_PORT:$MASTER_HOST:$MONGO_MANIFEST_PORT dev2@bastion.kr.datasaker.io -o StrictHostKeyChecking=no &
|
|
ssh -i /tmp/id_rsa -fN -L $MONGO_DSK_PORT:$MASTER_HOST:$MONGO_DSK_PORT dev2@bastion.kr.datasaker.io -o StrictHostKeyChecking=no &
|
|
ssh -i /tmp/id_rsa -fN -L $POSTGRES_PORT:$MASTER_HOST:$POSTGRES_PORT dev2@bastion.kr.datasaker.io -o StrictHostKeyChecking=no &
|
|
chmod +x /backup.sh
|
|
/backup.sh
|
|
env:
|
|
- name: SSH_KEY
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: bastion-ssh-key
|
|
key: ssh-key
|
|
- name: sh_debug
|
|
value: ''
|
|
- name: MASTER_HOST
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: db-creds
|
|
key: master_host
|
|
- name: MONGO_MANIFEST_PORT
|
|
value: '30111'
|
|
- name: MONGO_DSK_PORT
|
|
value: '30112'
|
|
- name: MONGO_USERNAME
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: db-creds
|
|
key: mongo_username
|
|
- name: MONGO_PASSWORD
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: db-creds
|
|
key: mongo_password
|
|
- name: POSTGRES_PORT
|
|
value: '32098'
|
|
- name: POSTGRES_USERNAME
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: db-creds
|
|
key: postgres_username
|
|
- name: POSTGRES_PASSWORD
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: db-creds
|
|
key: postgres_password
|
|
- name: S3_BUCKET
|
|
value: 'dsk-middleware-backup'
|
|
- name: sse
|
|
value: 'aws:kms'
|
|
- name: AWS_DEFAULT_REGION
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: aws-creds
|
|
key: AWS_REGION
|
|
- name: AWS_ACCESS_KEY_ID
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: aws-creds
|
|
key: AWS_ACCESS_KEY_ID
|
|
- name: AWS_SECRET_ACCESS_KEY
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: aws-creds
|
|
key: AWS_SECRET_ACCESS_KEY
|
|
- name: kms_arn
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: aws-creds
|
|
key: KMS_ARN
|
|
restartPolicy: OnFailure
|
|
|