Обзор Huawei Oceanstor 2800 - конвергентная 2-контроллерная СХД для видеонаблюдения

Видеонаблюдение - одна из основных движущих сил на рынке систем хранения данных. Снижение стоимости IP-камер привело к тому, что сегодня их устанавливают сотнями, зачастую рядом друг с другом, направленные в одну точку, но с разным фокусным расстоянием, чтобы снимать общий план и захватывать лица, использовать интеллектуальный анализ кадра и просмотр с разных ракурсов. В ближайшем будущем нас ждёт распространение технологий на основе Big Data, где система наблюдения станет основным поставщиком данных для анализа поведения покупателей в магазинах, пассажиров на вокзалах и сотрудников бизнес-центров. Простой принцип «записал и сохранил» уже сегодня дополняется словом «проанализировал», поэтому сердцем систем видеонаблюдения становится не просто большая полка с дисками, куда всё записывается, а мощный вычислительный узел, способный работать с этими записями.

Huawei OceanStor 2800V3

Для таких сценариев компания Huawei выпустила специальную конвергентную систему хранения данных, OceanStor 2800, работающую по принципу «СХД + узел виртуализации» в одном устройстве. Предполагается, что в проектах, где используются сотни IP-камер с единым вычислительным центром, где функции анализа движения обрабатываются на уровне сервера, заказчику не нужно будет устанавливать отдельный физический сервер, настраивать отказоустойчивую конфигурацию, тратиться на быстрые сетевые интерфейсы: всё это можно сделать на уровне одной СХД, на контроллерах которой установлены гипервизоры для работы виртуальных машин. Наши читатели уже знакомы с подобными решениями на промышленных NAS-ах, но виртуализацию на SAN-устройствах мы тестируем впервые, поэтому сначала немного о архитектуре OceanStor 2800. У нас на тесте модель 2800 V3, но по тому же принципу построена старшая 2800 V5, поэтому многое из данной статьи относится и к более новой модификации.

OceanStor 2800 V3 - это двухконтроллерная система хранения, построенная по схеме Active-Active без единой точки отказа. В основе каждого контроллера стоит 6-ядерный процессор Intel Xeon E5 2620v2 с 48 Гб оперативной памяти, используемой для гостевых операционных систем и кэширования записи. Для виртуализации основной плюс двухконтроллерного решения - это встроенный механизм Failover, благодаря которому вы получаете два вычислительных узла с двойной защитой: если один контроллер зависнет или выйдет из строя, в течение нескольких минут виртуальная машина запустится на втором контроллере и видеонаблюдение продолжит работать.

Первоначальная настройка

Сразу хочется сказать, что несмотря на очень качественный Web-интерфейс, в настройке Huawei OceanStor 2800 сложна: всё, что касается виртуализации устанавливается через командную строку с использованием SSH подключения. Сам гипервизор (используется разработка компании Red Hat) - не основная функция СХД, поэтому даже для создания виртуалок придётся использовать все возможные средства: и терминал, и web-интерфейс, и даже SFTP-клиент для загрузки образа установщика, благо в системах видеонаблюдения это делается один раз. Начинаем с того, что инициализируем СХД и настраиваем дисковые пулы.

Huawei OceanStor 2800 выпускается только в варианте 2U под 3.5-дюймовые жёсткие диски, что в общем-то, вполне логично для системы видеонаблюдения. По умолчанию 4 отсека уже заняты системными жёсткими дисками (600GB, 10K RPM, SAS, HGST body), которые объединены в единый RAID 1 пул для программного обеспечения СХД и не участвуют в общем дисковом пространстве для хранения данных.

Как и все системы хранения данных Huawei, модель OceanStor 2800 имеет аппаратную привязку к жёстким дискам того же производителя. Как правило, Huawei использует накопители HGST, и для видеонаблюдения вам доступны только SATA-накопители, в нашем случае - серии He10, снабжённые переходником на SAS, необходимым для подключения к двум контроллерам. Для крупных проектов производитель предлагает использовать 8 системных жёстких дисков с интерфейсом SAS вместо четырёх. Но мне трудно сказать, насколько обоснован этот шаг, ведь на этих дисках хранится софт, который после запуска практически не использует системнй диск, а весь архив пишется на отдельный пул, который мы сейчас и настроим.

