вторник, 4 сентября 2012 г.

Анонсы с VMworld 2012: vVol, vSAN, vFlash

На недавно прошедшей в Сан-Франциско конференции VMWorld были анонсированы интересные технологии в области работы с СХД, точнее с vStorage, которые VMware собирается представить в ближайшее время: Virtual Volumes (vVols), Virtual SAN (vSAN) и Virtual Flash (vFlash?). Итак, что это за названия и в каком направлении движется VMware?

Virtual Volumes или vVols

Принципы работы с SAN и NAS массивами были заложены десятки лет назад: взять кучу дисков, равномерно распределить данные между ними во избежание возможных проблем при выходе одного из дисков из строя, объединить их логические единицы и предоставить серверам. Сегодня принцип практически тот же: у вас есть LUN или «шара», куда сохраняются виртуальные диски.



Задайте себе вопрос: оптимальное ли это решение? Что если вы хотите реплицировать ВМ? Тогда вам нужно реплицировать весь LUN. Выхода из данной ситуации два: создать LUN достаточный чтобы положить туда нужное количество ВМ и реплицировать их все сразу, или создать под каждую ВМ один LUN и, таким образом, получить требуемую частоту репликации. Оптимального решения нет. Или всё таки есть? Идеально иметь одну точку для подключения всех ВМ, и уйти от идеи с LUN или разграничением доступа (share).



Как же это будет выглядеть в реальном мире? Я думаю, что массив всё также будет предоставлять один LUN или NFS папку, которые будут использоваться для управления vVol. Дальше vVol уже будут представлены напрямую в ВМ, работающую на vSphere, где данное пространство уже может быть представлено рабочими VMDK, резервными копиями, репликами, клонами, тонкими и толстыми дисками и т.д. Для информирования массива о требуемом уровне производительности QoS и ограничению занимаемого пространства каждого vVol будут использоваться профили.

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

vSAN

Ещё одним интересным анонсом стала идея virtual SAN, или просто vSAN. VMware уже идёт по этому пути с помощью технологий vSphere Replication и the vSphere Storage Appliance. Но эти продукты в данный момент довольно ограничены.



Новый подход vSAN намного интереснее. В данном случае данная технология встроена сразу в гипервизор, входящий в состав vSphere, является частью основной технологии и не требует никаких виртуальных appliance.

Если VMware удастся это реализовать, то получиться следующее:
  • vCenter будет использоваться только для настройки, но поддержания работоспособности системы
  • Данные будут реплицированы между нодами, или защищены с помощью RAID5\6
  • Можно будет использовать больше трёх нод (существующее ограничение VSA)
  • Система будет более устойчива к изолированию нод и split brain
  • Будет использоваться внутренняя гибкая технология снепшотов
Вообще данная технология должна выстрелить. Идея интеграции SAN в гипервизор открывает новые горизонты для разного рода идей и интеграций, которые станут гораздо проще в реализации так как больше не будет необходимости в использовании сторонних инструментов интеграции. С другой стороны – очень сложно разработать надёжную систему СХД.

Дизайн СХД очень сложная задача

Позвольте мне привести вам один очень простой пример просто чтобы показать насколько сложна задача разработки СХД.

Допустим, вы используете двухнодовую конфигурацию VMware VSA, чтобы из локальных дисков сделать сетевое хранилище. Как это работает:
  • VSA зеркалирует данные между нодами.
  • У каждого зеркала есть своя активная и пассивная нода
  • Активная нода отвечает за ввод\вывод данных, и зеркалирует все записи на пассивную ноду.
Выглядит надёжно, не правда? А теперь рассмотрим следующие сценарии:
  • Активная нода выходит из строя
  • Пассивная нода выходит из строя
  • Активная и пассивная ноды выходят из строя
В первых двух вариантах всё довольно просто – если пропадает активная нода, то пассивная начинает отдавать данные, если выходит из строя пассивная, то активная продолжает работать. Третий случай самый сложный: активная нода считает, что пассивная нода вышла из строя, а пассивная, что вышла из строя активная. Вопрос: должна ли пассивная нода продолжать отдавать трафик или нет?

Большинство из вас абсолютно правильно, когда считает что правильного варианта тут нет. Ведь если активная нода действительно вышла из строя, то пассивная должна начать отдавать данные, но если между нодами просто нету связи, то пассивная нода не должна передавать трафик, так как это приведёт к split brain. Самое сложное – это определить с чем именно столкнулась система в каждом случае. Это сразу двигает вас к системам типа EMC VPLEX, которые устанавливаются на третьей площадке, и выполняя роль свидетеля, определяют какой сценарий происходит в каждом отдельном случае. Поэтому я бы рекомендовал использовать VMware VSA в 3-ёх нодовой конфигурации в любом случае. Всё не так просто как казалось сразу, правда?

