Need For Speed ​​або простий тюнінг віртуальних машин

Досить часто на семінарах або при аудиті існуючого у замовника віртуального середовища мені доводилося чути закиди: «Віртуалізація гальмує», «Ми спробували перевести сервер у віртуальне середовище, і він підвівся», «Віртуальні сервери працюють повільніше за фізичні». При цьому дев'ять із десяти таких проблем із «гальмуванням» віртуальних серверів вирішувалися простою оптимізацією пристроїв у складі віртуальної машини.

Багато питань, як підвищити швидкодію віртуального середовища, спонукало мене до написання невеликого FAQ щодо оптимізації віртуальних машин на основі VMware vSphere – платформи, яку використовують більшість наших корпоративних клієнтів. При цьому хочеться відзначити, що для рішень на основі Hyper-V та Xen Server коректний вибір пристроїв також здатний прискорити роботу віртуальних серверів.

FAQ щодо роботи з віртуальними пристроями в середовищі VMware vSphere

Q: На що впливають типи пристроїв віртуальної машини?A: Типи вбудованих пристроїв впливають на алгоритм роботи віртуальної машини з «залізом», таким чином безпосередньо впливаючи на швидкодію.

Q: Навіщо VMware знадобилося закладати в архітектуру унікальні віртуальні пристрої замість емуляції звичайних контролерів? Тільки з ними можна досягти того, що швидкодія віртуальної машини практично не відрізняється від фізичного оригіналу.

Q: Чим відрізняються дискові контролери?A: Дискові контролери впливають на алгоритм обробки SCSI команд. VMware Paravirtual оптимізований під пакетну обробку команд, таким чином, при великій кількості операцій введення-виведення він помітно ефективніший за LSILogic контролерів.

Q: Якщо VMware Paravirtual такий гарний, чому він не використовується за умовчанням?A: Оскільки VMware Paravirtual не має реальних аналогів, він не підтримується операційними системами безпосередньо. Отже, решта контролерів потрібна виключно для сумісності зі старими версіями гостьових операційних систем. Крім того, при невеликій кількості операцій введення-виведення він може бути менш ефективний ніж LSI Logic SAS, що дозволяє його рекомендувати для застосування як контролер системного диска.

Q: Які операційні системи підтримують VMware Paravirtual?A: Список ОС підтримуючих VMware Paravirtual наведено в таблиці нижче.

Гостьова операційна системаVMware Paravirtual підтримується як диск з данимиVMware Paravirtual підтримується як завантажувальний диск
Windows Server 2008 R2 (64-bit only)ESX/ESXi 4.0 Update 1, ESX/ESXi 4.1, ESXi 5.0ESX/ESXi 4.0 Update 1, ESX/ESXi 4.1, ESXi 5.0
Windows Server 2008 (32 і 64 біт)ESX/ESXi 4.X, ESXi 5.0ESX/ESXi 4.0 Update 1, ESX/ESXi 4.1, ESXi 5.0
Windows Server 2003 (32 і 64 біт)ESX/ESXi 4.x, ESXi 5.0ESX/ESXi 4.x, ESXi 5.0
Windows 7 (32 і 64 біт)ESX/ESXi 4.1, ESXi 5.0ESX/ESXi 4.1, ESXi 5.0
Windows Vista (32 і 64 біт)ESX/ESXi 4.1, ESXi 5.0ESX/ESXi 4.1, ESXi 5.0
Windows XP (32 і 64 біт)ESX/ESXi 4.1, ESXi 5.0ESX/ESXi 4.1, ESXi 5.0
Red Hat Enterprise Linux (RHEL) 5 (32 і 64 біт) і вищеESX/ESXi 4.X, ESXi 5.0Не підтримується.
RHEL 6 (32 і 64 біт)ESX/ESXi 4.0 Update 2, ESX/ESXi 4.1, ESXi 5.0ESX/ESXi 4.0 Update 2, ESX/ESXi 4.1, ESXi 5.0
SUSE Linux Enterprise 11 SP1(32 and 64 bit) і вищеESX/ESXi 4.0 Update 2, ESX/ESXi 4.1, ESXi 5.0ESX/ESXi 4.0 Update 2, ESX/ESXi 4.1, ESXi 5.0
Ubuntu 10.04 (32 and 64 bit) та вищеESX/ESXi 4.0 Update 2, ESX/ESXi 4.1, ESXi 5.0ESX/ESXi 4.0 Update 2, ESX/ESXi 4.1, ESXi 5.0
Distros Linux 2.6.33 і вищеESX/ESXi 4.1, ESXi 5.0ESX/ESXi 4.1, ESXi 5.0
Q: Які дискові контролери краще використовувати, якщо VMware Paravirtual не підтримується?A: Переважним контролером є LSI Logic SAS. На жаль, через величезне розмаїття підтримуваних ОС привести їх усіх у рамках даного огляду неможливо. Якщо навіть LSI Logic SAS не підтримується, вимушено доведеться використовувати LSI Logic Parallel.

Q: Де взяти драйвери для VMware Paravirtual?A: При установці ОС драйвери можна поставити з віртуального флоппі-дисковода. Для вибору потрібного образу слід зазначити властивості дисководу «Use existing floppy image in datastore». Після цього слід вказати потрібний образ з розташованих у каталозі /vmimages/floppies. Також драйвери для несистемних дисків можуть бути додані після інсталяції ОС – для цього потрібно просто встановити VMware Tools.

Q: Чому не можна використовувати в промисловому середовищі «тонкі» диски?A: При кожній операції розширення тонкого диска значно знижується швидкодія тома VMFS, на якому він розташований, а точно передбачити операції розширення не можна.

Q: Який мережевий контролер найефективніший?A: Найбільш ефективним типоммережевого контролера є VMXNET 3. За аналогією з VMware Paravirtual він дозволяє знизити накладні витрати та підвищити швидкодію підсистеми мережного вводу-виводу.

Q: Навіщо потрібні мережеві контролери крім VMXNET3?A: Інші мережеві контролери потрібні виключно для сумісності з ОС, що не підтримують VMXNET3.

Q: Які операційні системи підтримують VMXNET3?A: VMXNET3 сумісний з такими типами гостьових ОС:

  • 32- та 64-розрядні версії Microsoft Windows XP,7, 2003, 2003 R2, 2008, and 2008 R2 і вище;
  • 32- та 64-розрядні версії Red Hat Enterprise Linux 5.0 і вище;
  • 32- та 64-розрядні версії SUSE Linux Enterprise Server 10 і вище;
  • 32- та 64-розрядні версії Asianux 3 і вище;
  • 32- та 64-розрядні версії Debian 4 і вище;
  • 32- та 64-розрядні версії Ubuntu 7.04 і вище;
  • 32- та 64-розрядні версії Sun Solaris 10 U4 і вище.

Q: Де взяти драйвери для VMXNET3?A: Драйвери для VMXNET3 встановлюються разом з VMware Tools.

Q: Які мережеві контролери краще використовувати, якщо VMXNET3 не підтримується?A: Рекомендованим після VMXNET3 є E1000. VMXNET2 потрібний для сумісності зі старими версіями ESX/ESXi, а не зі старими версіями гостьових ОС. Якщо навіть E1000 не підійшов, слід використовувати інші мережні контролери, сумісні з конкретної ОС.

Олексій Хакімов, старший системний інженер, Digital Design