Мы объединяем 4 SATA диска в аналог RAID 5, который благодаря блочной виртуализации (технология Huawei RAID 2.0+), может выдерживать поломку 4 и более винчестеров, после чего создаём LUN-ы для привязки к виртуальным машинам. Именно они будут использоваться для архива видеонаблюдения, а связь между LUN-ами и виртуальными машинами будет осуществляться по виртуальной шине vHBA, так что высокоскоростные Front-end интерфейсы для хранения видеозаписей нам не нужны, и не важно, на каком контроллере работает виртуалка - диск E: под Windows всегда будет доступен.

Из терминала создаём виртуальную машину и выделяем ей аппаратные ресурсы. Здесь надо иметь в виду, что динамическое распределение памяти в гипервизоре отсутствует, так что для отказоустойчивости нужно рассчитать, чтобы суммарный объем всех виртуалок (основных и работающих в режиме отказоустойчивости) не превышал объем доступной памяти на одном контроллере. Всего поддерживается создание до 3 виртуальных машин на контроллер, и мы выделим 8 Гб ОЗУ для тестовой машины. По sFTP подключимся к контроллеру и загрузим на него .iso образ тестовой Windows 7, смонтируем его и запустим инсталляцию. После установки Windows, нам нужно обязательно проинсталлировать пакет VMTools, чтобы указать операционной системе использование дискового драйвера VirtIO, что даст возможность настроить отказоустойчивость. Как только этот шаг пройден, опять же из терминала указываем нашей виртуальной машине работу в режиме Failover. Всё, осталось только протестировать переброс виртуалки между контроллерами при отработке отказа.

Отказоустойчивость виртуальных машин и защита по питанию

Проверим схему работы отказоустойчивого кластера, созданного на базе одной-единственной СХД. Для этого на запущенной Windows 7 создаём текстовый файл, сохраняем в него метку текущего времени и на горячую отключаем контроллер, на котором работает виртуалка.


Увидев, что связь с вычислительным узлом пропала, Huawei OceanStor 2800 запускает виртуалку с резервного контроллера, и уже через пару минут мы наблюдаем наш рабочий стол с сохраненной временной меткой. Надо иметь в виду, что живой миграции машин между вычислительными узлами нет, поэтому как только мы подключаем основной контроллер обратно, наша Windows 7 будет заново перезапущена на своём контроллере. Таким образом, гипервизоры функционируют в режиме Active-Passive с постоянно сохраняющейся ролью главного и резервного, а downtime-период гостевой операционной системы при переключении вычислительного узла составляет 1 минуту 26 секунд.

Защита памяти от внезапного отключения электричества возлагается на массивные литий-ионные аккумуляторы ёмкостью как у современных ноутбуков - 4300 мАч. Два аккумулятора располагаются в модулях блоков питания и могут быть заменены на горячую, без остановки СХД. Использование таких больших батарей связано с тем, что для записи данных памяти на резервный MSATA-диск объемом 64 Гб нужно поддерживать работу всех систем СХД: чипсета, процессора и кулеров. Электрически аккумуляторы не связаны напрямую с блоком питания - только через общую плату. Так что если правый блок питания сломался и отключился, батарею может заряжать левый. Аккумуляторы постоянно находятся под потоком воздуха от 16-скоростных вентиляторов, так что перегрев им не страшен, но для большей уверенности производитель заключил батареи в стальные корпуса, всё же литий-ионные АКБ из-за деятельности Samsung и Apple имеют печальную славу пожароопасных, так что с мощным охлаждением и в стальной коробке за них как-то спокойнее.

Давайте протестируем как поведёт себя виртуальная машина при отключении питания - откроем Notepad и пропишем в нём текущее время, не сохраняя файл на диск, после чего обесточим систему хранения данных.

Период Downtime

После возобновления питания Huawei OceanStor 2800 автоматически запускает виртуалку, но перед нами - пустой рабочий стол: снимок памяти не сохранился. То есть, если контроллеры СХД работают в режиме Active-Active, то для виртуальной машины применяется схема Active-Passive. В среднем, время запуска Windows 7 составляет около 40 секунд при настройках 16 vCPU / 16 Gb RAM и запуске с системных жестких дисков. Это довольно-таки быстро, так что давайте посмотрим, на каком железе работает гипервизор OceanStor 2800V3.

