Резервные копии в Yandex StoreDoc
Yandex StoreDoc обеспечивает автоматическое и ручное резервное копирование баз данных.
Для кластеров с неподдерживаемой версией СУБД восстановление из резервных копий недоступно.
Создание резервной копии
Резервные копии можно создавать автоматически или вручную, в обоих случаях создается полная резервная копия всех баз данных.
Для шардированных кластеров создаются две резервные копии: шардированная и нешардированная. Для шардированной копии отображается больший размер, который включает:
- Размер резервной копии для хостов с типом
mongoinfraилиmongocfg. - Сумму размеров всех нешардированных резервных копий. Эта сумма учитывается при подсчете общего размера шардированной копии, но фактически нешардированные копии не занимают дополнительное место в хранилище в составе шардированной копии.
Из нешардированной копии можно восстановить только нешардированный кластер. Из шардированной копии можно восстановить кластер со стандартным или расширенным шардированием, независимо от того, какое шардирование использовалось в исходном кластере. Шарды восстанавливаемого кластера должны соответствовать шардам исходного кластера на момент создания резервной копии.
Резервная копия всех данных кластера автоматически создается раз в день. Отключить автоматическое создание резервной копии невозможно. Однако при создании или изменении кластера для таких резервных копий можно задать:
- Срок их хранения.
- Промежуток времени, в течение которого начинается резервное копирование. По умолчанию —
22:00 - 23:00UTC (Coordinated Universal Time).
После создания резервная копия сжимается для дальнейшего хранения. Чтобы узнать ее точный размер, запросите список резервных копий.
Резервные копии создаются только на работающих кластерах. Если вы используете кластер Yandex StoreDoc не круглосуточно, проверьте настройки и убедитесь, что резервное копирование выполняется во время работы кластера.
О том, как вручную создать резервную копию, читайте в разделе Управление резервными копиями.
Хранение резервной копии
Особенности хранения резервных копий в Yandex StoreDoc:
-
Резервные копии хранятся во внутреннем хранилище Яндекса в виде логических дампов и шифруются с помощью GPG
. У каждого кластера свои ключи шифрования. -
Срок хранения резервных копий существующего кластера зависит от способа их создания:
-
После удаления кластера все его резервные копии хранятся 7 дней.
-
На хранилище резервных копий не распространяется действие квот
и лимитов для хранилища кластера. -
Резервные копии содержатся в объектном хранилище и не занимают место в хранилище кластера. При этом если в кластере есть N свободных гигабайт места, то хранение первых N гигабайт резервных копий не тарифицируется.
Подробнее в разделе Правила тарификации.
Восстановление из резервной копии
Восстанавливая кластер из резервной копии, вы создаете новый кластер с данными из резервной копии. При этом понадобится задать все его параметры (кроме типа кластера), как и при обычном создании кластера. Если в каталоге не хватает ресурсов для создания такого кластера, восстановиться из резервной копии не получится. Средняя скорость восстановления из резервной копии — 10 МБ/с.
Чтобы восстановить кластер из резервной копии, следуйте инструкциям.
Совет
Проводите плановые тесты восстановления кластера из резервных копий.
PITR в Yandex StoreDoc
Yandex StoreDoc позволяет восстановить состояние кластера на любой момент времени (Point-in-Time-Recovery, PITR) от создания самой старой резервной копии и до архивации самой свежей коллекции oplog. Это достигается за счет дополнения данных резервной копии, выбранной в качестве начальной точки для восстановления, записями из коллекции oplog кластера.
Например, если операция создания резервной копии завершилась 10.08.2020 в 12:00:00 UTC, текущая дата — 15.08.2020 19:00:00 UTC, а последняя коллекция
oplogбыла сохранена 15.08.2020 в 18:50:00 UTC, кластер может быть восстановлен в любое свое состояние в промежутке времени с 10.08.2020 12:00:01 UTC до 15.08.2020 18:50:00 UTC включительно.
Коллекция oplog архивируется в работающем кластере несколько раз в минуту, после чего загружается в объектное хранилище.
На создание и загрузку архива коллекции oplog в объектное хранилище требуется некоторое время. Из-за этого состояние кластера, которое хранится в объектном хранилище, может отличаться от реального.
Важно
PITR не поддерживается для кластеров с включенным шардированием. Такие кластеры могут быть восстановлены только на момент создания выбранной резервной копии.
PITR работает только для кластера с единичным набором реплик (replica set), поэтому для использования PITR в кластере должен быть выключен механизм шардирования.
При восстановлении до состояния на текущий момент времени новый кластер будет отражать состояние:
- существующего кластера на момент восстановления;
- удаленного кластера на момент архивации последней коллекции
oplog.