Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску

В контексте виртуализации , где гостевая симуляция всего компьютера на самом деле представляет собой просто программную виртуальную машину (ВМ), работающую на главном компьютере под гипервизором , миграция (также известная как телепортация [1] ) - это процесс, с помощью которого выполняется виртуальная машина перемещается с одного физического хоста на другой с минимальными перебоями в обслуживании или без них.

Субъективные эффекты [ править ]

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

Объективные эффекты [ править ]

Фактический процесс сильно зависит от конкретного используемого пакета виртуализации, но в целом процесс выглядит следующим образом:

  1. Регулярные снимки виртуальной машины (ее смоделированное хранилище на жестком диске , ее память и ее виртуальные периферийные устройства) делаются в фоновом режиме гипервизором или набором административных скриптов .
  2. Каждый новый снимок добавляет файл дифференциального наложения в верхнюю часть стека, который в целом полностью описывает машину. Можно писать только на самый верхний оверлей.
  3. Поскольку старые оверлеи доступны только для чтения, их можно безопасно скопировать на другую машину - хост резервного копирования. Это делается через регулярные промежутки времени, и каждое наложение нужно копировать только один раз.
  4. Когда запрашивается операция миграции, виртуальная машина приостанавливается, а ее текущее состояние сохраняется на диск.
  5. Эти новые окончательные файлы наложения передаются на хост резервного копирования.
  6. Поскольку это новое текущее состояние состоит только из изменений, сделанных с момента последней синхронизации резервного копирования, для многих приложений очень мало данных для передачи, и это происходит очень быстро.
  7. Гипервизор на новом хосте возобновляет работу гостевой виртуальной машины.
  8. В идеале административные сценарии возобновляют операции резервного копирования, новый хост становится основным, а предыдущий хост получает резервные копии, подготавливая его для последующей операции миграции.

Обратите внимание, что на практике требуются регулярные операции обслуживания для «слияния» стека моментальных снимков с более управляемым количеством файлов, для повышения производительности и оптимизации хранения (избыточные перезаписи объединяются).

Отношение к аварийному переключению [ править ]

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

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

Ссылки [ править ]