Я надеюсь, что VMware всё сделает правильно. Возможности мощного vSAN поистине безграничны.

Virtual Flash (vFlash?)


На принципиальной схеме vSAN выше можно заметить, что твердотельные накопители тоже будут входить в данную технологию. Но на VMworld 2012 также была анонсирована ещё одна vStorage близкая к vSAN технология, которая, как я считаю, будет ориентирована на другие задачи. С помощью vFlash можно будет создать пул локальный SSD дисков, с которых будут проводиться операции чтения и кеширование записей данных с ВМ.

Это очень похоже на то как EMC встраивала твердотельные диски в свои массивы: в самом массиве вы можете использовать диски разных типов (NL-SAS/SATA, SAS и SSD). В промежутке между контроллерами и дисками, если можно так сказать, и работает FAST кэш, который, по сути, но не совсем, является основанным на SSD способом расширения оперативной памяти.

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

    4 комментария:

    1. Пара мыслей и уточнений:

      >Virtual Volumes или vVols
      Вообще, глядя на то, что нарисовано возникает мысль о хранилище с объектным доступом.
      >vSAN
      Как бы сделал я (не факт что так сделает vmware, т.е. ниженаписанное сугубо мои догадки и измышления):

      - локальные дисковые ресурсы хост-серверов объединяются в единое виртуальное хранилище
      - vmdk виртуальных машин в работе а реплицируются на дисковые ресурсы еще 1 или 2 хост-серверов (в зависимости от выставленного уровня резервирования ВМ)
      - при выполнении операции старта или HA-рестарта ВМ она по возможности стартуется на одном из хостов, на котором содержатся ее vmdk
      - если возникает ситуация, когда ВМ работает на хост-сервере, на дисках которого нет ее vmdk (например вследствие vMotion) - на первое время сервер находит ближайший к нему хост, содержащий эти данные и обращается с ними по сети передачи данных (Ethernet) а при первой возможности и наличии свободного места средствами Storage vMotion перетягивает файлы на себя.
      - доступ как к локальным дискам так и сетевой (см предыдущий пункт) кэшируется на SSD дисках (тот самый vFlash см ниже)


      >Дизайн СХД очень сложная задача - вы используете двухнодовую конфигурацию VMware VSA
      В двухнодовой конфигуации VSA для предотвращения split-brain роль третьего голосующего узла (или свидетеля если угодно) исполняет сервер vCenter (в версии vSphere 5.0, соответственно VSA 1.0), который в этом случае предписано размещать на внешнем железе. В 5.1 для этого завели спецпрограммку на java, которую можно взгромоздить на любой внешний о отношению к хост-серверам платформы виртуализации сервер Lin/Win.
      Так что с двухнодовой конфигурацией все в порядке - не надо тревожить могучий дух V-PLEXа;)

      >Virtual Flash (vFlash?)
      Кэширование доступа к локальным дискам либо удаленным данным vSAN по сети передачи данных (см выше). Кэшировать доступ к внешней выделенной СХД вряд ли получится - слишком много интеграции с СХД надо будет для синхроннизации данных. Да и не надо, для такого кэширования решения либо уже есть (для СХД EMC - VFCache http://www.emc.com/storage/vfcache/vfcache.htm) либо будут вскорости (для Netapp - http://www.netapp.com/us/products/storage-systems/flash-accel/)

      ОтветитьУдалить
    2. Вадим, пока что нету гарантий что всё это когда-либо увидит свет, и в каком виде. SMP FT все ждут уже который год. И второй год эту фичу показывают на VMworld, а в релизе её нету пока.
      Про VSA - если не привязываться именно к этому решению, то VPLEX нужен, так как свидетель всё равно нужен. А голосующий сервис на внешнем железе в случае с VSA неприятен тем, что всё таки нужен отдельный физ. сервер. Учитывая позиционирование на СМБ, где хочется сэкономить - это не радует. В случае с большими решения и распределёнными кластерами - VPLEX могучий наше всё :)

      ОтветитьУдалить
    3. Думаю, что люди покупающие VSA и люди, покупающие V-PLEX- это совсем разные люди:)
      >случае с большими решения и распределёнными кластерами - VPLEX могучий наше всё :)
      Не факт;)
      Дорого, единственное что умееет - режим read/write при доступе к нему во всех точках присутствия. А вот снепшоты и прочие вкусности - неть:( По крайне мере так было месяца 3 назад, когда я последний раз его пристально смотрел.

      ОтветитьУдалить
    4. Вадим, на текущий момент VPLEX умеет active-active кластер с масштабированием до 8 контроллеров в режиме балансировки нагрузки с каждой стороны.

      Снэпшоты и прочие вкусности пока к сожалению нет. Но здесь никто не мешает их уметь массиву, лежащему под VPLEX. Данные с LUNа в метро-зеркале никак не меняются.

      ОтветитьУдалить