2015-10-19 2 views
1

Я хочу понять, что происходит под капотом в живой миграции для исполнения моего последнего года проектаЧто происходит при живой миграции

Согласно моему пониманию, с обменом два хоста общего хранилища с помощью SAN

1) Когда vm переносится с одного хоста на другой хост, файлы VM переносятся из одного ESXI в другой, но вопрос в том, что у них есть разделяемое хранилище, и как они будут передаваться.

2) VMDK, снимки файлы передаются во время живой миграции

Теперь у меня есть вопросы

1) Только VMDK, .vmx файлы передаются

2) с VMotion памяти страницы передаются , так что же это страницы памяти, они файлы, или то, что они физически

3) Где код миграции настоящее время в гипервизора или VCENTER

4) Можем ли мы получить стек для vm, гипервизора во время миграции, и если да, то как это будет возможно (я попробовал strace, чтобы получить представление о том, как VM (ubuntu) будет называть гипервизор, но это только дает мне до система linux, а не за ее пределами)

Может ли кто-нибудь, пожалуйста, направить меня на это.

ответ

3

Обзор VMotion

Фаза 1: Гостевая трассировка Фаза

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

Фаза 2: Precopy Фаза

Поскольку виртуальная машина продолжает работать и активно изменять свое состояние памяти на исходном узле во время этой фазы, содержимое памяти виртуальной машины копируется из источника vSphere host to узел назначения vSphere в итеративном процессе. Первая итерация копирует всю память. Последующие итерации копируют только память страниц, которые были изменены во время предыдущей итерации. Количество итераций докопии и количество страниц памяти, скопированных во время каждой итерации , зависят от того, насколько активно изменяется память на источнике vSphere host из-за текущих действий гостя. Основная часть передачи сети vMotion выполняется на этом этапе - без принятия какого-либо значительного количества циклов ЦП непосредственно от гостя. Один мог бы все еще наблюдать влияние на гостевую производительность, потому что стрелка записи срабатывает во время фазы предварительной обработки, что приведет к небольшому замедлению на странице .

Фаза 3: переключающий Фаза

В течение этого заключительного этапа, виртуальная машина на мгновение стабилизированы на исходном Vsphere хосте, последний набор памяти изменения копируются в целевой Vsphere хоста, а виртуальная машина возобновляется на целевом узле vSphere. Гость кратко приостанавливает обработку во время этого шага. Хотя продолжительность этой фазы , как правило, меньше секунды, это наиболее вероятная фаза , где наблюдается наибольшее влияние на производительность гостя (резкое временное увеличение латентности ). Влияние зависит от множества факторов: , но не включая сетевую инфраструктуру, общую конфигурацию хранилища , аппаратное обеспечение хоста, версию vSphere и динамическую нагрузку для гостевой рабочей нагрузки .

Из моего опыта, я бы сказал, что я всегда теряю по крайней мере 1 ping во время фазы 3.

Что касается ваших вопросов:

1) Все данные передаются через TCP/IP сети. NO .vmdk передается, если только оно не является Хранение VMotion. Все данные вы можете найти в documentation

2) .nvram - это файл памяти VMware VM. Весь список типов файлов VMware VM может быть подтвержден here

3) Вся эта логика находится в гипервизоре. vSphere Client/vCenter - это продукты управления. VMware имеет проприетарную базу кода, поэтому я не думаю, что вы можете получить фактический исходный код. В то же время, вы можете проверить ESXiclidocumentation. Включение VMotion из-за лицензионных ограничений может осуществляться только через клиента.

4) Гостевая ОС (в вашем случае Ubuntu) не знает о том, что она использует виртуальное оборудование вообще. Для гостевой ОС нет способа отслеживать миграцию или любую другую деятельность VMware kernel/vmfs в целом.

+0

благодарит за помощь, я буду исследовать больше со ссылкой, которую вы дали, возможно ли получить ваш контакт по электронной почте, так как мы делаем наш последний проект года как улучшающую латентность ввода-вывода VM с использованием SSD как кэш. –

+0

уверен, что вы можете проверить мой профиль @ asj177 –

+0

в соответствии с вашей точкой. Файлы .vmdk не переносятся, и согласно документу страницы памяти/страницы памяти передаются VMotion от одной виртуальной машины к другой виртуальной машине с использованием сети TCP/IP , так что файл .nvram (который сохранил текущее состояние BIOS) переносится. Возможно, перенос некоторых файлов осуществляется через сеть TCP/IP. –

Смежные вопросы