Ускоряем работу Lenovo U530 HDD SSD Cache — Пережеванные выкладки программиста — LiveJournal

xydan

Пережеванные выкладки программиста

или же трудные будни ленивца-скурпулезы

Недавно я столкнулся с проблемой ускорения работы дисковой подсистемы, которая предусмотрена в ультра буке Lenovo U 530 (и других подобных моделей). А началось все с того, что выбор пал на этот ноутбук для замены более старого.

Я взял вариант с процессором Intel Core — I 7 4500 U , 1Тб HDD + 16 Гб SSD кэша.

Примечание: в данном ультрабуке и аналогичных используется SSD в формате M2: http://en.wikipedia.org/wiki/M.2

В дальнейшем при работе с ним как то присутствие кэша не наблюдалось, начал разбираться как же все это работает?

В чипсетах Intel (в частности Intel Series 8) имеется такая технология как Intel rapid storage technology (подробнее о ней можно прочитать по этой ссылке: http :// www . intel . ru / content / www / ru / ru / architecture — and — technology / rapid — storage — technology . html ).

В этой технологии есть функция Intel ® Smart Response , которая и позволяет использовать вариант гибридного SSHD или же HDD + SDD для ускорения дисковой подсистемы.

Если вкратце – то она позволяет хранить часто используемые файлы на SSD диске и при последующих запусках файлов читать их с SSD диска, что заметно улучшает производительность всей системы в целом (подробнее о Smart Response по этой ссылке:

По идее в данном ноутбуке задумано использование SSD именно в этом режиме, так как программа и драйвера Rapid Storage были изначально установлены.

Но никакого ускорения и в помине не было … П олез разбираться… Обычно, приложение Rapid Storage висит в фоновом режиме в Windows и его можно открыть в области, где отображаются значки фоновых приложений.

Но там этого значка не было, что очень странно.

После – я решил удалить и заново поставить приложение и драйвера Rapid Storage , только тогда появился значок и я смог запустить программу, но в итоге, к большому моему сожалению, никаким ускорением и не пахло. Исходя из инструкции, там должна появится кнопка ускорения и другие функции Rapid Storage , но ни того, ни другого не было.

Рисунок 2 — основной экран программы Rapid Storage

Рисунок 3 – вкладка “Управление”. Как видно, она тоже не блещет многообразием

Рисунок 4 — на этой вкладке должны быть опции ускорения дисковой подсистемы и работа с другими технологиями

Внимательно изучив инструкцию я понял, что для ускорения нужен режим работы Raid 0, который надо включить в BIOS . Зайдя в BIOS , не обнаружил такого переключения режимов – вообще, что конечно очень огорчило. Это значит, что данный в данном ноуте отсутствует режим RAID и его невозможно подключить (либо чипсет не позволяет).
Затем захожу по ссылке http://support.lenovo.com/us/en/downloads/ds032146#os и вижу, что IdeaPad в списке поддерживаемых технологией-нет вообще, в частности, модели U 530.

В итоге, мы имеем:

1) Raid не подключить;

2) AH С I режим не подходит для ускорения через Rapid Storage ;

3) соответственно SSD – не работает как кэш.

Рисунок 5 — в системе видно, что она настроена на режим работы AHCI, а изменить режим данного ультрабука в BIOS — нельзя

Что же в этом случае делать?

Выход есть:) И таких выходов несколько.
Перечислю вкратце:

3)Использовать вариант ExpressCache + перенос SWAP файла на отдельный раздел SSD .

Примечание: многие наверняка видели инструкции в интернете по переносу файла гибридизации на SSD, так вот, на своем опыте проверил, это НЕ РАБОТАЕТ, так как даже в этом случае, когда Вы создаете раздел гибридизации, все равно используется технология Intel Rapid Storage . Другими словами, режим гибридизации уже не виндовый , а управляет им данная интеловская технология, а поскольку у нас она не работает, то кроме бесполезного раздела гибридизации на SSD Вы ничего не получите, соответственно работать это не будет.

А теперь опишу более подробно, как настроить каждый из трех вариантов.

1. Использовать стороннюю утилиту от SanDisk – ExpressCache

Распишу по пунктам действия:

Если Вы еще ни разу не пользовались этой утилитой, то делаем следующее:

2) Заходим в “Управление дисками” и удаляем все разделы с SSD диска;

3) Устанавливаем программу Express Cache на компьютер, перезагружаемся и все готово) Программа сама сформирует нужный раздел и будет его использовать.

