Instalar com Codex ou Claude Copie este prompt, cole no Codex, Claude ou outro assistente e deixe que ele revise a página da skill e instale para você.
Um comando direto ignora o prompt de revisão. Verifique a origem antes de executá-lo.
Instruções da origem · Visualização somente leitura
name
backup-disaster-recovery
description
Implement backup strategies, disaster recovery plans, and data restoration procedures for protecting critical infrastructure and data.
Backup and Disaster Recovery
Overview
Design and implement comprehensive backup and disaster recovery strategies to ensure data protection, business continuity, and rapid recovery from infrastructure failures.
When to Use
Data protection and compliance
Business continuity planning
Disaster recovery planning
Point-in-time recovery
Cross-region failover
Data migration
Compliance and audit requirements
Recovery time objective (RTO) optimization
Implementation Examples
1. Database Backup Configuration
# postgres-backup-cronjob.yamlapiVersion:v1kind:ConfigMapmetadata:name:backup-scriptnamespace:databasesdata:backup.sh:|
#!/bin/bash
set -euo pipefail
BACKUP_DIR="/backups/postgresql"RETENTION_DAYS=30DB_HOST="${POSTGRES_HOST}"DB_PORT="${POSTGRES_PORT:-5432}"DB_USER="${POSTGRES_USER}"DB_PASSWORD="${POSTGRES_PASSWORD}"exportPGPASSWORD="$DB_PASSWORD"# Create backup directorymkdir-p"$BACKUP_DIR"# Full backupBACKUP_FILE="$BACKUP_DIR/full-$(date+%Y%m%d-%H%M%S).sql"echo"Starting backup to $BACKUP_FILE"pg_dump-h"$DB_HOST"-p"$DB_PORT"-U"$DB_USER"-v\--format=plain--no-owner--no-privileges>"$BACKUP_FILE"# Compress backupgzip"$BACKUP_FILE"echo"Backup compressed: ${BACKUP_FILE}.gz"# Upload to S3awss3cp"${BACKUP_FILE}.gz"\"s3://my-backups/postgres/$(date +%Y/%m/%d)/"# Clean local old backupsfind"$BACKUP_DIR"-typef-mtime+7-delete# Verify backupifpg_restore-d"postgresql://$DB_USER@$DB_HOST:$DB_PORT/test_restore"\"${BACKUP_FILE}.gz"--single-transaction2>/dev/null;thenecho"Backup verification successful"dropdb-h"$DB_HOST"-p"$DB_PORT"-U"$DB_USER"test_restorefiecho"Backup complete: ${BACKUP_FILE}.gz"---apiVersion:batch/v1kind:CronJobmetadata:name:postgres-backupnamespace:databasesspec:schedule:"0 2 * * *"# 2 AM dailysuccessfulJobsHistoryLimit:3failedJobsHistoryLimit:3jobTemplate:spec:template:spec:serviceAccountName:backup-sacontainers:-name:backupimage:postgres:15-alpineenv:-name:POSTGRES_HOSTvalueFrom:secretKeyRef:name:postgres-credentialskey:host-name:POSTGRES_USERvalueFrom:secretKeyRef:name:postgres-credentialskey:username-name:POSTGRES_PASSWORDvalueFrom:secretKeyRef:name:postgres-credentialskey:password-name:AWS_ACCESS_KEY_IDvalueFrom:secretKeyRef:name:aws-credentialskey:access-key-name:AWS_SECRET_ACCESS_KEYvalueFrom:secretKeyRef:name:aws-credentialskey:secret-keyvolumeMounts:-name:backup-scriptmountPath:/backup-name:backup-storagemountPath:/backupscommand:-sh--c-apkadd--no-cacheaws-cli&&bash/backup/backup.shvolumes:-name:backup-scriptconfigMap:name:backup-scriptdefaultMode:0755-name:backup-storageemptyDir:sizeLimit:100GirestartPolicy:OnFailure
2. Disaster Recovery Plan Template
# disaster-recovery-plan.yaml---apiVersion:v1kind:ConfigMapmetadata:name:dr-proceduresnamespace:operationsdata:dr-runbook.md:|
# Disaster Recovery Runbook
## RTO and RPO Targets-RTO (Recovery Time Objective):4hours-RPO (Recovery Point Objective):1hour## Pre-Disaster Checklist- [ ] Verifybackupsarecurrent- [ ] Testbackuprestorationprocess- [ ] VerifyDRsiteresourcesareprovisioned- [ ] ConfirmfailoverDNSisconfigured## Primary Region Failure### Detection (0-15 minutes)-Alertingsystemdetectsprimaryregion