Контроллеры

Каждый контроллер имеет по одному процессору Intel Xeon E5-2620 v2, уже устаревший по современным меркам. Если производительность CPU имеет для вас решающее значение, посмотрите на более новую OceanStor 2800 V5, хотя как мы увидим дальше при тестировании, для видеонаблюдения в сотни потоков хватит даже того, что есть. Память набрана шестью модулями DDR3-1600 ECC объемом по 8 Гб каждый, ещё два свободных слота снабжены заглушками, чтобы не создавать свободного коридора для воздушного потока. Контроллеры, как и интерфейсы, могут меняться на горячую без остановки СХД.

Для связи между контроллерами используется шина PCI Express 3.0 (до 8 Гб/с), причем Huawei подчеркивает, что для OceanStor 2800 основным программным слоем является как раз SAN, поэтому загрузка процессоров никак не влияет на скорость передачи данных, а вот это утверждение мы сейчас и проверим!

Тест зависимости скорости SAN от загрузки vCPU

Для каждой виртуальной машины на OceanStor 2800 V3 доступно до 32 vCPU, и мы с вами знаем, что ни одно приложение, ни одна база данных не дадут такой нагрузки на процессор, как Burn-In тест OCCT 4.5.1. Загрузим им из-под Windows 7 все 32 логических ядра и посмотрим как поменяется время доступа к дисковым ресурсам по iSCSI, а для полноты картины продублируем эксперимент с одним отключенным контроллером.

Результаты тестов

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

Отказоустойчивость на уровне портов

По умолчанию, на каждом контроллере уже имеются 4 интерфейса 1Gbps BASET, что в сумме даёт скорость около 1 гигабайта в секунду на СХД, плюс к этому пятый порт управления может использоваться для виртуальной машины (iSCSI соединение через него недоступно). Много это или мало? Если взять китайскую IP-камеру с разрешением 1080p, то обычно с кодеком H.264 она создаёт поток около 5 Мбит/с, и встроенных сетевых портов хватит для подключения 1500 таких камер, то есть больше, чем официально заявлено производителем. Так что именно для нужд видеонаблюдения, дополнительные сетевые интерфейсы могут и вовсе не понадобиться - была бы возможность разделить трафик по портам, и вот здесь нас ждёт небольшая неприятность: в виртуальную машину можно пробросить только те интерфейсы, которые подключены к контроллеру, на котором она работает, то есть нам доступны 4 ETH Front-End порта и пятый порт управления. При расчете в китайских IP-камерах это примерно 900 каналов с разрешением 1080p.

Для iSCSI-доступа таких ограничений нет, и к любому контроллеру можно подключиться через любой из Front-end интерфейсов, так что под VMware vSphere достаточно настроить два соединения к двум IP-адресам контроллеров, и получить отказоустойчивый доступ, и раз уж мы заговорили про iSCSI, то давайте измерим скорость переключения между контроллерами в режиме Active-Active для теста Random 4K Read.

Переключение контроллера

Как мы видим по графику, переключение между контроллерами занимает около 37 секунд, а при восстановлении СХД в нормальный режим Active-Active, обратный переброс дискового пула происходит за 5 секунд, при этом время доступа на основном и резервном контроллерах одинаковы.

С точки зрения интерфейсов, конвергентность в Huawei OceanStor 2800 не полная: вы не можете по одному и тому же ETH-порту направить одновременно и iSCSI трафик и поток с камер видеонаблюдения в виртуалку. Такова особенность SAN-архитектуры, и в общем-то, решение простое - каждый контроллер допускает установку до двух 4-портовых интерфейсных плат с горячей заменой следующего типа:

  • 4 порта RJ45 1G BaseT
  • 4 порта RJ45 10G BaseT
  • 4 порта SFP+ 10G ETH (адаптеры серии SmartIO)

