У новій версії платформи віртуалізації VMware vSphere 5 з'явилася цікава можливість - Host Cache. Це механізм, який дозволяє користувачеві vSphere 5 виділити певне місце на локальних дисків хост-сервера ESXi (найкраще, якщо це будуть SSD-диски) для зберігання свопіруемих сторінок пам'яті віртуальних машин. Це дозволяє істотно збільшити швидкість роботи файлів підкачки віртуальних машин (vswp), так як вони знаходяться на локальних високопродуктивних дисках, і, відповідно, збільшити загальну швидкодію інфраструктури віртуалізації.
Перш за все, після установки VMware ESXi 5 хост може не побачити локальні SSD-сховища як придатні для зберігання кешу віртуальних машин. Для цього є ось такий хак від Вільяма Лама. Далі ми йдемо на вкладку Configuration в vSphere Client і вибираємо секцію Host Cache Configuration:
Тут ми можемо поставити обсяг дискового простору на локальному томі VMFS, який ми можемо використовувати для файлів підкачки віртуальних машин, що працюють на цьому хості. Після включення цієї можливості на цьому локальному томі VMFS з'явиться купа vswp-файлів, в які гостьові ОС віртуальних машин цього хоста будуть складати свої свопіруемие сторінки пам'яті.
Оскільки ці своп-файли знаходяться тільки на цьому хості, то при міграції vMotion вміст сторінок пам'яті з цих файлів треба скопіювати на інший хост в його Host Cache або в vswp-файл в папці з віртуальною машиною на спільному сховищі. Це, звісно ж, збільшує час на міграцію vMotion, і це треба враховувати.
Що стосується надійності при відмові хост-сервера, то тут немає проблем - так як при відмові хоста все одно його віртуальні машини перезапускати на інших хостах, то дані з файлів підкачки для ВМ вже не будуть потрібні.
Спостерігати за використанням Host Cache можна з VMware vCenter 5 за допомогою метрик "Swap in from host cache" і "Swap out to host cache" (а також "rate."). У результатах виведення консольної утиліти esxtop це метрики LLSWR / s і LLSWW / s.
Що буде коли місце на локальному своп Host Cache закінчиться? Сервер ESXi почне копіювати сторінки в звичайний vswp-файл, який знаходиться в папці з віртуальною машиною, що само собою вплине на продуктивність. До речі, розмір Host Cache можна змінювати при працюючому хості і віртуальних машинах, тому краще збільшувати його вчасно, та й в цілому не доводити до великого свопу віртуальних машин (тобто, правильно сайз хости по пам'яті для ВМ). Наприклад, Duncan рекомендує 128 ГБ SSD-диски в RAID-1 для 128 ГБ оперативної пам'яті хоста.
Альтернатива Host Cache - це задати параметр VM swapfile location для віртуальної машини в її настройках, вказавши, наприклад, локальний SATA або SSD-диск (можна використовувати і швидкі загальні сховища).