4) Чтобы проверить работу, вызываем командную строку в режиме администратора, и вводим eccmd.exe – info

5) В результате, должна быть похожая картинка:

Рисунок 6 — проверка работы кэша при запуске утилиты eccmd.exe – info

2. Использовать технологию Windows ReadyBoost

Для использования этой технологии необходимо:

1) Заходим в “Управление дисками” и удаляем все разделы с SSD диска;

2) Создаем один основной раздел на SSD ;

3) Новый раздел появится в виде нового диска со своей буквой. Заходим в Мой компьютер и жмем правой кнопкой на диске и в меню выбираем “свойства”, далее вкладку “ Ready Boost ”.

4) Во вкладке выделяем опцию “Использовать это устройство” и ползунком выделяем все имеющееся пространство.

5) Далее – “применить” и, возможно, перезагрузится.

После этого SSD будет ускорять работу файловой системы используя технологию Microsoft Windows Ready Boost .

Не знаю, насколько она эффективна для работы с SSD , так как изначальное ее предназначение было – использование в качестве устрой ств хр анения обычные NAND Flash в виде брелоков, а скорость доступа к таким устройствам намного ниже, чем у mSATA SSD

3. Использовать вариант ExpressCache + перенос SWAP файла на отдельный раздел SSD .

На мой взгляд – это самый оптимальный для данного случая метод, так как, с одной стороны мы ускоряем работу со свопом, перенеся его на SSD , а так же обеспечиваем работу с кэшем. Данный метод скорее подходи для ультра буков с объемом SSD 16 и более Гб.

Как это сделать?

1) Заходим в “Управление дисками” и удаляем все разделы с SSD диска;

2) На SSD нужно два раздела, один делаем сами, второй делается программой Express Cache ;

3) Создаем раздел для свопа, например: 6 Гб вполне достаточно для ультра бука с 8Гб ОЗУ (RAM);

4) Далее раздел для свопа нужно отформатировать, я выбираю файловую систему FAT 32, так как она быстрее NTFS , а способность к восстановлению в данном разделе не нужна;

5) Теперь нам нужно перенести своп с диска C : на новый диск SSD . Для этого заходим в параметры Системы, далее “Дополнительные параметры системы”.

Рисунок 8- Дополнительные параметры системы

Во вкладке “Дополнительно” нажимаем на кнопку “Параметры * ”, вкладка “Дополнительно ** ” и далее кнопку “Изменить ** ”. Отключаем “Автоматический режим *** ”, затем из списка выбираем нужный для нас диск со свопом, а затем пробуем выбрать опцию “Размер по выбору системы *** ” и нажимаем кнопку “Задать *** ”. Если система ругнулась, то это, скорее всего из-за того, что диск в 6Гб. система считает слишком маленьким, но если Вы посмотрите снизу в окне рекомендуемый размер файла, то он будет колебаться в районе 4,5 Гб, что даже меньше нашего раздела, поэтому делаем следующее – выбираем опцию “Указать размер *** ” и в поле “Исходный размер *** ” записываем тот рекомендуемый снизу размер файла. В поле “Максимальный размер *** ” можно написать весь объем раздела, затем жмем кнопку “Задать *** ”.
Далее, нам нужно отключить уже имеющийся своп, для этого из списка дисков выбираем на том, где в данный момент располагается своп ( например C :), и ниже в опциях выбираем – “Без файла подкачки *** ”, а затем “Задать *** ”.
Все –т еперь у Вас файл подкачки будет располагаться на SSD диске.
Ждем “ Ок *** ” и перегружаем компьютер.

Рисунок 12 — Видимость SWAP раздела SSD

Файл подкачки называется pagefile . sys , он должен быть на новом диске, а на старом его быть не должно.

7) Теперь нужно установить раздел для кэширования, для этого делаем все, что было описано в пункте 1.

В итоге после проделанных действий мы получаем ускорение всей системы в целом.

Рисунок 13 — Разделы на SSD для SWAP и SSD кэша

Желаю Вам быстрой производительности Вашей системы и долгой работы SSD J

Буду рад комментариям к моей статье и всяческим рецензиям) Спасибо!

Встречалась ли у Вас подобная проблема с работой SSD в качестве кэша?

SSD Cache – что это такое и насколько технология эффективна работает

