Можно ли сделать резервную копию LVM-диска на внешнем сервере?

Можно ли сделать резервную копию LVM-диска на внешнем сервере?

За последний месяц я размышлял над тем, как работает LVM. Первоначальная мысль была, что это очень гибко, я был удивлен, что система может работать при перемещении диска на другой локальный диск.


Я не смог найти много информации об этом в сети, но, похоже, это должно быть возможно сделать. Возможно, это непрактично или вообще не является хорошим решением (?). Статьи, которые я прочитал, все были посвящены локальным дискам, а не внешним.

Когда я говорю «резервное копирование», я имею в виду весь диск/раздел.нетснимок.

Допустим, у меня есть 4 сервера, на всех из которых работает LVM, и я хотел бы создать резервную копию всех дисков на большом сервере хранения данных. Возможно ли это?

Если это возможно, то какие недостатки у такой конфигурации?

решение1

Да.

Это широко используется и фактически подразумевает создание моментальных снимков для обеспечения согласованности резервной копии.

Например, резервное копирование хранилищ виртуальных машин (и контейнеров) в Proxmox VE осуществляется следующим образом:

  • Приостановить работу виртуальной машины. В Linux нет возможности атомарно сделать несколько снимков, поэтому единственный способ сделать резервную копиювседисков в один и тот же момент времени, чтобы убедиться, что виртуальная машина не сможет ничего сделать, пока все снимки не будут готовы.
  • Снимок всех дисков. Этот процесс относительно быстрый
  • Отключить ВМ. Время, в течение которого ВМ была недоступна, невелико, вплоть до того, что это незаметно
  • Отправьте образы всех снимков в резервное хранилище. Это долгий процесс. Но тот факт, что это снимки, позволяет нам иметь согласованное резервное копирование, в то время как VM все еще может работать. Состояние резервной копии будет соответствовать моменту, когда VM была впервые приостановлена
  • Удалить все снимки.

Это былоупрощенныйописание; на самом деле PVE также использует некоторые трюки в Qemu для эмуляции снимков на резервном хранилище, где такой функции нет, но это не имеет отношения к вопросу.

Плюсы уже описаны. Минусы, которые я могу придумать, это необходимость иметь некоторое свободное место в VG для хранения этих снимков, и объем пространства в целом невозможно предсказать, он зависит от количества операций ввода-вывода, которые выполняет VM, пока данные отправляются в хранилище, что в свою очередь зависит от скорости ввода-вывода, размера виртуального диска и пропускной способности сети. На практике у меня никогда не было с этим проблем.

Я описал конкретный вариант использования, но что бы вы ни делали, детали процесса будут теми же.

решение2

Резервное копирование полных данных на отдельное удаленное хранилище с Linux LVM — непростая задачаодин. Более реалистично, если снимки LVM будут скопированы в другое место с помощью другого агента резервного копирования.

Предположим, что дизайн восстановления требует полной копии на уровне блока, независимо от исходной группы томов или ее физических томов-членов. Снимки делать легко, но они зависят от исходной VG и не отвечают этому требованию. LVM может зеркалировать и разделять тома, но процедура будет более сложной.

  • Создайте логические тома raid1, убедитесь, что их физические тома находятся в отдельных системах хранения и синхронизированы.
  • Разделить изображение зеркала на новый LVс lvconvert --splitmirrors.
  • Разделите LV на другую VG с помощью vgsplit.

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

Как дополнительные функции блочного уровня, сам LVM не предоставляет доступ к удаленному хранилищу. Конечно, с подходящим SAN вы можете получить доступ к общему массиву хранения через оптоволоконный канал или iSCSI. Эти LUN могут использоваться как LVM PV. Сделать это сложно с точки зрения эксплуатации, так как во многих случаях такие SAN не используются, например, при установке операционной системы на локальном хранилище. И такие SAN, как правило, находятся на небольшом расстоянии и нетерпимы к потерям. Вставка зеркала в защитное хранилище для всего может привести к экстремальным требованиям к производительности, чтобы успевать за записями на первичном.

Более распространенным является копирование снимков с помощью какого-либо другого инструмента. Сделайте снимок исходного LV. Создайте VG и LV на отдельном защитном хранилище. Либо сделайте резервное копирование на основе блоков, например, с помощью dd через ssh, либо смонтируйте снимок и сделайте резервное копирование на основе файлов. Удалите снимок LV.

Связанный контент