Запуск действий в ADBM
Обзор
После создания конфигурации формирование и удаление бэкапов производится автоматически согласно установленным расписаниям. Однако ADBM также позволяет управлять бэкапами вручную с помощью кластерных действий, описанных ниже. Чтобы запустить эти действия, выполните следующие шаги:
-
Откройте страницу Backup Manager в web-интерфейсе ADB Control.
-
В секции Clusters открывшейся страницы найдите кластер, для которого требуется запустить действие, и кликните по иконке в табличной строке, соответствующей этому кластеру. Возможные действия доступны в выпадающем списке.
Запуск действий из секции ClustersЗапуск действий из секции Clusters -
Если требуется работать с определенным кластером, нажмите на его название в таблице, расположенной в секции Clusters. Откроется страница выбранного кластера. Кнопка Backup предназначена для запуска бэкапов. Чтобы открыть меню с другими действиями, нажмите .
Запуск действий на странице выбранного кластераЗапуск действий на странице выбранного кластера
Запуск действий является эксклюзивной операцией. Нельзя инициализировать новое действие, не завершив предыдущее (исключение — Terminate). При попытке запуска нескольких действий одновременно возвращается следующая ошибка.
Типы действий
Backup
Запуск бэкапов осуществляется автоматически в соответствии с расписаниями, установленными с помощью следующих параметров для текущей версии конфигурации (см. вкладку General configuration):
-
Full Backup schedule — полные бэкапы;
-
Differential backup schedule — дифференциальные бэкапы;
-
Incremental backup schedule — инкрементные бэкапы.
Если необходимо сформировать бэкап вне настроеных расписаний, выполните шаги:
-
Нажмите на кнопку Backup на странице выбранного кластера либо выберите из выпадающего списка действие Backup для одного из кластеров в секции Clusters.
Переход к действию BackupПереход к действию BackupОткрывшееся окно содержит следующую информацию:
-
Restore point — автоматически сгенерированное имя для новой точки восстановления.
-
Type — тип бэкапа. Возможные значения:
-
Full
— полный; -
Incr
— инкрементный; -
Diff
— дифференциальный.
-
-
Configuration — версия конфигурации, которая будет применена. Можно нажать на название, чтобы просмотреть и при необходимости изменить параметры конфигурации в списке конфигураций.
-
Date — текущие дата и время.
-
Delta — флаг, указывающий на необходимость использования контрольных сумм (checksums) при создании бэкапа.
Форма действия BackupФорма действия Backup
-
-
Выберите тип бэкапа в поле Type. Измените название точки восстановления в поле Restore point, если необходимо.
-
Нажмите Run.
-
В результате запускается действие Start 'Backup' action. Это действие, в свою очередь, порождает несколько дочерних действий (subactions). Просмотреть их можно на вкладке Actions (см. Просмотр действий в ADBM).
-
После успешного применения всех действий бэкап становится доступен в списке бэкапов на вкладке Backups.
Созданный бэкап доступен на вкладке BackupsСозданный бэкап доступен на вкладке Backups
Create restore point
Точки восстановления создаются автоматически в соответствии с расписанием, установленным с помощью параметра Restore point creation schedule для текущей версии конфигурации (см. вкладку General configuration).
Если необходимо добавить restore point вне настроенного расписания, выполните шаги:
-
Выберите действие Create restore point на странице выбранного кластера или в секции Clusters.
Переход к действию Create restore pointПереход к действию Create restore pointОткрывшееся окно содержит следующую информацию:
-
Restore point — автоматически сгенерированное имя для новой точки восстановления.
-
Configuration — версия конфигурации, которая будет применена. Можно нажать на название, чтобы просмотреть и при необходимости изменить параметры конфигурации в списке конфигураций.
-
Date — текущие дата и время.
Форма действия "Create restore point"Форма действия "Create restore point"
-
-
Измените название точки восстановления в поле Restore point, если необходимо.
-
Нажмите Run.
-
В результате запускается действие Start 'Create restore point' action. Это действие, в свою очередь, порождает несколько дочерних действий (subactions). Просмотреть их можно на вкладке Actions (см. Просмотр действий в ADBM).
-
После успешного применения всех действий новая точка восстановления становится доступной. В этом можно убедиться при следующем запуске действия Restore или Cleanup.
Новая точка восстановления доступнаНовая точка восстановления доступна
Restore
Действие Restore позволяет восстановить базы данных на момент создания одной из существующих restore points. Это единственное из действий, которое можно применить как к запущенному, так и к остановленному кластеру ADB. Логика выполнения действия будет зависеть от статуса кластера:
-
Кластер запущен (отмечен статусом UP в UI ADBM). В этом случае до запуска восстановления автоматически проводятся дополнительные проверки на возможность применения выбранного бэкапа к кластеру:
-
Происходит сверка топологий — сохраненной в бэкапе и полученной из кластера ADB (из системной таблицы
gp_segment_configuration
). -
Происходит проверка метаданных бэкапа (см. Verify ниже).
Если проверки проходят успешно, кластер автоматически останавливается. Кроме этого, если в процессе восстановления фиксируется ошибка, то можно выполнить Restore retry — это перезапуск последнего упавшего процесса восстановления уже без выполнения дополнительных проверок.
-
-
Кластер остановлен (отмечен статусом DOWN в UI ADBM). В этом случае валидация пропускается. Однако процесс восстановления запустить возможно — за счет использования флага Skip Validation (который установлен по умолчанию и недоступен пользователям для редактирования). Данным способом рекомендуется пользоваться исключительно в случае фатальных проблем с кластером, когда он не запускается.
Для запуска восстановления БД выполните шаги:
-
Выберите действие Restore на странице выбранного кластера или в секции Clusters.
Переход к действию RestoreПереход к действию RestoreОткрывшееся окно содержит следующую информацию:
-
Time period — временной диапазон, используемый для поиска нужной restore point. По умолчанию установлена текущая дата.
-
Restore point — точка восстановления, на момент создания которой требуется восстановить БД.
-
Databases — базы данных, которые можно восстановить на момент выбранной restore point.
-
Processes — максимальное количество процессов для восстановления одного сегмента.
-
Configuration — версия конфигурации, использованная при создании выбранной restore point. Можно нажать на название, чтобы просмотреть параметры конфигурации в списке конфигураций.
-
Date created — время создания выбранной restore point.
-
Backup type — тип последнего бэкапа, сформированного перед добавлением выбранной restore point.
-
Backup date — время формирования последнего бэкапа перед добавлением выбранной restore point.
-
Restore mirrors — выпадающий список, значение которого определяет, восстанавливать ли данные для зеркал (mirrors) и Standby при их наличии в кластере:
-
No
— не восстанавливать зеркала. -
In parallel
— восстанавливать зеркала параллельно с primary-сегментами. -
After primary
— восстанавливать зеркала после того, как все primary-сегменты восстановлены.
-
-
Delta — флаг, указывающий на необходимость использования контрольных сумм (checksums) при восстановлении данных.
-
Force — флаг, указывающий на необходимость полного перезаписывания путей к данным и табличным пространствам в PostgreSQL.
-
Skip Validation — флаг, указывающий на необходимость запуска восстановления БД, несмотря на невозможность валидации. Выводится в случае, если выбранный ADB кластер остановлен (DOWN). По умолчанию установлен и недоступен для редактирования.
Форма действия Restore (ADB-кластер запущен)Форма действия Restore (ADB-кластер запущен)Форма действия Restore (ADB-кластер остановлен)Форма действия Restore (ADB-кластер остановлен)
-
-
Заполните необходимые поля:
-
Выберите точку восстановления в выпадающем списке Restore point. Используйте фильтр Time period, если необходимо.
-
Выберите базы данных, требующие восстановления, в выпадающем списке Databases.
-
Выберите значение из списка Restore mirrors.
-
Если необходимо, установите флаги Delta и Force.
-
-
Нажмите Run.
-
В результате запускается действие Start 'Restore' action. Это действие, в свою очередь, порождает несколько дочерних действий (subactions). Просмотреть их можно на вкладке Actions (см. Просмотр действий в ADBM).
-
После успешного применения всех действий состояние выбранных баз данных возвращается на момент указанной restore point.
Для запущенных кластеров ADB (со статусом UP
) существует возможность повторного запуска последнего действия Restore, завершившегося с ошибкой. Для этого требуется повторно выбрать действие Restore (см. шаг 1 выше) и нажать Retry в открывшемся окне. Если необходимо выполнить действие Restore заново (со всеми проверками), нажмите New restore.
Cleanup
Действие Cleanup выполняется автоматически в соответствии с расписанием, установленным с помощью параметра Cleanup schedule для текущей версии конфигурации (см. вкладку General configuration). Это действие удаляет:
-
Наиболее старые полные бэкапы — если общее число полных бэкапов превысило значение параметра Number of full backups, установленное для текущей конфигурации.
-
Наиболее старые дифференциальные бэкапы — если общее число дифференциальных бэкапов превысило значение параметра Number of differential backups, установленное для текущей конфигурации.
-
Бэкапы, имеющие следующие статусы:
Failed
,Invalid
. -
Неактивные версии конфигурации, которые не имеют связанных бэкапов.
Действие Cleanup, запущенное вручную, также удаляет приведенные выше объекты, но дополнительно позволяет удалить бэкапы, соответствующие выбранной точке восстановления. При этом ADBM находит ближайший полный либо дифференциальный бэкап, созданный перед добавлением указанной точки, после чего все связанные с ним бэкапы и restore points удаляются.
Чтобы запустить действие Cleanup вручную, выполните шаги:
-
Выберите действие Cleanup на странице выбранного кластера или в секции Clusters.
Переход к действию CleanupПереход к действию CleanupОткрывшееся окно содержит следующую информацию:
-
Time period — временной диапазон, используемый для поиска нужной restore point. По умолчанию установлена текущая дата.
-
Select restore point — точка восстановления, для которой требуется удалить набор связанных бэкапов и restore points.
-
Configuration — версия конфигурации, использованная при создании выбранной restore point. Можно нажать на название, чтобы просмотреть параметры конфигурации в списке конфигураций.
-
Date created — время создания выбранной restore point.
Форма действия CleanupФорма действия Cleanup
-
-
Выберите точку восстановления в выпадающем списке Select restore point. Используйте фильтр Time period, если необходимо.
-
Нажмите Run.
-
В результате запускается действие Start cleanup job for 'Verify backup' action. Это действие, в свою очередь, порождает несколько дочерних действий (subactions). Просмотреть их можно на вкладке Actions (см. Просмотр действий в ADBM).
-
После успешного применения всех действий бэкапы и restore points удаляются согласно правилам, описанным выше. Чтобы убедиться в этом, можно открыть список бэкапов на вкладке Backups.
Например, если при наличии в системе двух бэкапов — полного (full) и инкрементного (incremental) — выбрать точку восстановления, созданную после инкрементного, оба бэкапа будут удалены.
Список бэкапов перед запуском CleanupСписок бэкапов перед запуском CleanupСписок бэкапов после запуска CleanupСписок бэкапов после запуска Cleanup
Для лучшего понимания логики запускаемого вручную действия Cleanup можно рассмотреть пример, приведенный ниже. Рисунок изображает временную ось с перечнем созданных за указанный период бэкапов различных типов (с именами full*
, diff*
, incr*
) и restore points (с именами rp*
). Таблица демонстрирует, какие объекты будут удалены, если на форме действия Cleanup выбрать одну из изображенных точек восстановления.
Выбранная restore point | Объекты, которые будут удалены |
---|---|
rp1 |
Все бэкапы и restore points за приведенный на рисунке период |
rp2 |
Все бэкапы и restore points за приведенный на рисунке период |
rp3 |
Все бэкапы и restore points за приведенный на рисунке период |
rp4 |
Все бэкапы и restore points за приведенный на рисунке период |
rp5 |
diff1, incr2, rp5 — rp8 |
rp6 |
diff1, incr2, rp5 — rp8 |
rp7 |
diff1, incr2, rp5 — rp8 |
rp8 |
diff1, incr2, rp5 — rp8 |
Verify
Действие Verify сравнивает метаданные бэкапов, хранимые в ADBM, с метаданными, получаемыми от pgbackrest (т.е. с данными по фактически имеющимся бэкапам). При обнаружении разницы бэкапы переводятся в статус Invalid
и не могут быть использованы для восстановления баз данных. Такие бэкапы будут удалены при следующем запуске действия Cleanup.
Перед сравнением метаданных ADBM дополнительно проверяет наличие всех конфигурационных файлов (pgbackrest.conf) для всех существующих timeline на всех сегмент-хостах. Если каких-то из этих файлов нет, то берется последняя имеющаяся версия конфигурации timeline, на ее основе формируется новый конфигурационный файл, который записывается на сегмент-хост для этого timeline. Это необходимо для того, чтобы до проверки метаданных по бэкапам в системе были все необходимые конфигурации.
Выполнение действия Verify описано ниже:
-
Выберите действие Verify на странице выбранного кластера или в секции Clusters.
Переход к действию VerifyПереход к действию Verify -
Подтвердите действие, нажав в открывшемся окне Run.
Подтверждение действия VerifyПодтверждение действия Verify -
В результате запускается действие Start 'Verify backup' action. Это действие, в свою очередь, порождает несколько дочерних действий (subactions). Просмотреть их можно на вкладке Actions (см. Просмотр действий в ADBM).
-
После успешного применения всех действий некоторые бэкапы могут перейти в статус
Invalid
. Чтобы найти такие бэкапы, можно воспользоваться фильтром Status на вкладке Backups.
Terminate
Действие Terminate позволяет прерывать некоторые запущенные действия. Это единственный тип действия, для которого берется отдельный распределенный lock по кластеру (в etcd), что позволяет запускать Terminate параллельно с другими типами действий.
Ниже приведен пример прерывания действия Backup:
-
Запустите действие Backup, как показано выше.
Новый бэкап инициализированНовый бэкап инициализирован -
Выберите действие Terminate на странице выбранного кластера или в секции Clusters.
Переход к действию TerminateПереход к действию Terminate -
Подтвердите действие, нажав в открывшемся окне Run.
Подтверждение действия TerminateПодтверждение действия Terminate -
В результате запускается действие Start 'Terminate' action. Это действие, в свою очередь, порождает несколько дочерних действий (subactions). Просмотреть их можно на вкладке Actions (см. Просмотр действий в ADBM).
Запущенный ранее бэкап приобретает статус
Terminating
. В этом можно убедиться, открыв список бэкапов на вкладке Backups.Бэкап в статусе TerminatingБэкап в статусе Terminating -
После успешного применения всех действий бэкап переводится в статус
Stopped
.Статус бэкапа изменен на StoppedСтатус бэкапа изменен на Stopped
ПРИМЕЧАНИЕ
После успешного применения действия Terminate возможно возобновление последнего прерванного бэкапа с помощью действия Resume. |
Resume
ВАЖНО
Начиная с версии ADBM 2.1.2 действие Resume доступно только для бэкапов с типом Full .
|
Действие Resume позволяет возобновить последний прерванный запуск бэкапа. Это действие становится доступным в списке кластерных действий только после появления бэкапов в статусе Stopped
. Ниже приведен пример возобновления бэкапа, прерывание которого описано в предыдущем разделе:
-
Выберите действие Resume на странице выбранного кластера или в секции Clusters.
Переход к действию ResumeПереход к действию ResumeОткрывшееся окно содержит следующую информацию:
-
Restore point — автоматически сгенерированное имя для новой точки восстановления.
-
Configuration — версия конфигурации, которая будет применена. Можно нажать на название, чтобы просмотреть параметры конфигурации в списке конфигураций.
-
Date — текущие дата и время.
Форма действия ResumeФорма действия Resume
-
-
Измените название точки восстановления в поле Restore point, если необходимо.
-
Нажмите Run.
-
В результате запускается действие Start 'Resume backup' action. Это действие, в свою очередь, порождает несколько дочерних действий (subactions). Просмотреть их можно на вкладке Actions (см. Просмотр действий в ADBM).
Бэкап приобретает статус
Resume
. В этом можно убедиться, открыв список бэкапов на вкладке Backups.Бэкап в статусе ResumeБэкап в статусе Resume -
После успешного применения всех действий бэкап переводится в статус
Done
.Статус бэкапа изменен на DoneСтатус бэкапа изменен на Done