В качестве меры по смягчению последствий таких катастроф, как получение злоумышленником полного доступа к нашей учетной записи AWS и удаление всего, Я занимаюсь настройкой удаленных резервных копий для нашей производственной базы данных. Мы используем PostgreSQL на AWS RDS. У нас есть ежедневное резервное копирование на RDS.
Я придумал два следующих варианта:
1) (ежедневно) Загрузка моментального снимка базы данных, созданного RDS (хотя я не уверен, можно ли это использовать с помощью скриптов или даже возможно)
2) (ежедневно) Раскрутите реплику для чтения и используйте pg_dump на этой реплике для резервного копирования базы данных.
Как лучше всего этого добиться?
Если это поможет, у нас уже есть инструмент, который выполняет ежедневное резервное копирование наших корзин s3.
Один из возможных вариантов - скопировать снимки состояния RDS в другую учетную запись AWS. Это широко распространенная практика.
Это можно сделать:
https://aws.amazon.com/blogs/aws/amazon-rds-update-cross-account-snapshot-sharing/
Я также хотел сделать резервную копию моего AWS RDS, кода, журналов и т. Д. Вне офиса. Я делаю это следующим образом:
Я хочу задокументировать все это когда-нибудь, но это действительно довольно просто.
Обновление 2017 г.
Я прекратил использовать Attic, поскольку он не находится в стадии активной разработки и поддержки. я использую Борг резервное копирование для дедуплицированных резервных копий, который является ответвлением Attic.
Резервные копии Borg хранятся в моей файловой системе. Я синхронизирую эти файлы с AWS S3, используя S3sync. Если бы я настраивал его сейчас, я бы подумал об использовании S3FS для записи резервных копий непосредственно в S3, хотя S3FS не является полной файловой системой, поэтому в этом случае она может работать не так хорошо.