Инструменты пользователя

Инструменты сайта


mastodon-backup

Mastodon Backup

Раздолбаи, как известно, делятся на тех, кто не делает бэкапы и тех, кто уже делает.

Обзор

Итак, что необходимо бекапить, по убыванию важности:

  1. Базу PostgreSQL
  2. Пароли приложений из .env.production
  3. Загруженные пользователями файлы
  4. Базу Redis

Модель угроз

Собственно, существует два типа угроз, что могут «сломать всё» — отказ оборудования (например, повреждение данных на диске) и человеческие либо программные ошибки (например случайное удаление части данных). Мы рассмотрим первый вариант.

Потеря базы PostgreSQL фактически обнуляет сервер — это означает утрату учётных запией, сообщений и подписок.

Потеря паролей приложений сломает часть функций Mastodon — например разлогинит пользователей, отключит двухфакторную аутентификацию и Web Push API.

Потеря загруженных пользователями файлов лишит вас аватарок, заголовочкоых картинок аккаунтов, медиа-вложений (например картинок в сообщениях), но сам Mastodon продолжит работать.

Утрата базы Redis пройдёт практически безболезненно — там хранятся очереди Sidekiq и запланированные попытки. То есть вы потеряете ленту подписок, но её можно сгенерировать заново с помощью tootctl.

Лучше всего нам подходят так называемые off-site бэкапы, то есть, производимые на другую машину. Если сервер погибнет в языках адского пламени, вряд ли вам пригодятся бэкапы с его дисков.

Бэкап паролей приложений

Это проще всего, так как они не меняются в процессе работы. Просто сохраните копию файла .env.production

Бэкап PostgreSQL

База может повредиться в результате проблем с питанием, сбоя жёсткого диска или неудачной миграции схемы. Посему настоятельно рекомендуется делать периодический бэкап с помощью pg_dump или pg_dumpall.. Для HA-конфигураций, по возможности используйте потоковую репликацию на запасной сервер. ==== Бэкап подьзовательских файлов ==== Если вы ипользуете стороннее хранилище вроде Amazon S3, Google cloud или Wasabi, то беспокоиться не о чем, технари этих компаний о вас позаботились. В случае же локального хранилища, вам потребуется копия директории public/system. ==== Бэкап Redis ==== Это просто. Redis периодически пишет в файл /var/lib/redis/dump.rdb'', его и копируйте.

mastodon-backup.txt · Последние изменения: 2019/05/21 03:28 — admin