Ну ничего себе какие люди нарисовались на блоге, приветствую тебя уважаемый гость! Сегодня рассмотрим SSD cache: что это за технология, как работает, для чего она и какие у нее преимущества.

p, blockquote 1,0,0,0,0 —>

Что такое SSD cache

Эта технология представляет собой механизм управления данными, который разработала компания Интел в 2010 году.

p, blockquote 2,0,0,0,0 —>

Используется твердотельный накопитель (оптимально подходит intel optane) небольшого размера, которые работает в качестве кэш памяти жесткого диска.

p, blockquote 3,0,0,0,0 —>

Объема памяти 16GB memory для таких целей вполне достаточно.

p, blockquote 4,0,0,0,0 —>

Напоминаю, что кэш – своеобразный буфер, то есть память, аппаратная или программная, в которой хранятся наиболее часто используемые данные приложений или операционной системы.

Извлечение информации из этого места хранения повышает быстродействие системы в целом по сравнению с тем, если бы она перезаписывалась бы на винчестер.

p, blockquote 6,0,0,0,0 —>

Концепция использования твердотельного накопителя совместно с HDD основана на использовании преимуществ его быстродействия, что больше подходит для хранения временных данных, чем даже кеш самого жесткого диска.

p, blockquote 7,0,0,0,0 —>

Эффективность такого решения крайне высокая: так как скорость чтения данных с твердотельного накопителя в десять раз выше, чем с жесткого диска, это повышает быстродействие системы в целом.

Совместимость устройств

Такое решение имеет некоторые ограничения. Запатентованная компанией Intel технология Smart Response Technology (SRT) предполагает, что описанный выше механизм будет работать только на компьютерах, собранных на базе системной платы с поддержкой SRT и Интеловскими же чипсетами.

p, blockquote 9,0,0,0,0 —>

Выбор аппаратных конфигураций, на которых можно реализовать SSD кэширование, ограничен вследствие ряда факторов.

p, blockquote 10,0,0,0,0 —>

Системы, использующие чипсеты от AMD, требуют наличия стороннего софта, эмулирующего работу ССД. Да, АМД до сих пор не реализовали аналогичную конкурентоспособную технологию, что несколько странно.

p, blockquote 11,1,0,0,0 —>

Ощутимое преимущество SSD кэширование дает только при «чистом» состоянии системы – например, загрузка компьютера после выключения, перезагрузка ОС или первоначальный запуск приложения.

Во всех остальных случаях высока вероятность, что все важные данные уже хранятся в оперативной памяти. Так как этот компонент быстрее любого SSD, использование твердотельного накопителя в таком случае нерационально.

p, blockquote 13,0,0,0,0 —>

Однако при загрузке компьютера операционная система примет работоспособное состояние существенно быстрее, чем при использовании кэша винчестера.

p, blockquote 14,0,0,0,0 —>

Так же быстрее будут запускаться программы и игры, что немаловажно, если компьютер используется в том числе и для работы. Повторный запуск приложений при этом не ускоряется.Как именно реализован механизм SRT, до сих пор остается коммерческой тайной, поэтому более детальных подробностей, увы, рассказать не могу. Впрочем, и вышеизложенного достаточно, чтобы сделать выводы о том, нужно ли вам заморачиваться по поводу ускорения работы компа.

p, blockquote 15,0,0,0,0 —>

Можно предположить, что технология определяет объем данных, которые будут храниться в кеше таким образом.

p, blockquote 16,0,0,0,0 —>

Как запустить кэширование

Правильно собранная система, отвечающая всем параметрам, не требует никаких дополнительных настроек: кэширование запускается автоматически.

p, blockquote 17,0,0,1,0 —>

Отдельно хочу отметить, что технологию можно реализовать и при использовании более объемного твердотельного накопителя, на котором также будет установлена операционная система.

p, blockquote 18,0,0,0,0 —>

В случае с комбинированными накопителями, то есть винчестерами, использующими NAND память для хранения кеша, использование описанной технологии нецелесообразно: она уже реализована «из коробки» на аппаратном уровне.

В завершение следует добавить, что быстродействие такой сборки не сильно зависит от того, куда ставиться жесткий диск – подключается через интерфейс M.2 или порт SATA.

p, blockquote 20,0,0,0,0 —>

Советую ознакомиться также с публикациями «Рейтинг SSD накопителей объемом 120 и 240 Гб с 2017 по 2019»(тем более что, он до сих пор актуален) и «Нужен ли SSD для игр». Буду признателен всем, кто поделится этим постом в социальных сетях. До завтра!

