Как включить Virtual Flash Read Cache в VMware vSphere 5.5
Всем привет сегодня разберем Как включить Virtual Flash Read Cache в VMware vSphere 5.5. Обновив свой тестовый стенд до VMware vSphere 5.5, мне захотелось попробовать в деле новую функцию - Virtual Flash Read Cache, позволяющую кэшировать данные на локальных SSD накопителях, установленных в сервер, и тем самым снижать нагрузку на хранилища (локальные или SAN) при выполнении операций чтения, так что давайте разбираться в данном вопросе.
Virtual Flash Read Cache может работать с обычными носителями с интерфейсом SATA/SAS или накопители, подключаемые по шине PCI-E (список совместимых устройств невелик, но для VFRC можно использовать и другие носители).
https://www.vmware.com/resources/compatibility/search.php?deviceCategory=vfrc
На текущий момент VFRC имеет следующие ограничения и максимумы:
- На хост-сервере должен быть установлен VMware ESXi 5.5 в редакции Enterprise Plus.
- Настройка и управление VFRC осуществляется только через vSphere Web Client, поэтому требуется VMware vCenter Server.
- Максимальный размер кэша для одного виртуального диска - 400 ГБ.
- Максимальные размер кэша на хост - 2 ТБ.
- Максимальный размер виртуального диска - 16 ТБ.
- Максимальное количество SSD накопителей, используемых под кэш - 8.
- Требуется обновить Hardware Version виртуальной машины до 10-й версии.
- SSD накопитель должен использоваться только под VFRC, на нем нельзя устанавливать гипервизор, создавать VMFS хранилища, или включать в кластер Virtual SAN.
- Администратор должен вручную настраивать кэш для каждого виртуального диска (минимум 1 ГБ). Кэш выделяется (резервируется) при включении ВМ, никакого совместного использования или пере подписки для кэша настроить нельзя.
- Нет поддержки Admission Control для vSphere HA, если на сервере недостаточно кэш-памяти, ВМ просто не запустится.
- Процедура включения Virtual Flash Read Cache крайне проста, однако, у меня сразу возникли проблемы с добавлением SSD накопителя.

Стоит сделать небольшое отступление и сказать, что в моем случае SSD накопитель подключается через RAID контроллер, не поддерживающим HBA режим, поэтому требуется создавать RAID 0 массив из одного накопителя. RAID контроллер не передает серверу информацию о типе накопителей, используемых в RAID массиве, поэтому ESXi определяет его как Non-SSD диск. Исправить это можно, создав или отредактировав SATP правила.

Но даже после добавления правила, SSD носитель не появился в списке. Открыв командную консоль и набрав esxcli storage vflash device list, я увидел нечто интересное.

Снова благодаря RAID контроллеру, ESXi не посчитал мое устройство локальным, и поэтому не давал создать на нем файловую систему под кэш. Решить проблему удалось удаление старого правила SATP и добавлением нового:

После этого накопитель появился в списке доступных для выбора устройств:

Получить информацию о работе кэша можно с помощью команд:
esxcli storage vflash cache stats get -c <CACHE_FILE_NAME>

P.S. Схожим образом можно настроить VFRC в тестовой среде (например в виртуальном ESXi), где у вас нет настоящего SSD. Только толку от этого не будет. Материал сайта pyatilistnik.org