Управление конфигурациями в ADBM
Конфигурация бэкапа
Обзор
В ADBM конфигурация бэкапа (backup configuration) означает набор опций, используемых для формирования бинарных бэкапов ADB. Эти опции включают в себя пути для сохранения бэкапов, уровни логирования, тайм-ауты, настройки сжатия данных и так далее. ADBM поддерживает несколько версий конфигураций. Но в каждый момент времени может быть только одна активная версия, которая отмечена статусом current
в web-интерфейсе.
Возможные операции с конфигурациями описаны ниже. Все операции запускаются на вкладке Configuration → Backup configuration. Чтобы открыть эту вкладку, выполните шаги:
-
Откройте страницу Backup manager в web-интерфейсе ADB Control.
-
Нажмите на имя кластера ADB в таблице, расположенной в секции Clusters открывшейся страницы.
Выбор кластера ADBВыбор кластера ADBПРИМЕЧАНИЕНачиная с версии ADBM 2.5.0 рядом с именем каждого кластера выводится его уникальный идентификатор в системе.
-
Выберите вкладку Configuration → Backup configuration.
Вкладка Configuration → Backup configurationВкладка Configuration → Backup configuration
Изначально конфигурации в списке отсутствуют. Чтобы начать работу с бэкапами в ADBM, требуется добавить новую конфигурацию.
Добавление новой конфигурации
ВАЖНО
|
-
Откройте вкладку Configuration → Backup configuration, как описано выше.
-
Заполните поля, расположенные в секциях General configuration, Timeout, Repository и Compression. При заполнении полей обратите внимание на следующее:
-
Обязательные параметры выделены красным цветом.
-
Для параметров, определяющих время, допускаются следующие единицы измерения:
-
ms
— миллисекунды; -
sec
— секунды; -
min
— минуты; -
hr
— часы; -
d
— дни; -
w
— недели.
-
-
Для параметров, определяющих объем данных, можно использовать следующие единицы измерения:
-
b
— байты; -
kb
— килобайты; -
mb
— мегабайты; -
gb
— гигабайты.
-
-
При заполнении параметров, обозначающих время или объем данных, используйте следующий формат:
<value><unit>
(без пробела), где<value>
— количество;<unit>
— единица измерения (см. выше). Например,1min
,2hr
. Если необходимо составное значение, используйте пробел (например,30min 30sec
). -
Нажав на иконку
, которая появляется справа от названий некоторых полей во время их заполнения, можно вывести справочную информацию по полям: допустимые единицы измерения, минимальное и максимальное значения и так далее.
General configurationПараметр Описание Значение по умолчанию Number of full backups
Максимальное количество полных (full) бэкапов. При достижении этого лимита наиболее старые бэкапы с типом full будут удалены во время следующего автоматического или ручного запуска действия Cleanup. Дополнительную информацию можно получить в разделе Cleanup
3
Number of differential backups
Максимальное количество дифференциальных (differential) бэкапов. При достижении этого лимита наиболее старые бэкапы с типом differential будут удалены во время следующего автоматического или ручного запуска действия Cleanup. Дополнительную информацию можно получить в разделе Cleanup
6
Total number of backups
Общее число бэкапов, возможное для текущего кластера, включая бэкапы в статусах
Stopped
иFailed
, не подлежащие удалению согласно политикам действия Cleanup. Перед созданием каждого бэкапа осуществляется проверка того, не превышен ли указанный в этом параметре лимит40
File Log level
Уровень логирования.
Возможные значения:
-
off
— отсутствие логов; -
error
; -
warn
; -
info
; -
detail
; -
debug
; -
trace
.
info
Archive command
Команда, выполняемая, когда файлы WAL (Write Ahead Log) передаются в archive directory. Если значение параметра Archive command изменяется, то при применении конфигурации кластер ADB автоматически перезапускается (для изменения значения GUC
archive_command
).
Префикс имени конфигурации stanza для сегментов, используемый в Archive command, должен совпадать со значением Stanza template (см. ниже):--stanza=<Stanza template>%c
PGOPTIONS=\"-c gp_session_role=utility\" /usr/lib/gpdb/bin/pgbackrest --stanza=seg%c archive-push %p
Archive timeout
Максимальное время, в течение которого каждый WAL-сегмент (необходимый для консистентности бэкапа) должен достигнуть архивного репозитория
1min
Stanza template
Префикс имени конфигурации stanza для сегментов. Должен совпадать с префиксом, используемым в Archive command (см. выше):
--stanza=<Stanza template>%c
seg
Log path
Путь к месту хранения логов
/home/gpadmin/gpAdminLogs
Exclude path
Определяет пути и файлы, которые необходимо исключить из процесса бэкапирования
-
pg_log/gp_era
-
backups
-
gpperfmon/data/
-
gpbackup_history.yaml
Секция General configurationСекция "General configuration"TimeoutПараметр Описание Значение по умолчанию Database query timeout
Устанавливает тайм-аут для запросов к базе данных, включая функции запуска/остановки резервного копирования, которые могут занять значительное время. Следует установить большое значение, если нет уверенности, что функции быстро возвращают результат. Значение Database query timeout должно быть меньше, чем Protocol timeout
30min
Protocol timeout
Устанавливает время, в течение которого локальный или удаленный процесс может ожидать получения нового сообщения на протокольном уровне. Использование тайм-аута предотвращает бесконечное ожидание со стороны процессов. Значение Protocol timeout должно быть больше, чем Database query timeout
30min 30sec
I/O timeout
Тайм-аут, используемый для подключений и операций чтения/записи. Следует учесть, что операция чтения/записи не должна завершиться полностью в течение указанного времени, однако должен быть достигнут некоторый прогресс, даже если это всего лишь один байт
1min
Job wait timeout
Тайм-аут ожидания захвата блокировки на уровне кластера перед началом выполнения задачи (job)
15min
Секция TimeoutСекция TimeoutStorageПараметр Описание Значение по умолчанию Storage
Хранилище, настроенное на вкладке Storages
—
Relative path
Путь к репозиторию для бэкапов. Указывается относительно пути, заданного в параметре Repository path выбранного хранилища. Вы можете использовать одно и то же хранилище в разных конфигурациях, при этом указывая в каждой конфигурации свой репозитории внутри этого же хранилища
—
Bundle size
Целевой размер бандлов с файлами. Бандл (bundle) означает группировку отдельных файлов в один перед формированием бэкапа. Значение параметра не рекомендуется устанавливать слишком большим, поскольку при повторных попытках снятия бэкапов будет необходимо формировать весь бандл целиком
100mb
Bundle limit
Ограничение на размер файлов, включаемых в бандл (см. Bundle size выше). Файлы большего размера будут сохраняться отдельно (вне бандла). Файлы в бандлах не могут быть переиспользованы при возобновлении бэкапа (resume) — поэтому параметр фактически контролирует файлы для возобновления бэкапов
2mb
Use block incremental backup
Переключатель, определяющий следует ли создавать более гранулярные резервные копии путем разделения файлов на блоки, которые могут быть забэкапированы независимо друг от друга
false
Секция StorageСекция StorageWorkspaceПараметр Описание Значение по умолчанию Temporary directory
Директория, используемая для временного размещения данных во время выполнения действия Partial restore.
Рекомендуется использовать директорию на диске, отличном от дисков кластера — с целью уменьшения влияния на производительность кластера в ходе процесса восстановления данных. Поскольку операция восстановления данных не требует произвольного доступа к диску, HDD-диска достаточно
/tmp/adbm/table_restore
Port base
Базовый номер порта, используемый во время выполнения действия Partial restore. Фактический номер порта для каждого сегмента будет определяться как сумма
<Port base> + <dbId>
, где<dbId>
— это значениеgp_segment_configuration.dbid
, соответствующее сегменту.Возможные значения:
[1025,65035]
12000
Max processes per host
Максимальное число параллельных процессов, которое может работать на одном сегмент-хосте во время выполнения действия Partial restore.
Возможные значения:
[1,100]
1
Секция WorkspaceСекция WorkspaceCompressionПараметр Описание Значение по умолчанию Compression type
Алгоритм сжатия данных.
Возможные значения:
-
none
— сжатие данных не используется; -
bz2
; -
gz
; -
lz4
; -
zst
.
gz
Compression level
Уровень сжатия данных. Возможные значения:
1
—9
6
Max processes to use for compress/transfer
Максимальное количество процессов, используемых на каждом сегменте для сжатия/передачи данных
1
Buffer size
Размер буфера для операций I/O
1mb
Секция CompressionСекция Compression -
-
-
Нажмите Save. Эта кнопка расположена до и после секций с параметрами.
Сохранение конфигурацииСохранение конфигурации -
В результате запускается действие Apply backup configuration. Это действие, в свою очередь, порождает несколько дочерних действий (subactions). Просмотреть их можно на вкладке Actions (см. Просмотр действий в ADBM).
В версии ADBM 2.6.5 появилась возможность перейти к вкладке Actions и посмотреть информацию о действии, нажав на ссылку Apply backup configuration в поле Action created, которая становится доступна после сохранения конфигурации.
До успешного завершения всех действий конфигурация будет иметь статус draft.
. После успешного применения действий конфигурация получает статус current
. Наряду со статусом, становится доступна следующая информация о конфигурации:
-
Номер версии (начиная с
1
). -
Имя пользователя, создавшего текущую версию.
-
Дата создания в формате
DD/MM/YYYY
.Успешный результатУспешный результат
Редактирование конфигурации
После добавления конфигурации отредактировать ее параметры нельзя. Однако можно создать новую версию конфигурации на базе одной из добавленных ранее. Для этого выполните следующие шаги:
-
Откройте вкладку Configuration → Backup configuration, как описано выше.
-
В списке доступных версий выберите ту, на основе которой необходимо создать новую. Значения всех параметров выбранной версии выводятся под списком версий (недоступные для редактирования).
ПРИМЕЧАНИЕДобавить конфигурацию можно на базе любой имеющейся версии, не только последней.
Выбор версииВыбор версии -
Нажмите Create new.
-
Внесите необходимые изменения в секции General configuration, Timeout, Repository и Compression. Параметры в этих секциях полностью идентичны описанным выше.
-
Нажмите Save для добавления новой версии конфигурации. Эта кнопка расположена до и после секций с параметрами.
Сохранение новой версии конфигурацииСохранение новой версии конфигурации -
В результате запускается действие Apply backup configuration. Это действие, в свою очередь, порождает несколько дочерних действий (subactions). Просмотреть их можно на вкладке Actions (см. Просмотр действий в ADBM).
-
После успешного применения всех действий новая версия конфигурации становится доступной на вкладке Configuration и приобретает статус
current
, а прошлая версия переводится в статусprevious
.ПРИМЕЧАНИЕ-
ADBM использует версию конфигурации, добавленную последней.
-
Неактивные версии конфигурации, которые не имеют связанных бэкапов, будут удалены при следующем автоматическом либо ручном запуске действия Cleanup.
Новая версия конфигурацииНовая версия конфигурации -
Черновики конфигураций
В ADBM 1.6.3 добавлен начальный статус draft
для конфигураций бэкапов. Этот статус присваивается всем конфигурациям при попытке их сохранения до успешного применения всех действий и перевода в статус current
. Однако, если конфигурация не может быть успешно провалидирована, она остается в статусе draft
— во избежание повторного ввода всей информации в дальнейшем. Черновик конфигурации можно отредактировать (и попытаться повторно применить) либо удалить, нажав на кнопки Edit и Delete, соответственно.
Начиная с версии 1.7.3 в ADBM доступен дополнительный статус verified
, означающий, что валидация конфигурации успешно завершена, однако во время ее применения возникла ошибка. Конфигурации в статусе verified
могут быть отредактированы либо удалены, как и черновики.


