Налаштування SSD Host Cache в ESXi 5.x / 6.x

Одним з нововведень в vSphere 5.x є функція Host Cache, яка дозволяє адміністратору розмістити файл підкачки (vswp) віртуальної машини на локальному диску з метою збільшення швидкості роботи за рахунок розміщення свопу на локальних високопродуктивних дисках (оптимально на SSD дисках, так як швидкість доступу на них вище). Реалізується технологія за рахунок створення на SSD диску окремого розділу VMFS, який потім визначається службою SATP (Storage Adapter Type Plugin) і яка дозволяє додавати і управляти кешуванням на локальному сховищі VMFS.

З поточним падінням цін на SSD це може дати реальний приріст продуктивності VMware ESXi 5.x-сервера, якому, наприклад, не вистачає пам'яті.

Власне на нових серверах (які замовлялися з SSD дисками) ми і вирішили протестувати технологію SSD Host Cache. Але зіткнулися з труднощами, за замовчуванням локальне SSD сховище не відображається як доступне для роботи функції кешування (порожня вкладка Host Cache Configuration).

Для боротьби з цією проблемою довелося трохи повозитися. Як виявилося, стандартні правила SATP не дозволяють виявити встановлений SSD диск, однак можна створити спеціальне правило для конкретного пристрою SSD .

  • Відключаємо всі диски, презентовані сервера по мережі SAN (щоб не виникло плутанини)
  • Відкриваємо локальну консоль сервера ESXi5 (зайти можна по ssh або через vMA) і виконуємо команду:
    esxcli storage core device list
  • Потім виконуємо команду
    esxcli storage nmp satp rule add --satp VMW_SATP_LOCAL --device STORAGE _NAME --option = enable_ssd

    (наприклад,

    esxcli storage nmp satp rule add --satp VMW_SATP_LOCAL --device naa.600304e000000000ab043b9eeaddc90c --option = enable_ssd)
  • Перевіряємо застосування налаштувань командами:
    esxcli storage nmp satp rule list | grep enable_ssd

    і

    esxcli storage core device list
  • Якщо ESXi встановлений на цьому ж диску, потрібно перезавантажити сервер, якщо ж диск порожній, відразу виконуємо
    esxcli storage core claiming reclaim -d STORAGE _NAME

    (Наприклад:

    esxcli storage core claiming reclaim -d 600304e000000000ab043b9eeaddc90c)
  • І ще раз перевіряємо настройки командою
     esxcli storage core device list

    .
    Порада. Актуальніша інструкція Як помітити і конфігурувати storage як Solid State Disk (SSD) в VMware vSphere 5.х / 6.x (ESXi 5.х / 6.x).

  • Після виконаної роботи в консолі vSphere знову відкриваємо відділ Configuration-> Host Cache Configuration (Зробіть refresh) і в списку список доступних SSD накопичувачів для призначення їм функції Host Cache Configuration  повинен з'явиться наш локальний SSD диск. Виберіть його властивості Примітка: Якщо немає жодного SSD Datastores, перевірте, що ваш Datastore правильно позначений як SSD з списку storages. А також переконайтеся, що ssd відформатований як VMFS5.
  • За допомогою повзунка можна вказати обсяг дискового простору на SSD диску, який буде використовуватися для зберігання файлів підкачки віртуальних машин. Я рекомендую вибрати "Use maximum available space". Тобто зробити, по суті, виділений SSD Datastore тільки для кеша.

Що ще можна відзначити: після включення SSD Host Cache на локальному сховищі буде створена папка з довільним (згенерував автоматично) ім'ям, всередині якої буде знаходиться папка hostCahe з купою файлів по 1 MB, що представляють собою файли свопу для сторінок пам'яті віртуальних машин, запущених на даному ESX сервері. При міграції (VMotion) цих віртуалок, дані файли також повинні бути перенесені на інший хост (або на загальне сховище, якщо на хості Host Cache не включений), за рахунок чого час міграції дещо збільшується.

У разі ж відмови хост-сервера, потреба в цих файлах зникає, тому що виртуалки перезапускати на іншому хості, і дані з старого файлу підкачки їм більше не потрібні.

Для чого це може знадобитися? Ну, наприклад, для того, щоб єдиною налаштуванням сказати Гіпервізор, щоб зберігав все swap'и на цьому Storage.

З значення за замовчуванням:

На ось таку конфігурацію: тиснемо Edit.

Тепер файли підкачки всіх ВМ хоста будуть зберігається на виділеному SSD сховище.


Тим, хто цікавиться застосуванням технології SSD в інших сучасних продуктах, рекомендуємо познайомитися зі статтею «Оптимізація SSD для Windows 8»

У співавторстві з Alex Kornev