p, blockquote 21,0,0,0,0 —>

p, blockquote 22,0,0,0,0 —> p, blockquote 23,0,0,0,1 —>

SSD-кеширование в облаке VMware

В этой статье мы хотим рассмотреть особенности и возможности SSD-кеширования в облаке VMware. Но для начала дадим ряд ключевых определений, чтобы все наши читатели находились на одной волне повествования.

Диск SSD (Solid State Drive) — это твердотельный накопитель, в котором нет подвижных элементов, а для хранения данных используется флеш-память.

Такой диск можно сравнить с большой флешкой, его преимущество заключается в скорости работы, устойчивости к механическим повреждениям, малом энергопотреблении и не только. Обычно дисковая подсистема считается одним из слабых мест как для массово распространяемых приложений, так и для серверов, заточенных под различные задачи и решения. Зачастую администраторы и хостинг-провайдеры задаются вопросом: «Как же ускорить СХД / сервер / работу виртуальной машины с минимальными затратами?».

На данный вопрос есть и такой ответ: с помощью технологии SSD-кеширования.

Остановимся чуть более подробно на технологии SSD-кеширования, которую достаточно часто именуют флеш-технологией, и рассмотрим базовые принципы ее функциональности.

Использование SSD-дисков в качестве кеш (SSD-кеширование) — это технология, позволяющая кешировать как операции чтения, так и операции записи по алгоритмам, схожим с работой кеша жесткого диска и/или оперативной памяти (буферизация запросов ввода-вывода).

При этом блоки данных, запрашиваемые при операциях чтения, копируются с HDD на SSD и в дальнейшем могут быть считаны с SSD. Операции записи при выполнении определенных условий (алгоритм работы кеш) сохраняются на SSD-диски, затем копируются на HDD. Время хранения блоков данных, записанных на SSD, ограничено, как правило, миллисекундами.

С помощью кеша SSD можно в значительной степени повысить скорость доступа к данным, не ставя под угрозу их сохранность. При включенном кеше в случае обращения к данным именно он исследуется в первую очередь. Если в кеше находятся данные, совпадающие с запрашиваемыми, они извлекаются из кеша. В противном случае затребованный элемент данных считывается из основной памяти с последующим занесением в кеш.

Безусловным преимуществом данной технологии является прозрачная автоматическая оптимизация использования памяти дисков при неизменности логики приложений, работающих с файлами. Большинство современных жестких дисков используют свой собственный кеш, однако он ничтожно мал по сравнению с SSD-кешем и не настолько эффективен. Последний, в свою очередь, не ограничивается единицами/десятками мегабайтов, а может доходить до нескольких гига- и терабайтов.

Что касается непосредственно данных на жестких дисках (HDD), они характеризуются интенсивностью обращения к ним и формально могут быть названы «холодными» (при достаточно редком к ним обращении) и «горячими» (при достаточно активном использовании). Если данные из кеша долго не запрашивались, они либо удаляются, либо сбрасываются на жесткий диск, а занятое место отдается под более «горячие» данные, которые могут быть затребованы. Таким образом, место в кеше используется более продуктивно.

От общего к частному

Использование флеш-технологий в корпоративных системах хранения данных на сегодняшний день является достаточно частым явлением, а реализация механизмов кеширования, в свою очередь, возможна на различных уровнях. Попробуем разобраться в вариантах реализации, рассмотрев основные особенности и принципы работы.

Большинство облачных хостинг-провайдеров вместо увеличения количества жестких дисков или твердотельных накопителей отдают предпочтение оптимизации производительности уже имеющихся СХД. При этом почти каждый ставит целью повысить пропускную способность подсистем ввода-вывода, уменьшить время ожидания отклика приложений, добиться возможности использовать меньшее число жестких дисков большего объема и снизить затраты в целом.

Использование технологии кеширования позволяет уменьшить зависимость производительности СХД от количества дисков в базовом дисковом массиве, значительно сокращая расходы и достигая вышеозвученные цели, одновременно уменьшая при этом административную нагрузку для настройки производительности.

Как работают с SSD-кешем СХД на примере флеш-технологий NetApp

Напомним, что компания NetApp была первой в области разработки инновационных технологий кеширования (чтение/запись) и по сей день подтверждает свое лидерство в отрасли СХД корпоративного класса с поддержкой флеш-технологий, реализуя при этом многоуровневый подход.