Расписание
Вкладка Configuration → Schedule позволяет выбрать расписание для различных операций, связанных с бэкапами, таких как формирование бэкапов различных типов, создание точек восстановления и очистка данных. Вкладка доступна начиная с версии ADBM 2.5.0, до этого расписания являлись частью конфигурации бэкапа и заполнялись наряду с другими параметрами в разделе Configuration → General configuration.


Расписания, доступные для заполнения на вкладке Configuration → Schedule, описаны ниже.
Параметр | Описание |
---|---|
Full Backup schedule |
Расписание для автоматического создания полных (full) бэкапов. Если бэкапы предполагается формировать вручную, оставьте переключатель напротив поля в неактивном состоянии |
Differential backup schedule |
Расписание для автоматического создания дифференциальных (differential) бэкапов. Если бэкапы предполагается формировать вручную, оставьте переключатель напротив поля в неактивном состоянии |
Incremental backup schedule |
Расписание для автоматического создания инкрементных (incremental) бэкапов. Если бэкапы предполагается формировать вручную, оставьте переключатель напротив поля в неактивном состоянии |
Restore point creation schedule |
Расписание для автоматического создания точек восстановления (restore points). Если точки восстановления предполагается формировать вручную, оставьте переключатель напротив поля в неактивном состоянии |
Cleanup schedule |
Расписание для автоматического удаления избыточных бэкапов (см. Number of full backups и Number of differential backups выше) и бэкапов со статусами |
Для ввода какого-либо расписания переведите в активное положение соответствующий ему переключатель и введите cron-выражение в ставшем доступным поле ввода.
Чтобы перейти к альтернативному способу заполнения расписания, нажмите на иконку
— в результате откроется окно Cron expression generator, где можно установить расписание путем выбора секунд, минут, часов, дней, месяцев и лет.
Выбранные на форме параметры автоматически трансформируются в cron-выражение, которое будет сохранено как значение исходного поля с расписанием. Выражение и его описание можно увидеть в верхней части окна.
Для сохранения текущего выражения и возврата на основную страницу Configuration → Schedule нажмите Save.


