Назад | Перейти на главную страницу

Почему моментальные снимки считаются временными резервными копиями, а не настоящими резервными копиями?

Я использую VMware ESXi. В нашей команде мы используем моментальные снимки для долгосрочного резервного копирования.

Затем мы столкнулись с такими проблемами, как переполнение памяти и зависание сервера.

Я начал читать статьи в базе знаний VMware и везде. Везде рекомендовалось долгое время не иметь снимков.

Даже VMware рекомендовала хранить снимки не более трех дней.

Но наша команда все время просила нас сделать как минимум два постоянных снимка (до удаления виртуальной машины). Иногда мы можем использовать виртуальную машину в течение года).

  1. один снимок предназначен для свежего состояния машины. (Поэтому, когда мы завершим тестирование приложения, мы вернемся к новому состоянию и установим другое приложение) (Если я не разрешил это, мне часто может потребоваться разместить виртуальную машину.)

  2. Следующий снимок для поддержания виртуальной машины в каком-либо состоянии (возможно, они нашли бы проблему и сохраняли это состояние в течение некоторого времени. Или они могут установить предварительные условия для приложения и держать машину в готовности к тестированию).

По логике, их потребности кажутся справедливыми. Но если я позволю, я должен позволить им хранить снимки в течение длительного времени. Мы не используем нашу виртуальную машину в качестве почтового сервера или сервера базы данных.

Почему долгое хранение снимков плохо сказывается?

Почему моментальные снимки считаются временными, а не настоящими резервными копиями?

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

  • Дисковый ввод-вывод для виртуальной машины намного медленнее.
  • Эти «дельта-файлы» со временем растут, поскольку виртуальная машина выполняет все больше и больше операций ввода-вывода с диска.
  • Когда моментальный снимок удаляется, изменения, хранящиеся в "дельта-файлах", необходимо объединить обратно в основные файлы .VMDK, и это очень медленно и требует много времени, если моментальный снимок был активен в течение длительного времени.

Действительно, лучше не хранить активные снимки в течение длительного времени. Если вам нужно долгосрочное резервное копирование виртуальной машины в определенном состоянии, вы можете просто скопировать виртуальную машину в другое место: это не повлияет на производительность виртуальной машины, и вы в любом случае будете использовать меньше дискового пространства, чем то, что долго- моментальные снимки со временем будут заполняться.

Кроме того, наличие копии виртуальной машины, хранящейся в другом месте, действительно поможет вам, если вы потеряете виртуальную машину: моментальные снимки хранятся вместе с виртуальной машиной, которой они принадлежат, и полезны только в том случае, если виртуальная машина доступна; они совершенно бесполезны в случае реальной потери данных (например, сбоя хранилища данных) и, следовательно, не могут использоваться в качестве реальных резервных копий.

Вот некоторая официальная документация по снимкам:

http://kb.vmware.com/selfservice/microsites/search.do?cmd=displayKC&externalId=1015180

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

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

В этом сценарии все изменения между моментом времени, когда были сделаны снимки VMware, и моментом сбоя просто теряются.

Поэтому я рекомендую делать снимки состояния VMware только для определенной цели и удалять их, как только они будут служить этой цели.

http://kb.vmware.com/kb/1025279

Некоторые форматы моментальных снимков, используемые vmware, со временем снижают производительность, поскольку в них хранится больше данных. Формат "разреженного экстента", который, как мне кажется, по-прежнему используется по умолчанию в последних версиях, похоже, не имеет этого свойства (вы смотрите на 3 чтения за чтение и до 2 операций чтения или 3 записи за запись, но это не так. не становится хуже по мере заполнения диска). Итак, я не совсем уверен, что свойство «не хранить снимки надолго» обязательно правильный совет в любое время.

Однако я заметил одну вещь: слияние снимков требует возраст по мере того, как они становятся большими. В зависимости от вашего варианта использования это может быть или не быть проблемой.

Что касается вашего другого вопроса о «временном резервном копировании», это просто - резервное копирование предназначено для того, чтобы пережить потерю основного хранилища данных. Поскольку снимки и исходные данные хранятся вместе (а снимок бесполезен без базового образа), вы теряете большую часть - следовательно, снимок ни в коем случае не является резервной копией.

В качестве решения для запроса вашей команды на создание образа чистой установки или определенного состояния я бы рекомендовал использовать шаблоны. Шаблоны клонируют виртуальную машину (в основном просто копию) в состояние, которое нельзя включить или изменить, его можно просто использовать как ссылку на клонированные копии. Так, например, если у меня есть шаблон «Установка Debian по умолчанию», и группа серверов запрашивает три новых сервера, я просто создаю три новых клона, настраиваю и готово.

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

Идея моментального снимка - это скорее точка восстановления, прежде чем вы выполните некоторую реконфигурацию виртуальной машины (установите новое программное обеспечение, крупное обновление и т. Д.). Так что, если вы его исправите, вы можете вернуться к тому моменту, когда он работал, и уйти со свистом, не обвиняя никого из своих коллег :)

И общая идея заключается в том, что вы в какой-то момент в будущем объединитесь (когда вы сможете отключить его на некоторое время, не затрагивая пользователей).

Вы не должны хранить моментальный снимок vmware по причинам, уже описанным другими здесь, но то, что делают многие люди, - это взять снимок vmware и после этого сделать его чисто (зависит от гостя, что на самом деле делает снимок) вы сделайте снимок вашего массива хранения, чтобы получить, а затем вы можете сделать резервную копию / скопировать / архивировать / и т. д. этот снимок. После того, как вы создали реальный снимок вашего массива, вам необходимо как можно скорее удалить снимок vmware.