Русфонд

пятница, 9 декабря 2011 г.

Как работает vMotion

Последовательность действий vMotion:
  1. На целевом хосте создается теневая виртуальная машина.
  2. Копируется каждая страница памяти из источника в целевую виртуальную машину через сеть vMotion. Эта операция называется preCopy.
  3. Следующая итерация - это копирование страниц памяти, которые изменились во время выполнения  последней операции preCopy.
  4. Итерации preCopy продолжаются до тех пор пока не будет измененных страниц памяти.
  5. "Глушится" виртуальная машина на хосте-источнике и разблокируется на целевом хосте.
В большинстве случаев итерации копирования работают прекрасно, при условии если хост передает страницы памяти по сети vMotion быстрее, чем они успевают меняться виртуальной машиной.
Однако, иногда виртуальная машина изменяет страницы памяти быстрее, чем vMotion может передать их, и возможна ситуация, когда итерации preCopy не могут сойтись.
Если preCopy не сходится, vMotion должен решить потерпит миграция неудачу или будет завершена. Решение принимается на основе оценки времени необходимого для копирования оставшихся страниц памяти. По умолчанию, если это время не превышает 100 секунд, то миграция будет завершена. Если время превышает 100 секунд, vMotion завершится ошибкой без воздействия на виртуальную машину.
Если оценка укладывается в 100 секунд, vMotion "заглушит" источник и запустит целевую виртуальную машину. Когда виртуальная машина уже будет работать на целевом хосте, источник еще будет передавать оставшиеся страницы памяти, используя технологию "Quick Resume", которая появилась в vSphere 4.1.
В vSphere 5 подобная технология называется  "Stun During Page Send". Эта технология, "замедляя" vCPU на источнике, управляет скоростью изменения страниц памяти в зависимости от пропускной способности сети vMotion и позволяет завершить миграцию. Также Stun During Page Send делает возможным vMotion при задержках сети до 10 мс (Metro vMotion).
Подчеркнем несколько ключевых моментов:
  • Для миграции любой нагрузки необходимо, чтобы пропускная способность сети vMotion была выше скорости изменения страниц памяти.
  • vMotion перемещает виртуальную машину только если уверен, что сможет выполнить копирование памяти.
  • Если vMotion не может выполнить копирование памяти, миграция закончится неудачей без воздействия на виртуальную машину.
Источники:
VMware Uptime Blog: vMotion - what's going on under the covers?
Yellow Bricks: vSphere 5.0 vMotion Enhancements
+Презентация VMware vMotion in VMware vSphere 5.0: Architecture, Performance and Best Practices

Комментариев нет:

Отправить комментарий