Кеширование на уровне контроллера

NetApp Flash Cache (ранее PAM II) — это технология Flash на уровне контроллера СХД, которая позволяет сохранять «горячие», часто запрашиваемые данные. Основное преимущество этого решения заключается в увеличении производительности для рабочих нагрузок с большим количеством операций произвольного чтения без добавления высокопроизводительных дисковых устройств. За счет высокопроизводительного кеша для операций чтения время ожидания по сравнению с дисковыми накопителями снижается в десять и более раз, а также улучшается пропускная способность ввода-вывода. Способность кешировать огромные объемы активных данных обеспечивает эффективность работы Flash Cache с целым спектром рабочих нагрузок.

Уровень контроллера Flash Cache

Кеширование на уровне дисковой подсистемы (массива)

NetApp Flash Pool технология Flash, использующая гибридную модель: сочетание дисков SSD и HDD в одном дисковом агрегате (наборе дисков). Отличительной особенностью данного решения является кеширование часто запрашиваемых данных на SSD-носитель, а также сохранение данных повторяющейся записи.

Уровень дисковой подсистемы Flash Pool

Кеширование под управлением ОС СХД на уровне сервера

Технология NetApp Flash Accel задействует устройство Flash на стороне сервера (Flash-карта PCI-e или диск SSD) в качестве локального кеша, который разгружает сеть, выполняя часть операций ввода-вывода, и обеспечивает тем самым оптимальную эффективность операций ввода-вывода для самых загруженных приложений, освобождая при этом ресурсы ЦП и памяти на сервере.

Уровень сервера Flash Accel

Рассмотрев различные уровни флеш-технологий, можно сделать следующие выводы: Flash Cache ускоряет процессы получения данных, Flash Pool ускоряет операции случайного чтения и записи на уровне системы хранения данных, а Flash Accel кеширует данные непосредственно на сервере для повышения производительности самых ресурсоемких и требовательных приложений.

Как работает кеширование SSD средствами гипервизора в облаке VMware?

Для начала небольшой экскурс в прошлое. Компания VMware еще с выходом VMware vSphere 5.1 объявила о нескольких новых начинаниях в сфере хранения данных виртуальных машин, включая возможность использования распределенного кеш на SSD-накопителях локальных дисков серверов ESXi. Данная технология имела рабочее название vFlash и находилась в стадии Tech Preview, превратившись позднее в полноценную функцию vSphere Flash Read Cache (vFRC) платформы VMwarevSphere 5.5. И это вполне рабочий инструмент, который можно использовать в задачах различного уровня.

Технология vFRC призвана повысить эффективность взаимодействия клиентских приложений с дисковой подсистемой за счет кеширования считываемых данных, при этом значительно увеличивая производительность приложений, активно выполняющих операции чтения.

С работает на уровне гипервизора, существенно улучшая при этом производительность виртуальных машин, которые интенсивно используют систему ввода-вывода для операций на чтение. Для кеширования могут быть использованы PCIe флеш-карты и SAS/SATA SSD-диски, локально установленные в хост. Устройства объединяются во флеш-пул, из которого VMDK-дискам виртуальных машин выделяется пространство для кеширования данных.

Напомним, что VMDK (Virtual Machine Disk) — это формат файла, разработанный VMware для использования в качестве образа диска в своих виртуальных машинах.

По уровню производительности SSD-кеш находится между оперативной памятью и обычными дисками.

Обзор архитектуры vFRC

Архитектурная особенность vFRC заключается в следующем:

Когда к VMDK диску с включенным vFRC приходит запрос на чтение, в первую очередь выясняется, есть ли требуемые данные на vFlash.

  • Если да, то виртуальная машина получает данные из кеша. Это событие называют «попаданием» (vFRC hit, отмечено на рисунке 1 стрелками фиолетового цвета).
  • Если данные отсутствуют в кеше, то ESXi считывает их из VMDK-диска и отдает машине, параллельно записывая данные в кеш. Это событие называется «промахом» (vFRC miss, отмечено на рисунке 1 стрелками оранжевого цвета). Когда приходит запрос на запись, данные записываются на VMDK-диск и асинхронно в кеш.

Что необходимо для vFRC?

Для того чтобы активировать функциональность vFRC, необходимо соблюдение следующих условий:

  • Иметь в наличии сконфигурированный узел как минимум с одним SSD или PCIe SSD.
  • Использовать vSphere 5.5 (vCenter 5.5 и ESXi 5.5).