В нашей статье про сравнение SFP+ и BASE-T мы показали, что задержки при iSCSI доступе между медным и оптическим интерфейсом могут достигать 20% (на флэш-массивах), но применительно к OceanStor 2800 имеет смысл установить дополнительно 4 порта 1G BaseT для видеонаблюдения и 4 порта SFP+ для SAN-сетей.

Настройка софта

Ну вот мы и подошли к финальной части настройке - установке ПО для видеонаблюдения. Как вы уже поняли, какого-либо встроенного программного решения на OceanStor 2800 V3 нет, так что нам доступно всё, что создала наука для Linux или Windows. Среди десятков дистрибутивов разобраться непросто, и друзья, занимающиеся поставками IP-камер Zavvio для интеграторов, посоветовали обратить внимание на Axxon Next и Macroscop. Последний разрабатывается нашими соотечественниками из Перми, этот программный пакет имеет дополнительные модули по анализу изображения, такие как "детектор касок" для строительных объектов, детектор очередей для касс, создание тепловых карт движения покупателей, распознаватель гос. номеров и прочие. Плюс, Macroscop более гибко использует дисковые ресурсы для видеоархива и как-то проще в настройке, поэтому Axxon Next был отложен до лучших времён, и в дело пошёл пермский продукт.

Скачиваем с сайта Macroscop дистрибутив и устанавливаем под виртуальную Windows 7 полный демо-комплект софта для видеонаблюдения (около 1 Гб). В режиме клиент+сервер, отображение на экране тепловых карт и видеопотоков приводят к тому, что загрузка составляет примерно 30-40% процессорного времени для 32 vCPU. Это, конечно, не дело - оставим на СХД только серверную часть видеорегистратора, а клиентскую вынесем на отдельный хост, ведь Macroscop поддерживает ускорение вывода на GPU, что нам очень пригодится.

Чтобы настроить отказоустойчивую работу и распределить нагрузку по контроллерам, нам нужна вторая виртуальная машина, которая будет работать на втором контроллере, дабы задействовать оба процессора для нужд для видеонаблюдения. Функции клонирования или миграции в гипервизоре OceanStor 2800 V3 не имеется, так что конвертируем виртуалку в шаблон, выполняя простую команду из терминала, а затем воссоздаём новую виртуалку на основе сохраненного образа, таким образом мы сократим время инсталляции с нескольких часов до нескольких минут.

После запуска двух Windows 7 убеждаемся, что Macroscop запущен на обоих контроллерах, идём в настройки программы и устанавливаем второй сервер. Клиентскую часть я вынес на Windows 10 x64, запущенную под VMware Workstation 14.1.3 из десктопного компьютера, чтобы все три компонента были виртуализированы - это облегчит бэкап и резервное восстановление в случае аварии. Да, привыкаем к тому, что держать профессиональное приложение на физическом хосте можно только в самом крайнем случае.

Тест 400 HD-потоков

Для того, чтобы протестировать возможность работы Huawei OceanStor 2800 V3 с видеопотоками, мы будем использовать эмулятор IP-камер, запущенный на тестовом стенде, который можно скачать с сайта разработчика софта вместе с дистрибутивом ПО. Здесь нужно сделать одну ремарку: эмулятор работает в 1-канальном режиме, а многоканальность настраивается клонированием камеры в сервере Macroscop. При этом, каждый канал по одному и тому же IP-адресу запрашивает видеопоток с эмулятора, так что мы получаем нагрузку и на сеть, и на дисковую подсистему СХД, всё как в боевых условиях. На Huawei OceanStor 2800 V3 под виртуалку было выделено 16 vCPU, и там запускалась только серверная часть программного обеспечения, поскольку клиентская очень не оптимизирована - ей для нормальной работы требует ускорение через GPU и запустив её на игровом компьютере, я задумался об очередном апгрейде...

Характеристики тестовой конфигурации

Huawei OceanStor 2800 V3

  • 4 x 10Tb HDD (SATA to SAS, HGST He10 body) RAID 5
  • 2 TB LUN vHBA
  • Виртуальная машина:
    • 16 vCPU
    • 16 Gb RAM
    • Windows 7 SP1 Guest OS
    • Macroscop 2.4 - запись архива на диск E:\ (2Tb LUN NTFS).

