Создать расписание, по которому будут создаваться снимки дисков
Настроить автоматическое создание снимков дисков по расписанию
Чтобы настроить автоматическое создание снимков дисков по расписанию:
-
В консоли управления
выберите каталог, в котором находится диск. -
Перейдите в сервис Compute Cloud.
-
На панели слева выберите
Снимки дисков. -
На вкладке Расписания снимков нажмите Создать расписание снимков.
-
В блоке Расписание запуска:
-
Задайте параметры расписания:
Каждый день— укажите частоту и время запуска.По дням недели— укажите дни и время запуска.По месяцам— укажите частоту или месяцы и время запуска.Cron— укажите cron-выражение.
-
В поле Начало действия укажите дату, начиная с которой будет работать расписание.
-
-
В блоке Настройки хранения выберите политику хранения снимков:
- Хранить все снимки — будут храниться все снимки, созданные по этому расписанию.
- Только последние — укажите количество последних снимков, которые нужно хранить, или количество дней, за которые нужно хранить снимки. Остальные снимки, созданные по этому расписанию, будут удаляться автоматически.
Примечание
На количество и суммарный объем снимков в облаке действуют квоты.
-
(Опционально) В блоке Общая информация:
-
Введите имя расписания в формате:
- длина — от 3 до 63 символов;
- может содержать строчные буквы латинского алфавита, цифры и дефисы;
- первый символ — буква, последний — не дефис.
-
Укажите описание расписания.
-
Добавьте метки расписания.
-
-
(Опционально) В блоке Настройки снимка для снимков, которые будут созданы по этому расписанию:
- Укажите описание.
- Добавьте метки.
-
Нажмите Создать.
Дождитесь создания расписания. -
На открывшейся странице в блоке Диски нажмите Добавить диск. В открывшемся окне выберите диск, который нужно добавить к расписанию, и нажмите Сохранить.
Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.
По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id. Если вы обращаетесь к ресурсу по имени, поиск будет выполнен в каталоге по умолчанию. Если вы обращаетесь к ресурсу по идентификатору, поиск будет выполнен глобально — во всех каталогах с учетом прав доступа.
-
Посмотрите описание команд CLI для работы с расписаниями:
yc compute snapshot-schedule --help yc compute snapshot-schedule create --help -
Создайте расписание:
yc compute snapshot-schedule create <имя_расписания> \ --expression "<cron-выражение>" \ --start-at "<дата_и_время_начала>" \ --retention-period "<срок_хранения_снимков>" \ --description "<описание_расписания>" \ --labels "<метки_расписания>" \ --snapshot-description "<описание_снимка>" \ --snapshot-labels "<метки_снимка>"Где:
--expression— cron-выражение. Обязательный параметр.--start-at— дата и время начала расписания в формате RFC3339 .--retention-period— срок хранения снимков. Указывается в формате длительности, например:300ms,1.5hили2h45m. Используйте либо--retention-period, либо--snapshot-count.--snapshot-count— максимальное количество снимков для каждого диска. Используйте либо--snapshot-count, либо--retention-period.--description— описание расписания.--labels— метки расписания в форматеключ=значение.--snapshot-description— описание снимка.--snapshot-labels— метки снимка в форматеключ=значение.
Результат:
id: fd8uhc5qcinv******** folder_id: b1g681qpemb4******** created_at: "2026-05-25T21:03:22Z" name: my-schedule description: for my disks status: ACTIVE schedule_policy: start_at: "2027-01-02T15:04:05Z" expression: 30 0 * * * retention_period: 3600s snapshot_spec: description: my snapshotПримечание
Время создания снимка указывается в часовом поясе UTC±00:00
.Подробнее о команде
yc compute snapshot-schedule createв справочнике CLI. -
Получите идентификаторы дисков, чтобы добавить их в расписание:
yc compute disk list --format yamlРезультат:
- id: epdcq9g3co9s******** folder_id: e1ea8s8l71li******** created_at: "2022-10-13T14:37:44Z" ... instance_ids: - fhm1c7u23aiq******** disk_placement_policy: {}Создавать можно снимки сетевых дисков HDD, SSD и нереплицируемых SSD, а также сверхбыстрых сетевых хранилищ с тремя репликами (SSD).
Для нереплицируемых SSD и сверхбыстрых сетевых хранилищ с тремя репликами (SSD) момент времени, когда фиксируется содержимое диска, не детерминирован.
Для снимков с локальных дисков на выделенных хостах используйте сервис Yandex Cloud Backup (поддерживает ОС Ubuntu, CentOS, CentOS Stream и Windows Server).
-
Добавьте диски в расписание:
yc compute snapshot-schedule add-disks <имя_или_идентификатор_расписания> \ --disk-id <идентификатор_диска_1>,<идентификатор_диска_2>Результат:
done (3s) id: fc8e52mvchb2******** folder_id: e1ea8s8l71li******** ... expression: 36 14 */1 * * snapshot_count: "3" snapshot_spec: {}
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
Чтобы управлять инфраструктурой с помощью Terraform от имени сервисного аккаунта или пользовательских аккаунтов: аккаунта на Яндексе, федеративного аккаунта и локального пользователя, аутентифицируйтесь соответствующим способом.
-
Опишите в конфигурационном файле Terraform параметры ресурса, который необходимо создать:
resource "yandex_compute_snapshot_schedule" "default" { schedule_policy { expression = "<cron-выражение>" start_at = "<дата_и_время_начала>" } retention_period = "<срок_хранения_снимков>" name = "<название_расписания>" description = "<описание_расписания>" labels = { <ключ_метки_расписания> = "<значение_метки_расписания>" } snapshot_spec { description = "<описание_снимка>" labels = { <ключ_метки_снимка> = "<значение_метки_снимка>" } } disk_ids = ["<идентификатор_диска_1>", "<идентификатор_диска_2>"] }Где:
-
schedule_policy— параметры расписания:expression— cron-выражение. Обязательный параметр.start_at— дата и время в формате RFC3339 , с которого будет работать расписание.
-
retention_period— срок хранения снимков. Указывается в формате длительности, например:"300ms","1.5h"или"2h45m". Остальные снимки, созданные по этому расписанию, будут удаляться автоматически. Используйте либоretention_period, либоsnapshot_count. -
snapshot_count— максимальное количество снимков для каждого диска. Используйте либоsnapshot_count, либоretention_period.Примечание
На количество и суммарный объем снимков в облаке действуют квоты.
-
name— имя расписания в формате:- длина — от 3 до 63 символов;
- может содержать строчные буквы латинского алфавита, цифры и дефисы;
- первый символ — буква, последний — не дефис.
-
description— описание расписания. -
labels— метки расписания в формате<ключ> = "<значение>". -
snapshot_spec— параметры снимков, которые будут созданы по этому расписанию:description— описание снимка.labels— метки снимка в формате<ключ> = "<значение>".
-
disk_ids— идентификаторы дисков, для которых будут создаваться снимки.
Создавать можно снимки сетевых дисков HDD, SSD и нереплицируемых SSD, а также сверхбыстрых сетевых хранилищ с тремя репликами (SSD).
Для нереплицируемых SSD и сверхбыстрых сетевых хранилищ с тремя репликами (SSD) момент времени, когда фиксируется содержимое диска, не детерминирован.
Для снимков с локальных дисков на выделенных хостах используйте сервис Yandex Cloud Backup (поддерживает ОС Ubuntu, CentOS, CentOS Stream и Windows Server).
Подробнее о параметрах ресурса
yandex_compute_snapshot_scheduleв документации провайдера Terraform. -
-
Создайте ресурсы:
-
В терминале перейдите в директорию с конфигурационным файлом.
-
Проверьте корректность конфигурации с помощью команды:
terraform validateЕсли конфигурация является корректной, появится сообщение:
Success! The configuration is valid. -
Выполните команду:
terraform planВ терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply -
Подтвердите изменения: введите в терминале слово
yesи нажмите Enter.
-
После этого в указанном каталоге будет создано расписание. Проверить появление расписания и его настройки можно в консоли управления
yc compute snapshot-schedule get <имя_расписания>
-
Получите список дисков с помощью метода REST API list для ресурса Disk или вызова gRPC API DiskService/List.
Создавать можно снимки сетевых дисков HDD, SSD и нереплицируемых SSD, а также сверхбыстрых сетевых хранилищ с тремя репликами (SSD).
Для нереплицируемых SSD и сверхбыстрых сетевых хранилищ с тремя репликами (SSD) момент времени, когда фиксируется содержимое диска, не детерминирован.
Для снимков с локальных дисков на выделенных хостах используйте сервис Yandex Cloud Backup (поддерживает ОС Ubuntu, CentOS, CentOS Stream и Windows Server).
-
Создайте расписание снимков с помощью метода REST API create для ресурса SnapshotSchedule или вызова gRPC API SnapshotScheduleService/Create.
Снимки будут автоматически создаваться и удаляться, только пока расписание работает (статус ACTIVE).
Примеры
Снимки создаются каждый день
Чтобы настроить ежедневное создание снимков:
-
Создайте расписание с помощью cron-выражения:
yc compute snapshot-schedule create sched-1 \ --description "Ежедневное" \ --expression "10 16 ? * *" \ --start-at "2022-12-31T19:04:05+03:00" \ --snapshot-count 7 \ --labels "machine=file-server"В результате будет создано расписание:
- С именем
sched-1и описаниемЕжедневное. - С созданием снимков каждый день в 19:10 по МСК.
- С датой начала 31 декабря 2022 г. 19:04 по МСК.
- С сохранением последних семи снимков.
- С меткой
machineи значением меткиfile-server.
- С именем
-
Получите идентификаторы дисков, чтобы добавить их в расписание:
yc compute disk list --format yamlРезультат:
- id: epdcq9g3co9s******** folder_id: e1ea8s8l71li******** created_at: "2022-10-13T14:37:44Z" name: disk-2 type_id: network-hdd zone_id: ru-central1-a size: "21474836480" block_size: "4096" product_ids: - f2euv1kekdgv******** status: READY source_image_id: fd88d14a6790******** instance_ids: - ephothb6lppn******** disk_placement_policy: {} - id: fhm7mip40dqh******** folder_id: e1ea8s8l71li******** created_at: "2022-10-10T05:00:04Z" name: disk-1 type_id: network-hdd zone_id: ru-central1-a size: "21474836480" block_size: "4096" product_ids: - f2euv1kekdgv******** status: READY source_image_id: fd88d14a6790******** instance_ids: - fhm1c7u23aiq******** disk_placement_policy: {} -
Добавьте диски в расписание:
yc compute snapshot-schedule add-disks sched-1 \ --disk-id epdcq9g3co9s********,fhm7mip40dqh********Результат:
done (3s) id: fc8bplhqmh2b******** folder_id: e1ea8s8l71li******** created_at: "2022-10-03T13:28:01Z" name: sched-1 description: Ежедневное labels: machine: file-server status: ACTIVE schedule_policy: start_at: "2022-12-31T16:04:05Z" expression: 10 16 ? * * snapshot_count: "7" snapshot_spec: {}