26 lines
674 B
YAML
26 lines
674 B
YAML
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: velero-etcd-backup-script
|
|
namespace: velero
|
|
data:
|
|
backup-etcd.sh: |
|
|
#!/bin/bash
|
|
set -e
|
|
|
|
BACKUP_DIR="/var/lib/velero/etcd-backup"
|
|
TIMESTAMP=$(date +"%Y%m%d-%H%M%S")
|
|
|
|
mkdir -p "$BACKUP_DIR"
|
|
|
|
# etcd snapshot
|
|
ETCDCTL_API=3 etcdctl snapshot save "$BACKUP_DIR/etcd-snapshot-$TIMESTAMP.db" \
|
|
--endpoints=https://10.130.0.20:2379 \
|
|
--cacert=/etc/kubernetes/pki/etcd/ca.pem \
|
|
--cert=/etc/kubernetes/pki/etcd/cert.pem \
|
|
--key=/etc/kubernetes/pki/etcd/key.pem
|
|
|
|
tar czf "$BACKUP_DIR/k8s-pki-$TIMESTAMP.tar.gz" -C /etc/kubernetes pki
|
|
|
|
echo "Backup completed at $BACKUP_DIR"
|