vMotion – жива міграція ВМ між серверами

vMotion – це назва процесу живої міграції Тобто переїзду віртуаль ної машини з одного сервера на інший без перерви в роботі Жива міграція стане в нагоді вам:

Q коли необхідний плановий простій сервера ВМ з вимагає вимкнути-

ня сервера можна забрати на інші сервери і спокійно вимкнути його

Q для балансування навантаження З завантаженого сервера можна мігрувати віртуальні машини на більш вільні сервери

Як тільки ми запускаємо міграцію, vCenter перевіряє виконання умов для віртуальної машини і серверів, між якими вона мігрує Про умови далі

Потім гіпервізор починає копіювати вміст оперативної памяті цієї віртуальної машини на інший ESX (i) Але ж віртуальна машина продовжує працювати, і за час копіювання вмісту оперативної памяті це вміст встигне змінитися Тому гіпервізор починає вести список адрес змінених блоків памяті переміщуваної віртуальної машини ВМ продовжує працювати, але адреси змінених сторінок в її памяті фіксуються

Отже, основний обсяг памяті передається на другий ESX (i) через інтерфейс VMkernel, який ми задіємо під vMotion

Як тільки вся память передалася – ВМ блокується повністю, і на другий ESX (i) передаються змінені сторінки памяті Так як їх обсяг буде невеликий – час, протягом якого ВМ повністю блокується, також невелика Досить невелика А якщо обсяг зміненої памяті буде більше якогось порогового значення, значить, ESX (i) просто повторить ітерацію Завдяки цьому область памяті, для передачі якої ВМ повністю заморозиться, обовязково буде дуже невеликий, нехай і через декілька ітерацій

На цьому етапі ми маємо два ідентичних процесу, дві ідентичні ВМ на обох ESXах Тепер ВМ на вихідному сервері побивається, по мережі йде оповіщення, що машина з цим MAC-адресою доступна вже на іншому порту фізичного комутатора Все

Якщо на якомусь етапі йде збій – то ВМ просто не вбивається на вихідному сервері і нікуди не їде, але падіння ВМ через невдалий vMotion не відбувається

Для того щоб якусь ВМ можна було мігрувати без простою між двома серверами, повинні бути виконані деякі умови для цієї віртуальної машини і цих серверів

Основна умова vMotion, що накладається на сервери, – процесори серверів повинні бути сумісні з точки зору vMotion Справа в тому, що процесор – єдина підсистема сервера, яку віртуальні машини (гостьові ОС) бачать такої, яка вона є фізично Не має значення, якщо у процесорів цих серверів виявляться різні тактові частоти, розмір кеш-памяті, количест під ядер А має значення набір підтримуваних інструкцій, таких як SSE 3, SSE 41, NX / XD та ін Якщо на двох різних серверах різні процесори, а додаток використовує якусь з інструкцій, що була доступна до, але не доступна після переїзду, – то додаток впаде

Щоб не допустити цього, vCenter не дозволить почати vMotion між серверами з несумісними процесорами До речі, не забудьте, що частина функцій процесора управляється BIOS, так що і сервери з ідентичними процесорами можуть бути непридатні для гарячої міграції між ними ВМ, якщо налаштування BIOS відрізняються Іноді найпростіше скинути їх на значення за замовчуванням

В ідеалі процесори у вас сумісні для vMotion (подробиці доступні в базі знань VMware) Якщо ні, але жива міграція дуже потрібна, вам можуть допомогти наступні варіанти:

Q редагування так званої CPUID Mask (властивості ВМ ⇒Options

CPUID Mask) Суть в тому, що для конкретної ВМ ми можемо «сховати»

ті процесорні інструкції, що заважають міграції Детальні інструкції-

