Живая миграция
В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
Динамическая миграция , также называемая миграцией , относится к процессу перемещения работающей виртуальной машины (ВМ) или приложения между разными физическими машинами без отключения клиента или приложения. Память, хранилище и сетевое подключение виртуальной машины передаются с исходной гостевой машины на целевую. Время между остановкой виртуальной машины или приложения в источнике и возобновлением ее работы в пункте назначения называется временем простоя. Когда время простоя виртуальной машины во время живой миграции достаточно мало и не заметно для конечного пользователя, это называется «бесшовной» живой миграцией.
Живая миграция виртуальных машин
[ редактировать ]Двумя методами перемещения состояния памяти виртуальной машины из источника в место назначения являются миграция памяти перед копированием и миграция памяти после копирования.
Предварительная миграция памяти
[ редактировать ]Фаза предварительного копирования
[ редактировать ]На этапе подготовки к копированию [1] Гипервизор копирует все страницы памяти из источника в место назначения , в то время как виртуальная машина все еще работает в источнике. Если некоторые страницы памяти изменятся (становятся «грязными») на этапе предварительного копирования, они будут копироваться снова и снова в течение нескольких «раундов предварительного копирования». Обычно этап предварительного копирования заканчивается, когда количество оставшихся испорченных страниц становится достаточно малым, чтобы перейти к короткому этапу остановки и копирования. Однако если виртуальная машина продолжает загрязнять память быстрее, чем ее можно повторно скопировать в место назначения, то фаза предварительного копирования завершится по истечении установленного срока или максимального количества раундов предварительного копирования, чтобы начать следующую фазу остановки и копирования.
Этап остановки и копирования
[ редактировать ]После этапа предварительного копирования работа виртуальной машины будет приостановлена на исходном хосте, оставшиеся грязные страницы будут скопированы в пункт назначения, а работа виртуальной машины возобновится в пункте назначения. Время простоя на этом этапе может варьироваться от нескольких миллисекунд до секунд в зависимости от количества грязных страниц, переданных во время простоя. Виртуальные машины, которые загрязняют много памяти на этапе предварительного копирования, как правило, имеют более длительное время простоя.
Миграция памяти после копирования
[ редактировать ]Посткопия [2] Миграция виртуальной машины инициируется путем приостановки виртуальной машины в источнике. Когда виртуальная машина приостановлена, минимальное подмножество состояния выполнения виртуальной машины (состояние процессора, регистры и, опционально, невыгружаемая память) передается в цель. Затем виртуальная машина возобновляет работу в целевой точке. Одновременно источник активно передает оставшиеся страницы памяти виртуальной машины в цель — действие, известное как предварительная подкачка. Если виртуальная машина на целевом объекте пытается получить доступ к странице, которая еще не была передана, она генерирует ошибку страницы. Эти ошибки, известные как сетевые ошибки, перехватываются на целевом объекте и перенаправляются к источнику, который отвечает сбойной страницей. Слишком большое количество сетевых сбоев может снизить производительность приложений, работающих внутри виртуальной машины. Следовательно, предварительный пейджинг может динамически адаптировать порядок передачи страниц к сетевым сбоям, активно перемещая страницы вблизи последней ошибки. Идеальная схема предварительной подкачки маскирует большую часть сетевых ошибок, хотя ее производительность зависит от схемы доступа к памяти. рабочей нагрузки виртуальной машины.
При посткопировании каждая страница отправляется по сети ровно один раз, тогда как при предварительном копировании одна и та же страница может передаваться несколько раз, если страница неоднократно загрязняется в источнике во время миграции. С другой стороны, предварительное копирование сохраняет актуальное состояние виртуальной машины в источнике во время миграции, тогда как во время посткопирования состояние виртуальной машины разделяется между источником и местом назначения. Если во время динамической миграции в месте назначения произошел сбой, предварительное копирование может восстановить виртуальную машину, а посткопирование — нет.
Менеджеры виртуальных машин с поддержкой динамической миграции
[ редактировать ]- Виртуозо
- Xen начиная с версии 2.0, 2004 г. для гостей PV; начиная с версии 3.1, 18 мая 2007 г. для гостей HVM [3]
- ОпенВЗ
- Облачный сервер Parallels
- Разделы рабочей нагрузки
- Виртуальные машины целостности
- КВМ [4] [5] с февраля 2007 года, [6] с разными техниками. [7]
- Виртуальный сервер Oracle для x86
- Сервер Oracle VM для SPARC
- ОВирт
- Виртуализация Red Hat
- POWER Гипервизор (PHYP)
- VMware ESXi
- IBM Live Partition Mobility , с 2007 г.
- Сервер Hyper-V 2008 R2 [8]
- ВиртуалБокс [9]
- Виртуальная среда Proxmox [10]
Облачные платформы с поддержкой динамической миграции
[ редактировать ]Системы, обеспечивающие живую миграцию программного обеспечения
[ редактировать ]См. также
[ редактировать ]- Виртуальная машина
- Самостоятельная миграция
- Сравнение программного обеспечения для виртуализации платформ
- Я ПЛАКАЛ
Ссылки
[ редактировать ]- ^ Кларк, Кристофер; и др. Живая миграция виртуальных машин . НСДИ'05.
- ^ Хайнс и др., Живая миграция виртуальных машин после копирования.
- ^ «Список рассылки проекта Xen» .
- ^ «Миграция – КВМ» .
- ^ «Глава 4. Живая миграция KVM Red Hat Enterprise Linux 6» .
- ^ «Выпуск KVM-15 [LWN.net]» .
- ^ «Дэниел П. Берранже» Архив блога » Анализ методов обеспечения завершения миграции с помощью KVM» .
- ^ Выпуск Windows Server 2012 . Сэмс. 16 сентября 2012 г. ISBN 978-0-672-33622-5 .
- ^ «Руководство VirtualBox — Телепортация» .
- ^ «Виртуальные машины Qemu/KVM — Proxmox VE» .