Как включается vFRC?

После физического подключения устройства к серверу с ESXi его нужно добавить в vSphere Flash Infrastructure layer. Выполнить это можно на вкладке Virtual Flash Resource Management в настройках хоста.

Для включения vFRC в виртуальной машине в параметрах жесткого диска используется пункт Virtual Flash Read Cache, в котором можно указать объем выделенного пространства для кеширования и размер блока. Размер блока для vFRC следует выбирать в зависимости от того, какими блоками приложение пишет данные на диск. Статистику по блокам для каждого диска можно собрать с помощью утилиты vscsiStats на ESXi.

Особенности конфигурации

При конфигурировании vSphere Flash Read Cache необходимо учитывать следующие особенности:

  • На хост-сервере должен быть установлен VMware ESXi 5.5 в редакции Enterprise Plus.
  • Настройка и управление vFRC осуществляется только через vSphere Web Client, поэтому требуется VMware vCenter Server.
  • Максимальный размер кеша для одного виртуального диска — 400 Гб.
  • Максимальные размер кеша на хост — 2 Тб.
  • Максимальный размер виртуального диска — 16 Тб.
  • Максимальное количество SSD-накопителей, используемых под кеш, — 8.
  • Требуется обновить Hardware Version виртуальной машины до 10-й версии.
  • Необходимо вручную настраивать кеш для каждого виртуального диска, минимальное значение — 1 Гб.

vFRC на практике

И немного из личного опыта компании. Как мы тестировали SSD-кеш в облаке VMware и с какими подводными камнями столкнулись на практике?

Прежде чем предлагать клиентам какое-либо решение, необходимо убедиться в его полноценной функциональности и работоспособности, а значит — протестировать и понять, что полученный результат в полной мере соответствует заявленным возможностям и удовлетворяет требованиям заказчика. А если появилась новинка, которую еще никто не тестировал и не внедрял, обкатывать ее следует с особо пристальным вниманием. Ведь ни для кого не секрет, что во всем новом могут скрываться недоработки, баги и прочие неприятные мелочи.

Как только компания VMware заявила о новой возможности использования распределенного кеша на SSD-накопителях локальных дисков серверов ESXi, мы решили протестировать эту функциональность. Поскольку данная технология до выхода vSphere 5.5 была в стадии Tech Preview, захотелось протестировать уже доработанное решение. Перед нами стояла задача проверить работоспособность vFRC на сооруженном стенде.

Для тестирования диски SSD подключили к RAID-контроллеру Dell PERC H710P. Создали RAID-0 группы по числу SSD-дисков, в каждой группе по одному диску.

Поскольку RAID-контроллер Dell PERC H710P не умеет предоставлять информацию о физическом типе подключенных к нему носителей, пришлось отмечать вручную, что диски, подключенные к ESXI, являются SSD-дисками. Для этого запустили команду esxcli, как указано на рисунке 5:

После запуска команды в параметрах устройства значение флага “Is SSD” изменилось на “True” — как на рисунке 6:

После чего добавили устройства в vSphere Flash Infrastructure layer. Текущая процедура выполнялась в настройках хоста посредством опции Virtual Flash Resource Management:

Заранее для тестирования SSD-кеша нами был подготовлен стенд с виртуальными машинами на базе ОС Windows Server 2008 R2 x 64 и двумя выделенными под каждую виртуалку VMDK-дисками объемом в 100 Гб каждый:

  • VMDK1 определили под ОС,
  • VMDK2 — под данные.

Далее в параметрах жесткого диска VMDK2 виртуальных машин включили vFRC, выделив 100 Гб под кеш, определив при этом размер блока в 4 Кб.

Основные шаги конфигурации выполнены. Далее стояла задача проверки работоспособности включенной функциональности. Однако при запуске виртуальных машин одна попросту отказалась стартовать, вместо окна приветствия появился «синий экран» со следующим содержимым:

На остальных виртуальных машинах явных проблем не наблюдалось.

Далее решили воспользоваться инструментами, заточенными под мониторинг кеша SSD, и сравнить результаты тестирования. Для начала в одной из виртуальных машин запустили утилиту FIO, которая генерирует необходимый объем данных на диск VMDK2. Как говорилось ранее, именно он был выделен под полезные данные. Утилита FIO может работать в различных режимах, нас интересовала процедура «случайного считывания». Именно поэтому запустили ее в режиме rand-read.