Тестовый стенд

  • Intel Xeon E5-2603 v4 (6C 1.7 GHz, 15M L3)
  • 32 GB DDR4 ECC RDIMM
  • Asrock Rack EPC612D4U-2T8R
  • VMware vSphere 6.7
  • FreeNAS ZFS (NFS storage lArc = 8Gb), 3xSavvio 10k.6 RAIDZ1
  • Виртуальная машина:
    • 6 vCPU
    • 16 Gb RAM
    • Windows 10 x64 18.07
    • Macroscop Virtual IP Camera

Интерконнект: 1Gbps ETH прямое подключение

Питание: Инэлт Monolith III 2000RT

Характеристики первого видео потока:

  • 1280х720
  • 28 FPS
  • 1.9 Мбит/с
  • H.264

Характеристики второго видео потока:

  • 1920x1080
  • 19-25 FPS
  • 5.9 - 7.9 Мбит/с
  • H.264
  • Тестовая запись с китайской камеры Pinetron PNC-IV2E2

В этом тесте мы столкнулись с двумя основными сложностями: поскольку записанный поток с FullHD камеры был закодирован с изменяемым битрейтом, нагрузка, создаваемая на СХД выглядела так: "то густо, то пусто", мониторинг показывал резкий рост записи на диск от 30 до 250 Мб/с, и нечто похожее наблюдалось на тестовом стенде. Плавно меняя количество потоков, мы дошли до 120, но перешагнули через возможности 1-гигабитного интерфейса, что сразу вызвало высокую загрузку на тестовом стенде. Плавное снижение потоков до 100 позволило добиться уровня, когда мы всё ещё находимся в пределах гигабита, но уже упираемся в дисковую подсистему SAN, где 4 винчестера никак не справляются со случайными операциями записи. Софт ругался на то, что дисковая подсистема тормозит, а перестраивать великолепный RAID 5 с блочной виртуализацией на RAID 0 - рука не поднялась. Фактически, мы зафиксировали в данной конфигурации стабильную работу 95 потоков Full HD, при которой не упирались ни в тестовый стенд, ни в дисковую подсистему СХД, ни в гигабитный интерфейс.

Результаты тестирования

Загрузка vCPU показывает, что запас по вычислительной мощности у Huawei OceanStor 2800 V3 всё ещё огромный, а значит при использовании большего количества винчестеров вполне допустимо выйти на заявленные 400 потоков.

Масштабирование и конфигурация

Вертикальное масштабирование не предусмотрено: единственное, что вы можете сделать с OceanStor 2800V3, чтобы повысить её производительность за счёт установки 8 SAS дисков под системные файлы.

Для расширения дискового пространства используются 2 типа дисоквых полок высотой 4U: одна на 24 диска с фронтальным подключением HDD и вторая - очень интересная полка на 75 дисков. Суммарно к головному устройству можно подключить до 750 жёстких дисков, что даст 7.5 Пб чистой ёмкости. Много это или мало? Если считать в наших любимых китайских HD-камерах, выдающих 7-мегабитный поток с постоянной записью 24 часа в сутки, то этой ёмкости хватит примерно на 8 месяцев круглосуточной записи с 400 таких видеокамер (при использовании RAID 5).

Интересно, что в особенностях конфигурации устройства начисто отсутствуют не только SSD диски, но и лицензии на файловый доступ (NFS, CIFS), дедупликацию и Tiering. Это нужно учитывать, если ваша цель - полная конвергентность (NAS + SAN + VMS в одной коробке), хотя в Web-интерфейсе Huawei OceanStor 2800V3 постоянно встречаются ссылки не только на эти технологии, но и на встроенные приложения, как например антивирус.

Гарантия и поддержка

Стандартная гарантия на устройство составляет 3 года, этот срок можно продлевать покупкой соответствующих сервисных пакетов до 31 декабря 2023 года (дата End of Support для данной модели). Так же вы можете воспользоваться пакетами расширнного гарантийного обслуживания:

  • 9х5 Next Business Day с выездом на место установки
  • 24x7x4H с выездом на место установки
  • 24х7х2H с выездом на место установки

Обслуживание осуществляется силами авторизованных сервисных центров и филиалов компании. 

Экономическая эффективность

