Віртуалізація - вимоги і обмеження vmware fault tolerance

Технологія VMware Fault Tolerance дозволяє захистити віртуальні машини за допомогою кластерів безперервної доступності, що дозволяють в разі відмови хоста з основною віртуальною машиною миттєво переключитися на її "тіньову" работющую копію на іншому сервері ESX.

Однак ця технологія має істотні обмеження, наведені нижче.

Хости і кластери VMware vSphere:

  • Primary і secondary хости ESX (виконують primary і secondary ВМ) повинні мати однаковий номер билда (build number) і однакові встановлені патчі
  • Віртуальні машини з увімкненою Fault Tolerance повинні бути в кластері VMware HA. Це дозволяє переконатися в тому, що віртуальна машина не буде відчувати проблем доступності в разі збою хоста з Primary VM (тобто ця ВМ в разі відмови увімкнеться знову і стане Secondary)
  • Primary і secondary хости ESX повинні мати один і той же сімейство моделей CPU. Для кращої продуктивності і сумісності рекомендується мати CPU з однаковим степпінгом.
  • VMware FT використовує правила VMware DRS anti-affinity rules за замовчуванням, щоб переконатися, що Primary і Secondary ВМ виконуються на різних хостах ESX.
  • Перевірка сертифікатів (Host certificate checking) повинна бути включена на всіх хостах.
  • Технологія апаратної віртуалізації (Intel VT або AMD-V) повинна бути включена на всіх хостах ESX в BIOS.
  • DPM не завершить роботу хости, які виконують FT-машини, поки DRS не зникне. Таким чином, DRS не зможе зробити VMotion FT-машин з хоста.
  • Тільки vSphere 4.1 і вище: механізм VMware FT тепер повністю інтегрований з VMware DRS, що дозволяє балансувати навантаження на хости VMware ESX 4.1 для Primary і Secondary віртуальних машин. Також підтримується і балансування за первісним розміщення FT-машин в кластері. Для коректного функціонування цього режиму необхідний включений режим EVC в кластері.
  • Тільки vSphere 4.1 і вище: для хостів, що підтримують FT-машини, відсутня вимога щодо повної відповідності номерів білдів серверів ESX.
  • Тільки vSphere 4.1 і вище: VMware HA може бути вимкнений в кластері без необхідності вимикання VMware FT для віртуальних машин.

Система зберігання (Storage):

  • FT-машини повинні розташовуватися на спільному сховищі. Підтримуються сховища FC / iSCSI / NFS. Якщо використовується сховище NFS, то, можливо, буде потрібно збільшення storage timeouts.
  • Віртуальні диски FT-машин повинні бути в форматі eagerzeroedthick (pre-allocated, всі дані блоків очищаються при створенні). Диски інших форматів (thin, 2gbsparse, zeroedthick, thick) можуть бути конвертовані в даний формат.
  • Диски RDM підтримуються тільки в режимі віртуальної сумісності (virtual compatibility mode).

Мережеве взаємодія (Networking):

  • Для коректної роботи VMware Fault Tolerance потрібно як мінімум 2 виділених гігабітних адаптера крім мережі віртуальних машин (1 - для FT logging, 2 - для VMotion).
  • Краща практика - введення надмірності в мережах для FT logging і VMotion.
  • Краща практика - використовувати 10 Gigabit NICs з включеними Jumbo Frames.
  • Затримки (latency) в каналі FT logging повинні бути менше мілісекунди (для перевірки цього можна використовувати команду vmkping - робить ping між портами VMkernel).
  • Налаштування віртуальних комутаторів, куди підключені віртуальні машини повинні бути уніфіковані. Рекомендується використання розподіленого комутатора VMware Distributed Switch (vDS).
  • Тільки один vCPU (без використання багатопроцесорних ВМ, Virtual SMP).
  • Чи не повинні мати снапшотов.
  • Не можуть бути кластерізовани з використанням MSCS.
  • Не можуть використовувати паравіртуалізованние ядра гостьових ОС.
  • Не можуть перебувати на хостах в режимах maintenance mode або standby mode.
  • Не можуть знаходиться в режимі record / play.
  • Не можуть мати пристроїв VMDirectPath I / O.
  • Не можуть використовувати ПЗ для резервного копіювання з використанням снапшотов (VMware Data Recovery або Veeam Backup).

Які процесори і операційні системи підтримуються VMware FT?

Свіжий відповідь завжди може бути знайдений в KB 1008027.

Кращі практики використання VMware Fault Tolerance:

  • Не заводьте більше 4-8 FT-машин на одному хості ESX (з урахуванням primary і secondary).
  • Помістіть ISO-образи, які використовують FT-машини на загальне сховище, щоб primary і secondary ВМ могли мати доступ до цих даних.
  • Вимкніть power management в BIOS хостів ESX / ESXi. Якщо вони увійдуть в power-saving mode, то може не вистачити ресурсів CPU на Secondary VM на виконання завдань синхронно з первинної ВМ.
  • Використовуйте комутатор vDS - це дозволить тримати настройки уніфікованими.
  • Рівномірно розподіляйте саме Primary VMs - так як саме вони генерують трафік.

Які обмеження має віртуальна машина з включеною VMware Fault Tolerance:

  • Чи не працює Hot-plug для віртуальних пристроїв, CPU і RAM.
  • Не можна використовувати Storage VMotion.
  • Не може бути використана віртуалізація N_Port ID Virtualization (NPIV).
  • Не можуть бути використані VMDirectPath I / O для networking I / O devices (NIC passthrough).
  • Не можуть бути використані віртуальні USB пристрої
  • Не можуть бути використані Virtual floppy, примонтировать до фізичних пристроїв.
  • Не може бути використаний застарілий адаптер Vlance.
  • Не можна використовувати снапшоти.
  • Для віртуальної машини автоматично відключаються Nested Page Tables (NPT) для AMD і Extended Page Tables (EPT) для Intel.

Коли рекомендується включати VMware FT

  • ВМ з додатком з вимогою постійної доступності.
  • Коли не можна налаштувати кластер MSCS, а VMware HA не дає бажаний рівень доступності.
  • Коли кластер MSCS коштує дорого для додатка, якому потрібен високий рівень доступності.