Для сохранения всех изменений, введенных в форме Configuration → Schedule, нажмите Save; для их отмены — Revert.
Хранилища
В ADBM хранилище (storage) — это место, где хранятся резервные копии данных. Начиная с ADBM версии 2.6.5 хранилища представляют с собой отдельные объекты, которые вы можете создавать и изменять, и которые могут быть использованы в нескольких конфигурациях бэкапов. Для использования хранилища вы можете выбрать его в секции Storage в конфигурации бэкапа.
Добавление нового хранилища
-
Откройте вкладку Configuration → Storages и нажмите Add storage.
Вкладка Configuration → StoragesВкладка Configuration → Storages -
Заполните поля в секциях Alert settings for storage и General, описанные ниже. Для S3-хранилищ также заполните поля секции s3 configuration.
-
Нажмите Save.
Параметр | Описание | Значение по умолчанию |
---|---|---|
Almost Full |
Пороговое значение (в процентах) уровня заполненности хранилища, при котором должен появиться желтый индикатор и статус |
80 |
Critical |
Пороговое значение (в процентах) уровня заполненности хранилища, при котором должен появиться красный индикатор и статус |
90 |
Параметр | Описание | Значение по умолчанию |
---|---|---|
Storage name |
Уникальное название хранилища. Используется для выбора хранилища в конфигурации |
— |
Repository type |
Тип репозитория. Возможные значения:
|
posix |
Repository path |
Репозиторий, в котором будут храниться бэкапы и архив WAL-сегментов. Указанная директория должна быть предварительно создана и доступна с хостов Master и Segment. Можно использовать shared-директорию NFS, которая подключена ко всем сегмент-хостам. Если в кластере настроено зеркалирование сегментов, не используйте локальную директорию (созданную на сегментах) — в этом случае на хостах с зеркалами не будет необходимых stanza. Убедитесь, что вы установили один и тот же путь к репозиторию для соответствующих друг другу первичных (primary) и зеркальных (mirror) сегментов |
— |
S3 bucket size |
Объем дискового пространства, который требуется выделить для бэкапов в бакете.
Отображается, если в поле Repository type указано значение Значение параметра необходимо для расчета заполненности и статуса хранилища |
— |