Основной экономический эффект покупки Huawei OceanStor 2800V3 заключается в том, что вы экономите на серверах, выделяемых под VMS и на поддержке программной виртуализации. Плюс, при использовании свободного ПО, такого как ZoneMinder, вы не платите за лицензии на количество камер. Фактически, вы обходитесь одной только СХД с дисками, которая в любом случае вам потребуется для видеоархивов и можете настроить отказоустойчивый кластер из 2 узлов одной командой из терминала.

Экономический смысл

Технология RAID 2.0+ позволит массиву спокойно переживать поломку более 1 диска в RAID 5 и быстро перестраивать пул за считанные минуты. То есть само планирование дисковых ресурсов опять же позволяет сэкономить по сравнению с традиционным аппаратным и программным RAID.

Цена вопроса

В протестированной конфигурации использовалась цена Windows 10 x64 Pro, хотя мы использовали Windows 7 "из старых запасов", но как вы видите, это не сильно влияет на стоимость даже такого маленького проекта..

Недостатки

Мы очень много сказали о преимуществах Huawei OceanStor 2800 V3, но следует упомянуть и о недостатках. 

  • С моей точки зрения, основной минус у этой машины - слишком сложный процесс инсталляции виртуалок. Конечно, с точки зрения производителя эта система единожды настраивается сертифицированным интегратором и больше не трогается до конца срока службы устройства, но такие функции как импорт/экспорт виртуалки и снэпшоты должны быть доступны по клику мышки.
  • Отсутствие SSD дисков можно понять и простить в дешёвом школьном видеорегистраторе, но если у нас конвергентная SAN + VMS, то быстрый слой здесь должен быть обязательно.
  • Защита от внезапного отключения питания покрывает только кэш дисковой системы, хотя здесь прямо напрашивается сохранение снимков памяти виртуалок на диск и перевод их в suspend-режим.

Выводы

Если бы подобного решения не было, его надо стоило бы придумать: отказоустойчивый кластер из 2 узлов в одной коробке, аппаратно независимая архитектура SAN, блочная виртуализация RAID 2.0+ и возможность запихнуть 7.5 петабайт на жёстких дисках в один шкаф высотой 44U. Это огромная экономия в рамках одного масштабного проекта видеонаблюдения, и возможность сократить затраты на софт, лицензии и обслуживание.

Открытая платформа позволяет выбрать любой из программных продуктов для VMS, как бесплатные, так и коммерческие. При возможности софта, один из контроллеров можно выделить на запись видеоархива, а другой - на анализ, не забывая, что даже такая конфигурация выдержит выпадение одного из контроллеров. И всё же следует иметь в виду, что Huawei OceanStor 2800 - это в первую очередь двойной сервер видеонаблюдения, а уже во вторую - система хранения данных, поэтому при планировании проекта следует учитывать возможность использования только блочного доступа (iSCSI).

Мы благодарим компанию "ELKO", официального партнера Huawei, за предоставленную СХД Huawei OceanStor 2800 V3.

Михаил Дегтярёв (aka LIKE OFF)


Похожие статьи:

Обзор Huawei NetEngine 8000: изучаем особенности SRv6

Поговорим о преимуществах технологии сегментной маршрутизации на базе IPv6, вытесняющей собой протоколы распределения меток LDP и резервирования сетевых ресурсов, RSVP на примере 10-гигабитного маршрутизатора для малого бизнеса ...

Обзор внешних точек доступа Huawei AirEngine 8760R-X1 и AirEngine 6760R-51

Компания Huawei имеет в своём модельном ряду полный спектр оборудования для реализации высокопроизводительного общедоступного Wi-Fi для мест с большой плотностью устройств и жёсткими условиями эксплуатации. Сегодня перед нами топовые устройств...

Знакомимся с оборудованием Huawei Wi-Fi 6

Компания Huawei считается локомотивом перехода на Wi-Fi 6, и глядя на их оборудование, мы понимаем почему: точки доступа со скоростью до 10.7 Гбит/с, "умная" антенна, формирующая миллиарды вариаций направлений луча, три радиомод...

Обзор и тест Huawei Dorado 5000 V6 - All Flash СХД для крупных предприятий

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