Примечание: Более подробную информацию об утилите FIO можно найти на сайте.

Утилита FIO подразумевает использование job-файла (или, проще говоря, файла-конфигурации), в котором прописываются параметры под тестирование. Утилита выполняет операции чтения над случайно сгенерированными данными диска VMDK2. В файле конфигурации для чтения фиксируется размер блока считывания (в нашем случае равный 4 Кб). После чего запустили операцию произвольного чтения. Время теста составило 6 часов 46 минут.

Интересовал вопрос: попали ли считываемые данные в кеш и если да, то каков процент попадания?

Для поиска ответа воспользовались графиком производительности виртуального диска машины посредством vSphere WEB client (рисунок 11).

Интересно было посмотреть на следующие счетчики: среднее количество операций вывода в секунду, задержка чтения и счетчик, дающий статистику по использованию кеша. Последний несколько разочаровал, показав очень маленький процент попадания данных в кеш. При среднем количестве операций вывода в секунду (18 689,328) значение для кешируемых данных составило 4439,389, а это всего 23% попадания. Согласно такому статистическому раскладу кеш попросту можно считать неработающим.

Поскольку штатное средство не показало ожидаемых результатов, обратились к другому инструменту: команде esxcli. Она так же работает со статистикой по определенному VMDK-диску с включенной опцией vFRC . Запустили команду со следующими параметрами:

# esxcli storage vflsh cache stats get

На рисунке 12 вы можете наблюдать значение cache hit rate, представленное в процентах. Оно показывает так называемое «попадание» vFRC hit, то есть процент данных из кеша, которые используются виртуальной машиной. Рассматриваемую команду пришлось запускать несколько раз, поскольку результаты при очередном запуске оказывались совершенно разными. По одним значением кеш не работал вовсе, как и в первом случае, по другим работал, с процентом попадания данных в кеш, равным 96%.

Не стали останавливаться на полученном, воспользовались еще одной утилитой: esxtop (c отправкой интерактивной команды “u” (u:disk device)) для отображения статистики по использованию кеша. Согласно выведенной на экран информации, получили следующий результат: при «чтении» данные извлекались непосредственно из кеша. Учитывая, что среднее количество операций вывода в секунду составляло 18 689,328, а объем операций для данных, считываемых с SSD-кеша, 18 184,03, процент попадания данных в кеш составил примерно 97%.

Результаты тестов не до конца оправдали наши ожидания, и мы, как крупный сервис-провайдер, партнер VMware, обратились за помощью к коллегам на стороне вендора.

Компания VMware имеет достаточно богатый опыт взаимодействия со своими клиентами и партнерами. В случае обнаружения багов, узких мест и прочих моментов по части функциональности продукта разработчики прикладывают все силы, чтобы внести необходимые исправления.

В результате осенью 2014 года было выпущено обновление VMware ESXi 5.5 Update 2, которое устраняет описанную проблему по «синему экрану» виртуальной машины с операционной системой Windows Server 2008 R2 x64.

Вышедшее обновление, безусловно, нас заинтересовало. Решили протестировать, установив его на рассмотренной ранее тестовой площадке с включенным vFRC. Каков результат? Все виртуальные машины запустились как одна. Ставим «+» в этом тесте и двигаемся в сторону показателей счетчиков. Как и в самом начале тестирования, запустили утилиту FIO в режиме rand-read с используемым ранее файлом конфигурации, после чего запустили операцию произвольного чтения. Счетчики в большинстве своем показывали рабочую статистику и лишь периодически указывали неверные значения. То есть VMware ESXi 5.5 Update 2 не устранил описываемую проблему по отображению статистики vFRC. Несмотря на данный баг, технология vSphere Flash Read Cache, как показала дальнейшая практика применения этой функциональности, существенно повышает производительность виртуальных машин за счет уменьшения показателя latency.

После очередных тестов мы перешли к внедрению технологии SSD-кеширования на хостах в промышленную среду. Сегодня на наших площадках успешно реализовано несколько проектов с использованием vSphere Flash Read Cache для наших особо требовательных к производительности клиентов. Последние, в свою очередь, довольны результатами ускорения работы своих систем и приложений.

http://xydan.livejournal.com/300762.html
http://infotechnica.ru/pro-kompyuteryi/o-nakopitelyah-informatsii/ssd-cache-chto-eto/
http://itglobal.com/ru-kz/company/blog/vmware-ssd-caching/

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *