Документация VMmanager 6 (администратор)

Резервные копии. Общая информация

ISPSystem

Резервная копия — это образ диска виртуальной машины (ВМ), который используется для её восстановления. В отличие от пользовательских образов, резервные копии содержат все настройки ВМ. Например, сетевые настройки, пароли и т.д.

Вы можете создать резервную копию:

  • на узле кластера, где находится исходная ВМ — резервные копии создаются в директории хранения образов. При миграции ВМ резервные копии перемещаются вместе с ней на другой узел кластера.

    Обратите внимание!

    При удалении ВМ её резервные копии удаляются. Чтобы получить копию ВМ, которая будет сохранена после удаления оригинальной ВМ, создайте пользовательский образ.

  • на внешнем хранилище — резервная копия сначала создаётся на узле кластера, а затем копируется в хранилище. По завершении копирования резервная копия удаляется с узла кластера. Подробнее о настройке хранилища см. Хранилища резервных копий.

Резервные копии можно создавать автоматически по заданному расписанию. Подробнее см. в статье Автоматическое создание резервных копий.

Алгоритм создания резервной копии


KVM-кластер

Чтобы выполнить резервное копирование, VMmanager:

  1. Cоздаёт снапшот ВМ. В файловом хранилище снапшот создаётся в директории хранения ВМ (по умолчанию — /vm), в LVM-хранилище — в LV, где хранится исходная ВМ, в Ceph-хранилище — на узле кластера Ceph.
  2. Перемещает информацию из снапшота в директорию хранения образов на узле кластера (по умолчанию — /image). Для создания архива платформа использует утилиту zstd.
  3. Удаляет исходный файл снапшота.
  4. Если копия должна быть создана на внешнем хранилище:
    1. Оптимизирует архив снапшота с помощью утилиты virt-sparsify
    2. Перемещает архив снапшота на внешнее хранилище.

Обратите внимание!

Если вы используете файловое хранилище, для создания резервной копии на узле кластера должно быть свободное место, в два раза превышающее объём диска ВМ. Например, для создания копии ВМ с диском 20 Гб на узле кластера должно быть свободно не менее 40 Гб. 

LXD-кластер

Чтобы выполнить резервное копирование, VMmanager:

  1. Создаёт резервную копию ВМ в директории /var/snap/lxd/common/lxd/backups/ на узле кластера.
  2. Создаёт архив резервной копии в директории /var/snap/lxd/common/lxd/backups/instances/ на узле кластера. Для создания архива платформа использует утилиту zstd.
  3. Переносит архив резервной копии в директорию хранения образов на узле кластера (по умолчанию — /image).
  4. Удаляет резервную копию ВМ.
  5. Если копия должна быть создана на внешнем хранилище, перемещает архив на внешнее хранилище.

Обратите внимание!

Для создания резервной копии на узле кластера должно быть свободное место, примерно в 1,5 раза превышающее объём диска ВМ. Например, для создания копии ВМ с диском 20 Гб на узле кластера должно быть свободно не менее 30 Гб.

Ограничения

Одновременно на узле кластера может выполняться не более одной операции:

  • создания резервной копии;
  • копирования на внешнее хранилище.

Внешнее хранилище единовременно может принимать только одну резервную копию. Таким образом, если хранилище используется несколькими узлами кластера, одновременное сохранение на нём копий ВМ с нескольких узлов невозможно.

Особенности создания резервных копий по расписанию


При работе по расписанию перед копированием ВМ на внешнее хранилище VMmanager проверяет возможность этой операции. Для этого платформа последовательно рассчитывает хватит ли места на внешнем хранилище для каждой ВМ. Если места для ВМ в хранилище достаточно, VMmanager создаст задачу на резервное копирование.

Например, нужно создать копии для виртуальных машин VM1 (объём диска 40 Гб), VM2 (объём диска 20 Гб) и VM3 (объём диска 10 Гб). На внешнем хранилище свободно 55 Гб. Для этого VMmanager:

  1. Проверяет хватит ли в хранилище места для VM1.
  2. Так как места достаточно, создаёт задачу на копирование VM1.
  3. Вычисляет сколько останется места после копирования VM1: 55 Гб - 40 Гб = 15 Гб
  4. Проверяет хватит ли в хранилище места для VM2.
  5. Так как места недостаточно, не создаёт задачу на копирование.
  6. Проверяет хватит ли в хранилище места для VM3.
  7. Так как места достаточно, создаёт задачу на копирование VM3.
  8. Последовательно копирует VM1 и VM3 во внешнее хранилище.
Спасибо за ваш отзыв!
Была ли полезна статья?
Уточните, почему:

статья не соответствует названию

статью сложно понять

в статье нет ответа на мой вопрос

рекомендации из статьи не помогли

другая причина

Расскажите, что вам не понравилось в статье: