Следуя современным тенденциям в индустрии хранения и обработки данных, я добрался до программно-определяемых хранилищ (Software Defined Storage, SDS), а именно — до продукта компании HPE под названием HPE StoreVirtual VSA, которому и посвящена данная статья.

Программно-определяемые хранилища считаются очередной вехой в развитии технологий хранения данных (Рис. 1). Для рынка это новая технология, поэтому однозначного и точного определения соответствующему термину пока нет. Похожая ситуация отмечалась на заре появления «облаков», когда к ним относили всё подряд, не особенно вникая в значение термина. По аналогии с упомянутыми «облаками» основная идея SDS заключается в абстрагировании от аппаратной составляющей систем хранения и обработки информации и переходе к бизнес-ориентированной модели их построения.

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

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

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

Архитектура HPE StoreVirtual VSA

HPE VSA ‒ это программный продукт, который устанавливается в узлы виртуального кластера. На текущий момент поддерживаются системы VMware vSphere, Microsoft Hyper-V и KVM. Для первых двух существуют плагины, способствующие их интеграции с консолями администрирования, что позволяет управлять всей инфраструктурой из единой точки.

Для типового развертывания HPE StoreVirtual VSA нужны три узла — два узла для отказоустойчивости и третий для размещения функционала Quorum Witness, который будет отвечать за консистентность данных на всех узлах в случае разрыва связи. Возможен сценарий с использованием только двух узлов, однако в этом случае необходима независимая файловая шара NFSv3 для размещения Quorum Witness.

С точки зрения администратора виртуального кластера, StoreVirtual VSA представляет собой виртуальные машины под управлением Enterprise Linux, по одной на каждый узел кластера. Установка может быть произведена как с помощью специального программного мастера, так и путем развертывания OVF-образа. В обоих случаях вам придется сконфигурировать диск создаваемой виртуальной машины. Размер виртуального диска будет зависеть от размера блока, указанного при форматировании хранилища данных.

Как и любое ПО, StoreVirtual VSA требуются вычислительные ресурсы процессора и оперативной памяти, и для создания нового решения (или для проверки совместимости с имеющимся кластером) в HPE выработали ряд рекомендаций:

Ёмкость StoreVirtual VSA (суммарно по всем узлам) Необходимое количество оперативной памяти, без использования Adaptive Optimization Необходимое количество оперативной памяти, при использовании Adaptive Optimization
<= 1 Tбайт 4 Гигабайт (Гб) 4 Гигабайт (Гб)
1 — <= 4 Tбайт 5 Гб 5 Гб
4 — <= 10 Tбайт 7 Гб 8 Гб
10 — <= 20 Tбайт 9 Гб 12 Гб
20 — <= 30 Tбайт 12 Гб 17 Гб
30 — <= 40 Tбайт 15 Гб 21 Гб
40 — <= 50 Tбайт 18 Гб 26 Гб

Лицензируется данный продукт по объему, который мы выделяем гипервизору в качестве хранилища данных. Важно понимать, что это будет «сырой» объем с точки зрения конечного пользователя. В первую очередь локальные диски ваших серверов будут объединены в RAID-группы на уровне RAID-контроллера узла. На получившийся полезный объем и выдается лицензия. После запуска каждой отдельной VSA они объединяются в кластер и суммируют дисковое пространство в один общий пул, доступный потом пользователям (серверам) по блочному протоколу (iSCSI).

Возможности HPE StoreVirtual VSA

В наше время недостаточно просто предоставить некую емкость для хранения данных. Система хранения должна обладать возможностями по защите данных от сбоев, обеспечивать оптимизацию управления данными, их хранения и обработки. StoreVirtual VSA может предложить нам все основные функции, которые присутствуют у аппаратных систем хранения:

  • Thin provisioning — «тонкие» тома, позволяющие системе выделять пространство по мере фактического наполнения данными;
  • Peer Motion — миграция томов без прерывания доступа к ним;
  • Multi-site SAN — распределенный по двум или трем площадкам единый том;
  • синхронная и асинхронная репликации;
  • создание консистентных снэпшотов на уровне приложений;
  • Network RAID — построение отказоустойчивых схем на уровне узлов кластера;
  • Split Site — создание географически разнесенных кластеров;
  • Adaptive Optimization — двухуровневый автоматический тиринг с гранулярностью 256 Кбайт.

Управление всеми функциями доступно как через CMC (Centralized Management Console), так и через плагин для консолей управления VMWare/Hyper-V.

На мой взгляд, среди перечисленных функций наиболее интересна Network RAID, защищающая данные от потери в случае выхода из строя целого узла кластера. По сути, речь идет о синхронной репликации между узлами, а уровень RAID регулирует количество копий блоков данных, хранящихся в кластере (Рис. 2).

К примеру, в случае с уровнем Network RAID level 10, который производитель рекомендует как самый оптимальный, в кластере всегда будут храниться две копии каждого блока данных. Такая схема резервирования дает нам гарантированную защиту от потери данных в случае выхода из строя одного узла кластера (а при особой удаче — до половины узлов), однако оверхед будет составлять 1/2. Это означает, что при покупке лицензии на StoreVirtual VSA 2 Тбайт мы получим виртуальное хранилище на 1 Тбайт полезной емкости.

Следующий уровень защиты — Network RAID level 10+1. В этом случае в кластере хранится три копии каждого блока данных. Допустимый уровень «потерь» — два узла. Оверхед будет составлять 1/3. Именно алгоритм резервирования Network RAID 10+1 лежит в основе технологии SplitSite, позволяя создавать кластер на трех географически разнесенных площадках. Самое примечательное в этой технологии то, что в отличие от классической репликации аппаратных СХД у нас отсутствуют такие понятия, как основная и второстепенная площадки. Приложению не важно, на какой из площадок в данный момент располагается обрабатываемый блок, а в случае выхода узла из строя и обращения приложения к дублирующему блоку на другой площадке оно не замечает разницы и, как следствие, не будет простаивать. С другой стороны, это накладывает жесткие требования на канал, соединяющий площадки между собой. Задержка в передаче данных, round trip, не должна превышать 5 мс.

Уровень Network RAID level 10+2 создает копии блоков на всех узлах кластера, что позволяет нам потерять n-1 узлов (где n — количество узлов в кластере), но при этом оврехед будет равняться 1/n. При этом минимально поддерживаемая конфигурация составляет три узла, что, на мой взгляд, является чрезмерным и неприменимо в реальных архитектурах.

По аналогии с аппаратными реализациями RAID в StoreVirtual VSA предусмотрены уровни резервирования с контрольными суммами: Network RAID level 5 и 6. В этих архитектурах появляются блоки с контрольными суммами, которые равномерно распределены по всем узлам кластера. Такая схема резервирования наиболее экономична с точки зрения оверхеда (n-1 для level 5 и n-2 для level 6), а уровень отказоустойчивости равен level 10 и level 10+1 соответственно. Однако необходимость считать контрольные суммы влечет за собой ощутимое снижение вычислительной производительности всего кластера, вследствие чего такое резервирование не рекомендуется для применения с высоконагруженными приложениями (самый явный пример — базы данных).

Позиционирование

Продукт StoreVirtual VSA входит в семейство решений для гиперконвергентных систем и как любая другая софтверная составляющая гиперковнергентных решений является бюджетным аналогом своего аппаратного оригинала — выделенной СХД. Основная задача данного продукта — создание отказоустойчивого защищенного хранилища для виртуализированного кластера без покупки дополнительного оборудования. При этом не стоит недооценивать функционал Network RAID, позволяющий реализовать синхронную репликацию между узлами кластера, в том числе географически разнесенными.

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

В заключение стоит отметить, что на текущий момент действует промо-программа HPE: при покупке любого сервера HPE Proliant Gen9 вы получаете лицензию StoreVirtual VSA на 1 Тбайт бесплатно. Это прекрасный повод не только скачать пробные лицензии для детального изучения продукта, но и начать внедрять его в новых проектах без увеличения их бюджета.

По всем вопросам, касающимся получения дополнительной информации и приобретения HPE StoreVirtual VSA, а также других СХД компании HPE, обращайтесь к Антону Демушкину (A.Demushkin@treolan.ru).

***

Treolan

105066, Москва, ул. Доброслободская, д. 5, стр. 1
Тел.: +7 (495) 967-66-84, (499) 261-15-42
www.treolan.ru

НА ПРАВАХ РЕКЛАМЫ