Я просто пытаюсь понять, как ESX переносит виртуальную машину с одного лезвия на другой без потери данных ... если у меня есть виртуальная машина, которая служит сервером базы данных, который постоянно получает данные, может ли она мигрировать с одного лезвия другому без потери информации из этой базы данных?
Изменить: моя идея не имела смысла, поскольку задействована SAN ... если кто-нибудь может объяснить, как vMotion это делает, я был бы очень признателен!
Заранее спасибо.
vMotion требует, чтобы у вас было общее хранилище между серверами ESX (другими словами, SAN) и чтобы у вас была быстрая сеть, настроенная для vMotion. Также требуется, чтобы на хостах ESX были одинаковые процессоры (или чтобы вы выполнили некоторую маскировку функций процессора, чтобы процессоры выглядели одинаково для виртуальных машин).
По сути, он предварительно копирует все содержимое памяти на целевой хост ESX, затем начинает перехват всей активности ЦП, в конечном итоге приостанавливая виртуальную машину на исходном хосте ESX, копируя последние биты памяти и состояния ЦП на целевой хост ESX. и запускаем его обратно. Я думаю, что это также вызывает некоторые объявления ARP, чтобы ваша коммутационная инфраструктура начала двигаться.
Конечным результатом является то, что миграция может занять минуту или две, но сама виртуальная машина делает паузу только на долю секунды и никогда не знает, что она была перемещена с одного физического хоста на другой. ОС ничего не видит.
Мы все время используем его в нашем кластере ESX. Мы даже включили функции, которые автоматически запускают виртуальные машины VMotion, чтобы сбалансировать нагрузку между хостами ESX.