ції ви знайдете в базі знань VMware (http://kbvmwarecom/kb/1993)

Q в принципі, відключення самої перевірки на однаковість процесорів, яку робить vCenter Дія не підтримуване, але працююче Звичайно, дане рішення має сенс використовувати, лише якщо ви впевнені, що додатки в ваших ВМ НЕ задіють ті інструкції, якими відрізняються процесори серверів Для відключення перевірки необхідно вставити рядки

&ltmigrate&gt

&lttest&gt

&ltCpuCompatible&gtfalse&lt/CpuCompatible&gt

&lt/test&gt

&lt/migrate&gt

у файл% AllUsersProfile% \ Application Data \ VMware \ VMware VirtualCenter \ vpxdcfg і перезапустити службу vCenter

Q Enhanced vMotion Compatibility, EVC Що це таке, можна прочитати в на-

кових розділах книги, як це включається – в розділі про DRS Однак EVC включається і для кластера, в якому DRS не включено

Повернемося до умов, які накладаються на ВМ і сервери через vMotion

Всі ресурси, які задіє ВМ, повинні бути доступні на обох серверах Це:

Q зрозуміло, файли самої ВМ vmx, vmdk та інші (за винятком файлу

підкачки vswp) Якщо резюмувати – ВМ повинна бути розташована на загальному сховищі Якого саме типу – FC, iSCSI або NFS, не важливо RDM також підтримується, але LUN, підключений як RDM, повинен бути видно обом серверам

Q для віртуальних SCSI-контролерів настройкаSCSI Bus  Sharing НЕ

повинна бути виставлена ​​в значення, відмінне від None Це означає, що віртуальні машини-вузли кластера Майкрософт не можуть бути мігрує вани за допомогою vMotion

Q до ВМ можуть бути підключені образи CD-ROM і Floppy Ці файли також повинні бути доступні з обох серверів

Q до ВМ не повинен бути підключений CD-ROM сервера, тобто настройка

«Host Device» у властивостях віртуального CD-ROM Ті ж умови вірні для FDD

Q до ВМ не повинні бути підключені фізичні COM і LPT порти сервера

Q у ВМ не повинно бути налаштоване CPU Affinity – вказівка ​​конкретних ядер, на яких повинна працювати ця ВМ

Q групи портів, до яких підключена ВМ, повинні існувати на обох серверах Перевіряється тільки збіг імен, з точністю до регістру

Q ВМ не повинна бути підключена до віртуального комутатора без привя занних фізичних мережевих контролерів Однак перевірку на це можна відключити Для цього вставте рядки

&ltmigrate&gt

&lttest&gt

&ltCompatibleNetworks&gt

&ltVMOnVirtualIntranet&gtfalse&lt/VMOnVirtualIntranet&gt

&lt/CompatibleNetworks&gt

&lt/test&gt

&lt/migrate&gt

у файл% AllUsersProfile% \ Application Data \ VMware \ VMware VirtualCenter \ vpxdcfg і перезапустіть службу vCenter

Q в процесі vMotion між серверами передається вміст оперативної

памяті ВМ Це вміст передається між інтерфейсами VMkernel, так що ми повинні створити ці інтерфейси Зверніть увагу, що будь-який інтерфейс VMkernel може одночасно використовуватися ще й для NFS, iSCSI, Fault Tolerance, і для керуючого трафіку (останнє в разі ESXi) Однак для vMotion рекомендується виділити окремий гігабітний інтерфейс і, як наслідок, окремий інтерфейс VMkernel У властивостях віртуального мережевого контролера VMkernel, який ви плануєте задіяти під vMotion, необхідно поставити прапорець «Use this port group for vMotion»

Зверніть увагу vCenter перевіряє тільки факт наявності інтерфейсів VMkernel з прапорцем «Use this port group for vMotion» у властивостях, але не наявність звязку між цими інтерфейсами різних серверів Щоб переконатися, що в конфігурації мережі немає помилок, на одному з серверів виконайте команду vmkping

Для перевірки виконання більшої частини умов зі списку вище добре підійде закладка Maps для віртуальної машини (рис 657)

Зверніть увагу на малюнок – на ньому показана схема віртуальної інфра-

структури в контексті vMotion однієї ВМ Зараз віртуальна машина «File_Server_ Win2008» працює на esx1vm4ru Мною обведені ті обєкти, на які варто звернути увагу, так як вони перешкоджають vMotion цієї ВМ на другий сервер:

Q це група портів «External_VM_Network» – вона є на одному сервері, але на сервері esxi2vm4ru її немає Рішення – створити групу портів з тим же імям на сервері esxi2 Або перестати її задіяти для даної ВМ

Q дана ВМ задіє два сховища – «iSCSI_LUN_1_main» і «Local_esx1» Притому другий недоступно з сервера esxi2 Рішення – або зробити «Local_esx1» доступним з другого сервера (не завжди можливо), або перенести ВМ або її диск, розташовані на «Local_esx1», в інше сховище, доступне обом серверам

Q «vMotion is disabled» на esxi2 означає, що на цьому сервері немає жодного інтерфейсу VMkernel, у властивостях якого дозволений трафік vMotion Рішення – створити такий інтерфейс або поставити відповідний прапорець у властивостях існуючого інтерфейсу

Для того щоб зрозуміти, які групи портів і які сховища доступні з обох серверів, допоможе Home Maps На рис 658 ви бачите приклад такої карти

Якщо всі проблеми вирішені, то карта vMotion повинна виглядати приблизно так, як показано на рис 659

Рис 657 Maps для ВМ, яка не може мігрувати на гарячу

Рис 658 Карта звязків сховищ з серверами

Рис 659 Maps для ВМ, яка може мігрувати на гарячу

Зверніть увагу, що через Maps не відображається інформація про RDMдісках ВМ Віртуальну машину з RDM мігрувати за допомогою vMotion можливо, однак підключений як RDM LUN має бути презентований обом серверам Перевірити це через Maps не можна Втім, якщо до ВМ буде підключений RDM LUN, видимий лише поточним серверу, про це вам скажуть на першому кроці майстра vMotion

Єдиним файлом ВМ, який не зобовязаний лежати на загальному сховищі, є файл підкачки (VMkernel swap) Навіть якщо він розташований на приватному для першого сервера ресурсі, при міграції ВМ буде створений файл підкачки на диску, видимому другого сервера, і вміст буде перенесено Але на тому диску, де другий сервер своєму розпорядженні файли підкачки працюючих на ньому ВМ, має бути достатньо вільного місця, інакше vMotion не відбудеться

Запустити сам процес міграції можна, вибравши Migrate в контекстному меню ВМ, потім вибравши Change host на першому кроці майстра Найчастіше простіше перетягнути ВМ на потрібний ESX (i) – тоді в майстрові vMotion буде менше питань Залишаться лише:

Q  Select Resource Pool – Поміщати чи ВМ в якийсь пул ресурсів, і якщо так, то в якій

Q  vMotion Priority – Резервувати чи ресурси під переміщувану ВМ на сервері призначення (вибрано за замовчуванням) Хіба ви не резервувати Другий варіант дозволить мігрувати ВМ в умовах нестачі ресурсів, нехай навіть сама міграція займе більше часу

За умовчанням з кожного сервера можна одночасно мігрувати 4 (8 для 10 Гбіт мережі) ВМ З урахуванням значно переробленого та поліпшеного компо-

нента, що відповідає за vMotion, навіть чотирьох одночасних міграцій, швидше за все, для вас буде достатньо

Зверніть увагу Мається на увазі саме vMotion, для Storage vMotion та міграції вимкнених ВМ параметри за замовчуванням інші

Джерело: Міхєєв М О Адміністрування VMware vSphere 41 – М: ДМК Пресс, 2011 – 448 с: Ил

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*