Создать политику резервного копирования
Создание политики доступно после активации сервиса Cloud Backup.
После активации автоматически создаются следующие политики резервного копирования:
Default daily
— ежедневное создание инкрементальной копии ВМ с сохранением последних 15 копий.Default weekly
— еженедельное создание инкрементальной копии ВМ с сохранением последних 15 копий.Default monthly
— ежемесячное создание инкрементальной копии ВМ с сохранением последних 15 копий.
Примечание
Резервные копии создаются по локальному времени ВМ. Возможно небольшое отставание от расписания в зависимости от текущей нагрузки на сервис.
-
В консоли управления
выберите каталог, в котором нужно создать политику резервного копирования. -
В списке сервисов выберите Cloud Backup.
-
Перейдите на вкладку
Политики копирования. -
Нажмите кнопку Создать политику.
-
На странице создания политики резервного копирования:
-
Введите имя. Требования к имени:
- длина — от 3 до 63 символов;
- может содержать строчные буквы латинского алфавита, цифры и дефисы;
- первый символ — буква, последний — не дефис.
-
В поле Создавать копии выберите частоту создания копий:
Каждый час
.Каждый день
— укажите время создания копий.Каждую неделю
— укажите дни недели и время создания копий.По месяцам
— укажите месяцы, дни месяца и время создания копий.
-
Выберите тип резервных копий:
Инкрементальный
— сохраняются только отличия от предыдущей копии.Полный
— сохраняются все данные виртуальной машины.
-
Выберите политику хранения копий:
Хранить все копии
— будут храниться все копии, созданные по этой политике резервного копирования.Только последнюю
— укажите количество последних копий, которые нужно хранить, или количество дней, недель или месяцев, копии за которые нужно хранить. Остальные копии будут удаляться автоматически.
Если политика создана с помощью консоли управления, последующие изменения настроек правил хранения резервных копий будут задействованы после создания очередной резервной копии.
-
-
Нажмите кнопку Сохранить.
Если у вас еще нет интерфейса командной строки Yandex Cloud, установите и инициализируйте его.
По умолчанию используется каталог, указанный в профиле CLI. Вы можете указать другой каталог с помощью параметра --folder-name
или --folder-id
.
-
Посмотрите описание команды CLI для создания политики резервного копирования:
yc backup policy create --help
-
Опишите конфигурацию создаваемой политики резервного копирования в виде схемы данных в формате JSON
.Пример файла конфигурации
{ "compression": "NORMAL", "format": "AUTO", "multiVolumeSnapshottingEnabled": true, "preserveFileSecuritySettings": true, "reattempts": { "enabled": true, "interval": { "type": "SECONDS", "count": "30" }, "maxAttempts": "30" }, "silentModeEnabled": true, "splitting": { "size": "1099511627776" }, "vmSnapshotReattempts": { "enabled": true, "interval": { "type": "MINUTES", "count": "5" }, "maxAttempts": "3" }, "vss": { "enabled": true, "provider": "TARGET_SYSTEM_DEFINED" }, "archive": { "name": "'[Machine Name]-[Plan ID]-[Unique ID]A'" }, "performanceWindow": { }, "retention": { "rules": [ { "maxCount": "10" } ], "beforeBackup": true }, "scheduling": { "backupSets": [ { "time": { "weekdays": [ "MONDAY" ], "repeatAt": [ { "minute": "5" } ], "type": "WEEKLY" } } ], "enabled": true, "maxParallelBackups": "2", "randMaxDelay": { "type": "MINUTES", "count": "30" }, "scheme": "ALWAYS_INCREMENTAL", "weeklyBackupDay": "MONDAY" }, "cbt": "ENABLE_AND_USE", "fastBackupEnabled": true, "quiesceSnapshottingEnabled": true }
Сохраните готовую конфигурацию в файл с расширением
.json
.В примере приведена конфигурация политики резервного копирования, которая будет создавать инкрементальные резервные копии виртуальной машины каждый понедельник в 00:05 (UTC+0). При этом храниться будут только десять последних копий.
См. полную спецификацию политики резервного копирования.
-
Создайте политику резервного копирования:
yc backup policy create \ --name <имя_политики> \ --settings-from-file <путь_к_файлу_конфигурации>
Где:
--name
— имя создаваемой политики резервного копирования.--settings-from-file
— путь к файлу с конфигурацией политики резервного копирования в формате JSON.
Результат:
id: cbq5rwepukxn******** name: test2 created_at: "2023-07-03T08:24:16.735555276Z" updated_at: "2023-07-03T08:24:16.746377738Z" enabled: true settings: compression: NORMAL format: AUTO multi_volume_snapshotting_enabled: true preserve_file_security_settings: true reattempts: enabled: true interval: type: SECONDS count: "30" max_attempts: "30" silent_mode_enabled: true splitting: size: "1099511627776" vm_snapshot_reattempts: enabled: true interval: type: MINUTES count: "5" max_attempts: "3" vss: enabled: true provider: TARGET_SYSTEM_DEFINED archive: name: '''[Machine Name]-[Plan ID]-[Unique ID]A''' performance_window: {} retention: rules: - max_count: "10" before_backup: true scheduling: backup_sets: - time: weekdays: - MONDAY repeat_at: - minute: "5" type: WEEKLY enabled: true max_parallel_backups: "2" rand_max_delay: type: MINUTES count: "30" scheme: ALWAYS_INCREMENTAL weekly_backup_day: MONDAY cbt: ENABLE_AND_USE fast_backup_enabled: true quiesce_snapshotting_enabled: true folder_id: d2q792qpemb4********
Подробнее о команде читайте в справочнике CLI.
Terraform
Terraform распространяется под лицензией Business Source License
Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
Чтобы создать политику резервного копирования:
-
Опишите в конфигурационном файле Terraform параметры политики резервного копирования:
resource "yandex_backup_policy" "my_policy" { archive_name = "[Machine Name]-[Plan ID]-[Unique ID]a" cbt = "USE_IF_ENABLED" compression = "NORMAL" fast_backup_enabled = true format = "AUTO" multi_volume_snapshotting_enabled = true name = "<имя_политики_резервного_копирования>" performance_window_enabled = true preserve_file_security_settings = true quiesce_snapshotting_enabled = true silent_mode_enabled = true splitting_bytes = "9223372036854775807" vss_provider = "NATIVE" reattempts { enabled = true interval = "1m" max_attempts = 10 } retention { after_backup = false rules { max_age = "365d" repeat_period = [] } } scheduling { enabled = false max_parallel_backups = 0 random_max_delay = "30m" scheme = "ALWAYS_INCREMENTAL" weekly_backup_day = "MONDAY" execute_by_time { include_last_day_of_month = true monthdays = [] months = [1,2,3,4,5,6,7,8,9,10,11,12] repeat_at = ["04:10"] repeat_every = "30m" type = "MONTHLY" weekdays = [] } } vm_snapshot_reattempts { enabled = true interval = "1m" max_attempts = 10 } }
Где:
-
archive_name
— имя сгенерированных архивов. Необязательный параметр. Переменные параметра:Machine Name
— имя виртуальной машины.Plan ID
— идентификатор плана.Unique ID
— уникальный идентификатор.
Последний символ имени сгенерированных архивов не должен быть переменной.
-
cbt
— конфигурация отслеживания содержимого резервных копий. Необязательный параметр. Принимает значения:CHANGED_BLOCK_TRACKING_UNSPECIFIED
— не задано.USE_IF_ENABLED
— использовать, если включено.ENABLE_AND_USE
— включить и использовать.DO_NOT_USE
— не использовать.
Значение по умолчанию
DO_NOT_USE
. -
compression
— степень сжатия резервной копии. Необязательный параметр. Принимает значения:NORMAL
— стандартное сжатие.HIGH
— сильное сжатие.MAX
— максимальное сжатие.OFF
— отключено.
Значение по умолчанию
NORMAL
. -
fast_backup_enabled
— быстрое резервное копирование для отслеживания изменений в файлах. Когда включено, наличие изменений в файле определяется по его размеру и временной метке. Когда выключено, для проверки наличия изменений содержимое файла сравнивается с содержимым, сохраненным в резервной копии. Принимает значенияtrue
илиfalse
. -
format
— формат резервной копии. Необязательный параметр. Принимает значения:VERSION_11
— устаревший формат, не рекомендуется его использовать.VERSION_12
— рекомендованный формат для быстрого резервного копирования и восстановления.AUTO
— автоматический выбор формата. По умолчанию используетсяVERSION_12
. Исключение — создание инкрементальных копий для образов, созданных в других версиях.
-
multi_volume_snapshotting_enabled
— создание резервных копий нескольких томов одновременно. Необязательный параметр. Принимает значенияtrue
илиfalse
. -
name
— имя политики резервного копирования. -
performance_window_enabled
— временные окна для ограничения производительности резервного копирования. Необязательный параметр. Принимает значенияtrue
илиfalse
. Значение по умолчаниюfalse
. -
preserve_file_security_settings
— сохранение настроек безопасности файлов. Необязательный параметр. Принимает значенияtrue
илиfalse
. Значение по умолчаниюtrue
. Рекомендуется использовать значениеtrue
. -
quiesce_snapshotting_enabled
— режимquiescing
при создании резервных копий. Необязательный параметр. Принимает значенияtrue
илиfalse
. Значение по умолчаниюfalse
. -
silent_mode_enabled
— режим тишины, предполагающий минимальное взаимодействие с пользователем. Необязательный параметр. Принимает значенияtrue
илиfalse
. Значение по умолчаниюtrue
. -
splitting_bytes
— параметр для определения размера для разделения резервных копий. Необязательный параметр. Значение по умолчанию9223372036854775807
. -
vss_provider
— настройки VSS-службы. Необязательный параметр. Принимает значенияNATIVE
илиTARGET_SYSTEM_DEFINED
. Значение по умолчаниюNATIVE
. -
reattempts
— параметры повторения операций резервного копирования в случае сбоев:enabled
— повторять попытки создать резервную копию при возникновении некритических ошибок (например, при сбое подключения к целевому диску). Необязательный параметр. Принимает значенияtrue
илиfalse
. Значение по умолчаниюtrue
.interval
— интервал повторных попыток. Необязательный параметр. Значение по умолчанию5m
.max_attempts
— максимальное количество попыток. При достижении максимального количества повторных попыток операция будет считаться неуспешной. Необязательный параметр. Значение по умолчанию5
.
-
retention
— параметры хранения резервных копий:-
after_backup
— применять правила хранения резервных копий после завершения операции резервного копирования. Принимает значенияtrue
илиfalse
. -
rules
— правила хранения резервных копий:max_age
— удаление резервных копий, возраст которых превышаетmax_age
.max_count
— удаление резервных копий, если их количество превышаетmax_count
.repeat_period
— период применения правил.
Атрибуты
max_age
иmax_count
— взаимоисключающие. Использование одного делает невозможным использование другого.
-
-
scheduling
— параметры расписания резервного копирования:-
enabled
— включение планирования резервного копирования. Необязательный параметр. Принимает значенияtrue
илиfalse
. Значение по умолчаниюtrue
. -
max_parallel_backups
— максимальное количество процессов резервного копирования, которые могут выполняться параллельно. Необязательный параметр. Значение по умолчанию0
— неограниченное количество процессов. -
random_max_delay
— настройка случайной задержки между выполнением параллельных задач. Необязательный параметр. Значение по умолчанию30m
. -
scheme
— схема расписания резервного копирования. Необязательный параметр. Принимает значения:ALWAYS_INCREMENTAL
— всегда инкрементальная.ALWAYS_FULL
— всегда полная.WEEKLY_FULL_DAILY_INCREMENTAL
— еженедельно: полная, ежедневно: инкрементальная.WEEKLY_INCREMENTAL
— еженедельно: инкрементальная.
Значение по умолчанию
ALWAYS_INCREMENTAL
. -
weekly_backup_day
— день недели, в который будут выполняться еженедельные операции копирования. Необязательный параметр. Значение по умолчаниюMONDAY
. -
execute_by_time
— настройки выполнения резервного копирования в определенное время:include_last_day_of_month
— выполнение резервного копирования в последний день месяца. Необязательный параметр. Принимает значенияtrue
илиfalse
. Значение по умолчаниюfalse
.monthdays
— список дней, когда применяется расписание. Необязательный параметр. Используется в форматеMONTHLY
.months
— список месяцев, когда применяется расписание. Необязательный параметр.repeat_at
— список времени в форматеЧЧ:ММ
(24-часовой формат), когда применяется расписание. Необязательный параметр.repeat_every
— частоты повторения резервного копирования. Необязательный параметр.type
— тип расписания. Принимает значения:HOURLY
(ежечасно),DAILY
(ежедневно),WEEKLY
(еженедельно),MONTHLY
(ежемесячно).weekdays
— список дней недели, когда будет применена резервная копия. Используется в форматеWEEKLY
.
-
-
vm_snapshot_reattempts
— параметры повторения операций создания резервных копий в случае сбоев:enabled
— повторение попыток создать резервную копию при возникновении ошибок. Необязательный параметр. Принимает значенияtrue
илиfalse
. Значение по умолчаниюtrue
.interval
— длительность интервала между повторениями попыток. Необязательный параметр. Значение по умолчанию5m
.max_attempts
— максимальное количество попыток. При достижении максимального количества повторных попыток операция будет считаться неуспешной. Необязательный параметр. Значение по умолчанию5
.
Более подробную информацию о параметрах ресурса
yandex_backup_policy
см. в документации провайдера . -
-
Создайте ресурсы:
-
В терминале перейдите в папку, где вы отредактировали конфигурационный файл.
-
Проверьте корректность конфигурационного файла с помощью команды:
terraform validate
Если конфигурация является корректной, появится сообщение:
Success! The configuration is valid.
-
Выполните команду:
terraform plan
В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply
-
Подтвердите изменения: введите в терминале слово
yes
и нажмите Enter.
Terraform создаст все требуемые ресурсы. Проверить появление ресурсов можно в консоли управления
или с помощью команды CLI:yc backup policy list
-
Чтобы создать политику резервного копирования, воспользуйтесь методом REST API create для ресурса Policy или вызовом gRPC API PolicyService/Create.