Назад | Перейти на главную страницу

Как сделать резервное копирование PostgreSQL на AWS RDS вне офиса?

В качестве меры по смягчению последствий таких катастроф, как получение злоумышленником полного доступа к нашей учетной записи AWS и удаление всего, Я занимаюсь настройкой удаленных резервных копий для нашей производственной базы данных. Мы используем PostgreSQL на AWS RDS. У нас есть ежедневное резервное копирование на RDS.

Я придумал два следующих варианта:

1) (ежедневно) Загрузка моментального снимка базы данных, созданного RDS (хотя я не уверен, можно ли это использовать с помощью скриптов или даже возможно)

2) (ежедневно) Раскрутите реплику для чтения и используйте pg_dump на этой реплике для резервного копирования базы данных.

Как лучше всего этого добиться?

Если это поможет, у нас уже есть инструмент, который выполняет ежедневное резервное копирование наших корзин s3.

Один из возможных вариантов - скопировать снимки состояния RDS в другую учетную запись AWS. Это широко распространенная практика.

Это можно сделать:

  1. Совместное использование снимка RDS со второй учетной записью AWS.
  2. Скопируйте («вытяните») снимок RDS в целевую учетную запись из исходной учетной записи.
  3. Удалите совместное использование исходного снимка.

https://aws.amazon.com/blogs/aws/amazon-rds-update-cross-account-snapshot-sharing/

Я также хотел сделать резервную копию моего AWS RDS, кода, журналов и т. Д. Вне офиса. Я делаю это следующим образом:

  • Периодическое выполнение экспорта базы данных (для меня каждую ночь в полночь) в заданный каталог
  • Имея Чердак резервного копирования сделайте резервную копию этого каталога. Это создает дифференциальную сжатую резервную копию без дублирования. Он хранит еженедельные, ежемесячные и годовые снимки - это можно настроить на случай, если вам придется откатиться. Я также делаю резервную копию своего корневого каталога и журналов таким же образом.
  • Затем я использую сценарий, который синхронизирует резервные копии чердака с Dropbox. Вы также можете использовать BitTorrent Sync, FTP или что-нибудь еще, что вам нравится.

Я хочу задокументировать все это когда-нибудь, но это действительно довольно просто.

Обновление 2017 г.

Я прекратил использовать Attic, поскольку он не находится в стадии активной разработки и поддержки. я использую Борг резервное копирование для дедуплицированных резервных копий, который является ответвлением Attic.

Резервные копии Borg хранятся в моей файловой системе. Я синхронизирую эти файлы с AWS S3, используя S3sync. Если бы я настраивал его сейчас, я бы подумал об использовании S3FS для записи резервных копий непосредственно в S3, хотя S3FS не является полной файловой системой, поэтому в этом случае она может работать не так хорошо.