Следующие параметры доступны, если в поле Repository type секции General указано значение s3
.
Параметр | Описание | Значение по умолчанию |
---|---|---|
URI Type |
Тип Endpoint для S3-хранилища. Возможные значения:
|
|
Bucket |
Бакет в S3-хранилище. Имя бакета не должно содержать точек |
— |
Endpoint |
Конечная точка (endpoint) для S3-хранилища |
— |
Key |
Ключ S3-хранилища |
— |
Key secret |
Секретный ключ S3-хранилища |
— |
Region |
Регион S3-хранилища |
— |
Upload chunk size |
Размер загружаемого чанка данных (part size — в терминологии S3). Обратите внимание, что ограничения, отображаемые во всплывающей подсказке ( |
5mb |
Server-side encryption options |
Определяет, требуется ли осуществлять шифрование данных резервных копий на стороне сервера. При активации переключателя становятся обязательны для заполнения поля Type и Key (см. ниже) |
false |
Type |
Тип шифрования данных на стороне сервера:
Поле обязательно для заполнения, если активирован переключатель Server-side encryption options. Значение самого ключа вводится в поле Key (см. ниже) |
— |
Key |
Ключ, используемый для шифрования данных резервных копий на стороне сервера. Тип ключа определяется в поле Type (см. выше). Поле обязательно для заполнения, если активирован переключатель Server-side encryption options. Для ввода данных поле становится доступно после выбора значения в выпадающем списке Type |
— |
Repository storage CA file |
PEM-файл от доверенного центра сертификации (Certificate Authority, CA) S3-хранилища. Для загрузки файла нажмите Upload |
— |
Certificate verification |
Необходима ли верификация сертификата S3-хранилища. При активации переключателя становится доступно для заполнения поле Repository storage CA file |
true |


Мониторинг хранилищ
Для мониторинга хранилищ используйте секцию Overview, доступную после применения конфигурации с этим хранилищем. Секция Overview позволяет отслеживать следующие параметры:
-
Availability. Показывает, доступно ли хранилище. Если ADBM не может получить доступ к хранилищу, бэкап не будет произведен.
-
Место в хранилище: общий объем (Total capacity), занятый объем (Used space), объем свободного пространства (Free space) и процент заполненности (Fill percentage).
Процент заполненности вычисляется как отношение занятого пространства к общему объему. Для хранилищ POSIX и CIFS общий объем рассчитывается автоматически. Для S3-хранилищ требуется вручную указать общий объем в поле S3 bucket size. Если не задать значение этого параметра, статус и метрики, связанные с заполненностью диска, будут недоступны.
-
Current status. В зависимости от заполненности каждое хранилище может иметь один из следующих статусов:
-
Sufficient space
— процент заполненности ниже значения, заданного в Alert settings for storage в параметре Almost Full. -
Almost Full
— процент заполненности выше значения, заданного в параметре Almost Full, но ниже значения Critical. -
Critical
— процент заполненности выше значения, заданного в параметре Critical. Чтобы избежать переполнения хранилища во время резервного копирования, можно использовать флаг Fail on low space, который означает, что формирование бэкапа не будет запущено, если хранилище имеет статусCritical
.
-
Эти метрики рассчитываются, когда вы применяете конфигурацию с выбранным хранилищем. После этого метрики и статус проверяются и обновляются каждую минуту.

