Что такое и как работает Storage VMotion в VMware vSphere

Что такое и как работает Storage VMotion в VMware vSphere

Одна из замечательных технологий, которая стала доступна из GUI в VMware vSphere, Storage VMotion позволяет перемещать хранилище виртуальной машины (ее виртуальные диски) на другой том VMFS / LUN без остановки работы служб и приложений.

На диаграмме ниже показано, какие именно фазы проходят в ESX / ESXi при перемещении виртуальной машины между хранилищами.

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-05

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-05

1. Во-первых, при инициировании миграции, VMware vSphere копирует все файлы виртуальной машины, за исключением виртуальных дисков, на новое целевое виртуальное хранилище.
2. Во-вторых, в VMware vSphere включается технология Changed Block Tracking для диска виртуальной машины. VMware vSphere отслеживает изменяющиеся блоки и записывает эти данные в битовый массив. Обычно этот битовый массив хранится в памяти VMware ESX / ESXi.
3. Далее VMware vSphere «пре-копирует» диск виртуальной машины и swap-файл с целевого устройства на хранилище назначения (первая итерация). В это время виртуальная машина может продолжать запись в виртуальный диск. В это время некоторые блоки диска меняются и отслеживаются технологией Changed Block Tracking. Далее изменившиеся данные посылаются vSphere на целевой диск и применяются там (вторая итерация). При этом во время такого копирования данные на исходном диске также изменятся и также эти изменения отследятся Changed Block Tracking. Таким образом, итерации будут продолжаться до тех пор, пока объем изменений не будет настолько мал, что они будут переданы мгновенно на целевой виртуальный диск.
4. Теперь ESX вызывает «быстрый приостанов-старт» виртуальной машины (fast suspend/resume). Виртуальная машина «приостанавливается» (suspend) на хосте ESX и процесс, реализующий виртуальную машину, запускает ее уже с целевого хранилища (resume). Именно в этот момент происходит последняя итерация копирования изменившихся данных исходного диска на целевой vmdk. Таким образом, виртуальные диски исходного и целевого виртуального хранилищ оказываются идентичны, после чего происходит resume виртуальной машины.

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

теперь немного практики. При общем storage есть два вида миграции

- Change host
- Change datastore

При первом у вас уже должен быть общий storage.

Перед тем как я познакомился с vMotion конфигурация была следующей. Два хоста не в кластере. Независимые storage. Необходимо было перезагрузить один из хостов а машинки на нем не трогать. В итоге создал общий storage для них. Затем смигрировал с первого хоста на другой storage машинку, для этого кликнул по ней выбрал migration и выбрал

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-06

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-06

Выбрал общий storage и дождался когда операция закончится, затем выбрал в миграции первый пункт  Change host  и выбираем нужный host.

ОГРАНИЧЕНИЯ- Виртуальные машины со снимками, не могут быть перемещены с помощью Storage VMotion.

- миграция виртуальных машин во время установки VMware Tools не поддерживается.
- Хост, на котором виртуальная машина запущена, должны иметь лицензию, которая включает Storage VMotion.
- Хост, на котором виртуальная машина запущена, должн иметь доступ к исходному и целевому хранилищам данных

Как работает "Shared-Nothing" vMotion (Enhanced vMotion) в VMware vSphere 5.1.

Как знают многие пользователи, среди новых возможностей VMware vSphere 5.1 есть так называемая Enhanced vMotion или "Shared-Nothing" vMotion - функция, позволяющая переместить работающую виртуальную машину на локальном хранилище ESXi на другой хост и хранилище с помощью комбинации техник vMoton и Storage vMotion в одной операции. Это означает, что для такого типа горячей миграции не требуется общее хранилище (Shared Storage), а значит и затрат на его приобретение. Напомним также, что функция Enhanced vMotion включена во все коммерческие издания VMware vSphere, кроме vSphere Essentials.

Давайте посмотрим поближе, как это все работет:

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-07

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-07

Сначала приведем требования и особенности работы vMotion при отсутствии общего хранилища:
Хосты ESXi должны находиться под управлением одного сервера vCenter.
Хосты должны находиться в одном контейнере Datacenter.
Хосты должны быть в одной Layer 2 подсети (и, если используется распределенный коммутатор, на одном VDS).
Enhanced vMotion - это исключительно ручной процесс, то есть функции DRS и Storage DRS не будут использовать миграцию машин без общего хранилища. Это же касается и режима обслуживания хоста (Maintenance Mode).
Для одного хоста ESXi может быть проведено не более 2-х Enhanced vMotion единовременно. Таким образом, на хост ESXi может одновременно приходиться максимум 2 штуки Enhanced vMotion и 6 обычных vMotion (всего 8 миграций на хост) + 2 операции Storage vMotion, либо 2 Enhanced vMotion (так как это также задействует Storage vMotion). Подробнее об этом тут.
Enhanced vMotion может проводить горячую миграцию одновременно по нескольким сетевым адаптерам хоста ESXi, если они имеются и настроены корректно.

Миграция Enhanced vMotion может быть проведена только через тонкий клиент vSphere Web Client (в обычном клиенте эта функция недоступна - см. комментарии):

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-08

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-08

Миграция Enhanced vMotion идет по обычной сети vMotion (а не по Storage Network), по ней передаются и диск ВМ, и ее память с регистрами процессора для обеспечения непрерывной работоспособности виртуальной машины во время миграции:

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-09

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-09

Теперь как это все работает последовательно. Сначала механизм Enhanced vMotion вызывает подсистему Storage vMotion, которая производит копирование данных по сети vMotion. Здесь важны 2 ключевых компонента - bulk copy и mirror mode driver.

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-10

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-10

Сначала механизм bulk copy начинает копирование блоков данных с максимально возможной скоростью. Во время этого часть блоков на исходном хранилище хоста может измениться - тут и вступает в дело mirror mode driver, который начинает поддерживать данные блоки на исходном и целевом хранилище в синхронном состоянии.

Mirror mode driver во время своей работы игнорирует те блоки исходного хранилища, которые меняются, но еще не были скопированы на целевое хранилище. Чтобы поддерживать максимальную скорость копирования, Mirror mode driver использует специальный буфер, чтобы не использовать отложенную запись блоков.

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-11

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-11

Когда диски на исходном и целевом хранилище и их изменяющиеся блоки приходят в синхронное состояние, начинается передача данных оперативной памяти и регистров процессора (операция vMotion). Это делается после Storage vMotion, так как страницы памяти меняются с более высокой интенсивностью. После проведения vMotion идет операция мгновенного переключения на целевой хост и хранилище (Switch over). Это делается традиционным способом - когда различия в памяти и регистрах процессора весьма малы, виртуальная машина на мгновение подмораживается, различия допередаются на целевой хост (плюс переброс сетевых соединений), машина размораживается на целевом хосте и продолжает исполнять операции и использовать хранилище с виртуальным диском уже целевого хоста.

Ну а если вы перемещаете виртуальную машину не между локальными дисками хост-серверов, а между общими хранилищами, к которым имеют доступ оба хоста, то миграция дисков ВМ идет уже по Storage Network, как и в случае с обычным Storage vMotion, чтобы ускорить процесс и не создавать нагрузку на процессоры хостов и сеть vMotion. В этом случае (если возможно) будет использоваться и механизм VAAI для передачи нагрузки по копированию блоков на сторону дискового массива.

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-12

Как включить VMotion В vmware Sphere 5.x и мигрировать vm-12

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

я в гугл