В VMware vSphere 5.x (ESXi 5.x), і більш пізніх версіях, з'явилася нова можливість, звана Host Cache Configuration. Ця функція дозволяє адміністратору VMware vSphere налаштовувати VMware vSphere 5.x (ESXi 5.x) хост-сервер для використання кеша на твердотільних дисках (SSD) для swap файлу віртуальної машини для підвищення продуктивності, так як SSD працює набагато швидше традиційних жорстких дисків. Серед адміністраторів VMware це також називають "Swap to Host Cache" або "Swap to SSD". Як тільки дана конфігурація кеша хоста буде включена, віртуальні машини будуть свопи на SSD, але цей swapfile не є справжнім файлом підкачки, а дійсний файл підкачки віртуальної машини (.vswp) не зберігається на SSD.
Однак, іноді, SSD диски визначаються неправильно і не позначаються як SSD. У цій статті я покажу як правильно конфігурувати і позначити пристрій як SSD.
Якщо хочете поекспериментувати, але у вас немає під руками SSD, то, в принципі, будь-який диск можна конфігурувати як SSD, хоча VMware стверджує, що дана фішка не підтримує (This is not supported by VMware, tagging a non-SSD as a SSD).
Однак, я виконав цей "фокус" на ESXI 5.5 запущеному під керуванням VMware Workstation 14. І все вийшло
Помічаємо сховище як SSD в vMware ESXi 5.x / 6.0
Всі команди в цьому посібнику це консольні команди ESXi. Докладний список команд можна подивитися в статті "Список команд ESXi".
Як підключитися до хосту? Будь-яким зручним для вас способом. Зазвичай це робиться через PuTTY. Важливо потрапити в CLI.
Але спочатку запускаємо клієнта.
- Підключаємося клієнтом до VMware ESXi
2. Перевіряємо позначений чи Storage як SSD
Виберіть: Host -> Configuration -> Storage
На зображенні видно, що пристрій mpx.vmhba1: C0: T0: L0 це локальний диск, відформатований в VMFS5. Але ... позначений як non-SSD. Запишіть назву пристрою, в прикладі це - mpx.vmhba1: C0: T0: L0, воно в нагоді при виконанні наступних кроків.
3. Підключаємося до консолі ESXi через PuTTY
Логіном від імені root'a
4. Створюємо новий SATP правило
В консолі виконайте наступну команду. Тут знадобиться, записане раніше, ім'я пристрою.
esxcli storage nmp satp rule add --satp VMW_SATP_LOCAL --device mpx.vmhba1: C0: T0: L0 --option = enable_ssd
Якщо все правильно, консоль просто виведе наступну, порожній рядок. Щоб перевірити, що правило було створено правильно, можна ввести команду:
esxcli storage nmp satp rule list | grep enable_ssd
В результаті ви побачите, приблизно те, що показано нижче.
5. Призначаємо (claim) наше пристрій
esxcli storage core claiming reclaim -d mpx.vmhba1: C0: T0: L0
і знову використовуємо ім'я, яке записали на кроці 2
Я побачив приблизно наступне, коли спробував зробити unclaim. Але це станеться автоматично при перезавантаженні хоста.
Можете спробувати виконати unclaim самостійно, вказавши ім'я пристрою.
esxcli storage core claiming unclaim --type device --device mpx.vmhba1: C0: T0: L0
6. Перезапускаємо правила призначення (claim rules)
Я зазвичай використовую ось такий парочкою команд для цього.
esxcli storage core claimrule load
esxcli storage core claimrule run
7. Переконуємося, що наш пристрій тепер позначено як SSD
Наберіть наступну команду в консолі
esxcli storage core device list --device = mpx.vmhba1: C0: T0: L0
Побачите щось подібне в якості результату відпрацювання команди
Нас цікавить рядок «Is SSD: true». Якщо це так, то все зроблено правильно.
В якості додаткової перевірки, можна подивитися, як наш пристрій відбивається в клієнті.
Після включення Host Cache на "SSD" диску для зберігання кешу створюється окрема папка HostCache, в якій лежить безліч vswp файлів по 1 MB. Це файли свопу сторінки пам'яті ВМ. За цих файлів "розмазується" справжній .vswp файл.
Помічаємо сховище як SSD vMware ESXi 6.5
Для версії гипервизора ESXi 6.5 проробляється точно така ж процедура. Різниця лише в тому, що Client тепер тільки HTML. Без коментарів, просто скріншоти, тому що всі слова написані вище
На попередньому скріншоті, ID диска це лінк на який натиснути, щоб зручніше було копіювати потім в віконце PuTTY.
Якщо раптом забули, запускаємо SSH на хості
Далі через консоль. Вводимо команди одна за одною, як описано вище.
Все зробили. Переконуємося, що диск став SSD командою:
esxcli storage core device list --device = mpx.vmhba0: C0: T2: L0
У моєму прикладі це так (is ssd - true).
спрацювало.
Для "очищення совісті" подивися і через клієнта.
Ура! запрацювало! (С) кіт Матроскін
І ще момент. Цей же SSD буде використовуватися в разі, якщо раптом, віртуалкою не вистачило оперативки в хості.
Як пише vMware «SSD, звичайно ж, повільніше ніж RAM, але, як тимчасовий вихід з положення, це допоможе»
От і все.
Якщо хочете самостійно вивчити дане питання, то ось посилання на документацію VMware з цього питання.
Tag Devices as SSD
http://pubs.vmware.com/vsphere-50/index.jsp?topic=%2Fcom.vmware.vsphere.storage.doc_50%2FGUID-99BB81AC-5342-45E5-BF67-8D43647FAD31.html
Наведу лише фінальний коментар від VMware:
If the SSD device that you want to tag is shared among multiple hosts, make sure that you tag the device from all the hosts that share the device.
Якщо ваше SSD пристрій лунає на декілька хостів, переконайтеся, що на всіх хостах воно позначено, також, на SSD.