Проектируем СХД для видеонаблюдения

в 10:03, , рубрики: cctv, raid, Блог компании RAIDIX, видеонаблюдение, диск, камера, массив, Серверное администрирование, системное администрирование, СХД, хранение данных

Проектируем СХД для видеонаблюдения - 1

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

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

Выбор СХД для видеонаблюдения

Разновидности СХД

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

Под медленные задачи с большими объёмами обычно выбирают менее производительные решения с большими массивами на HDD (хранилища файлов и бэкапов). Для виртуализации и задач общего назначения применяют гибридные решения (flash+HDD), чтобы удовлетворить потребности и в скорости, и в объёмах. Для чувствительных к задержкам приложух и баз данных выбирают очень быстрые и дорогие хранилки — как правило, сегодня это all-flash, где на первый план выходит скорость, объёмы там в целом небольшие.

Для задач видеонаблюдения из этих трёх категорий выбирают в основном первую, ориентированную на объём, для получения низкой цены за терабайт. Также могут выбрать более дорогие гибридные решения, но толку от них будет мало, flash-кэш (или тир) забьётся от потокового (последовательного) трафика хранения и всё упрется в медленные HDD. Быстрые all-flash хранилки, ориентированные на случайный доступ, в последовательных операциях, конечно, тоже будут очень хороши, но для видеонаблюдения, требующего больших объёмов, это неоправданно дорогое и неэффективное решение.

Особенности ввода/вывода для видеонаблюдения

В контексте хранения данных для видеонаблюдения характерны многопоточные последовательные операции ввода/вывода:

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

С точки зрения нагрузки на хранилище оптимально, когда проект не предполагает постоянный просмотр видео из архива множеством операторов с нескольких рабочих мест. Мониторинг в реальном времени не требует чтения данных, а просмотр из архива происходит по одной видеозаписи — изредка или даже постоянно. В таком случае основная нагрузка — 90% и более — будет приходиться на запись, СХД не будет подвергаться ощутимой нагрузке на чтение.

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

Проблема выбора

Сегодня на рынке представлено множество моделей СХД от различных производителей:

  • Есть вендоры, которые занимаются только хранением данных, и СХД являются их основными или единственными продуктами.
  • Есть гиганты ИТ-индустрии, которые делают всевозможное оборудование и ПО, при этом поддерживают и развивают собственные линейки СХД и решений для хранения.
  • Многие крупные производители ПО и железа для видеонаблюдения предлагают свои хранилки.

Условно все модели СХД можно разделить на два класса:

  • Брeндовые хранилки. Другими словами, СХД от производителей класса «А» или премиум-сегмент. Они крутые, надежные, у них хороший сервис. Ценник у них весьма недешёвый, даже на модели начального уровня, а серьёзные производительные модели стоят как самолёт. Самое обидное, что зачастую в них нельзя ставить произвольные винты (HDD), нормально в них воткнутся, станут работать и не лишат гарантии на железо только «родные» диски вендора СХД. По факту, это будут те же серверные винты от производителей, которые выпускают жесткие диски, но с фирменными салазками и фирменной наклейкой производителя СХД, только стоить они будут в разы дороже. Собственно, с винтами для брендовых серверов дела обстоят так же. Для проектов по видеонаблюдению, где люди привыкли считать деньги и не хотят переплачивать в разы за бренд, эти решения не подходят. Конечно, если заказчик «сидит на трубе» – это его случай, может себе позволить.
  • Бюджетные решения. Это готовые хранилки от «народных» СХД-вендоров либо сборные решения на недорогом стандартном (commodity) серверном оборудовании и программных СХД (SDS), платных или бесплатных. Сюда относятся и продукты от вендоров видеонаблюдения. Цены приятные, винты можно ставить любые, но могут возникнуть проблемы с надежностью, производительностью и сервисом. Такое решение подходит для небольших и некритичных проектов в условиях ограниченного бюджета. Для серьёзных систем, где нужна гарантированная надежность, производительность, отказоустойчивость и сервис, такие решения неприемлемы, это нужно понимать.

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

Особенности СХД RAIDIX

Архитектура

RAIDIX — программная СХД или SDS (Software Defined Storage), которая позволяет строить на базе стандартного серверного оборудования надежные, производительные и отказоустойчивые хранилища данных. В принципе, для этого подходят любые х64-серверы, включающие:

  • 1-2 процессора Intel Xeon подходящей модели и необходимый объем ОЗУ;
  • один или несколько SAS HBA-адаптеров для подключения внутренней и/или внешних дисковых корзин; аппаратные RAID-контроллеры не нужны и даже противопоказаны;
  • один или несколько интерфейсов для синхронизации кэша в двухконтроллерной конфигурации; есть несколько вариантов: SAS, InfiniBand, Fibre Channel (FC), Ethernet; возможно дублирование интерфейсов; в одноконтроллерном варианте они не нужны;
  • интерфейсы для подключения к сети SAN и/или NAS: Ethernet, InfiniBand, FC; возможно прямое подключения к хостам (клиентам) по SAS;
  • SAS/SATA диски (HDD) большого (3,5”) или малого (2,5”) форм-фактора; любая подходящая модель от любого производителя, без ограничений; SSD тоже поддерживаются, но в контексте видеонаблюдения они не интересны;
  • серверную платформу, подходящую для установки перечисленного выше оборудования.

Для подключения большого количества дисков предполагается использовать внешние дисковые полки (корзины), подключаемые по SAS. Рекомендуется использовать внутренние и внешние дисковые корзины с поддержкой горячей замены дисков.

Конечно, существует лист совместимости, перечень рекомендуемого и протестированного оборудования.

Варианты развертывания

RAIDIX предполагает два варианта развертывания: одно- и двухконтроллерный. В первом варианте ПО RAIDIX устанавливается на один физический сервер, выполняющий роль контроллера СХД. Диски объединяются в отказоустойчивый RAID-массив, однако сам сервер и некоторые его компоненты образуют единые точки отказа. Это может быть приемлемо для некритичных задач.

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

В нормальном режиме нагрузка равномерно распределяется по двум контроллерам — половина созданных на дисковом массиве томов обслуживается одним контроллером, другая половина — вторым контроллерам. Если по какой-то причине один из узлов–контроллеров выйдет из строя, вся нагрузка в автоматическом режиме, без прерываний и потери данных переключится на «оставшийся в живых» контроллер. Данное решение исключает наличие единых точек отказа и подходит для критичных проектов, чувствительных к простоям.

В качестве хорошего примера серверной платформы для двухконтроллерной конфигурации СХД RAIDIX можно привести решение AIC HA401-LB2. Это 4U платформа для высокодоступных серверов хранения (cluster-in-a-box) с двумя идентичными серверными узлами, дублированными блоками питания и внутренней дисковой корзиной на 24 HDD 3,5” c возможностью горячей замены. Каждый серверный узел поддерживает два процессора Xeon, до 2ТБ ОЗУ и до 6 PCIe-слотов расширения. Этого достаточно для развертывания очень производительной и ёмкой СХД на несколько сотен дисков. Данную платформу можно назвать одной из рекомендуемых, она успешно используется во многих проектах на базе RAIDIX.
Проектируем СХД для видеонаблюдения - 2
Такой подход даёт возможность создать оптимальное хранилище для любого проекта, с нужными объемами и производительностью. Объемы можно варьировать от 12 (можно и меньше) до сотен дисков на одну СХД. При этом необходимая производительность определяется выбранными процессорами Intel Xeon, объемом оперативки, пропускной способностью интерфейсов и адаптеров — можно заложить их с запасом для возможности наращивания дисковой ёмкости. Выбираем то, что нужно, и ничего лишнего – гибкость максимальная и никаких переплат.

Ключевые возможности

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

Для этих ребят решающими факторами были:

  • Быстрые последовательные (потоковые) операции для работы с тяжелым несжатым видео. Потоки большие, их надо успевать записывать без потерь и читать без тормозов.
  • Большая полезная ёмкость. Объёмы большие, стандартные решения на RAID-10 слишком затратны, нужны решения с контрольными суммами а-ля RAID-5/6.
  • Отсутствие просадки производительности при отказе дисков, когда массив находится в деградированном состоянии. Стандартные RAID-массивы в обычном состоянии, когда все диски живы, могут выдать нужную производительность, однако при деградации она сильно падает, это может привести к потере кадров, жутким тормозам и невозможности работы.
  • Высокая отказоустойчивость (доступность). Отсутствие единых точек отказа, гарантия сохранности данных при одновременном выходе из строя не менее двух дисков в массиве. Цена потери данных, которые очень долго и дорого снимали и монтировали, слишком высока, терять эти данные неприемлемо.

Удовлетворить эти требования можно было только с помощью брендовых Hi-End СХД, которые стоят «синих» денег. Поэтому пришлось искать альтернативу, и был разработан продукт, который впоследствии вырос в самостоятельное решение, стал RAIDIX-ом, и теперь на нем монтируется куча фильмов на студиях по всему миру. Общие задачи хранения на RAIDIX также решаются успешно. При этом стоимость у него вполне приемлемая, можно сказать, народная.

RAIDIX для видеонаблюдения

Основные преимущества

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

Обработка ввода/вывода к дисковой подсистеме и расчет контрольных сумм для обеспечения избыточности в RAIDIX осуществляется посредством вычислительных ресурсов процессоров Intel Xeon, для подключения дисков используются SAS HBA-адаптеры без RAID-функций. Запатентованные алгоритмы RAIDIX за счет использования внутренних инструкций центральных процессоров выполняют эти задачи гораздо быстрее и эффективнее, чем аппаратные RAID-контроллеры и ASIC-устройства. В итоге мы получаем возможности необходимые для большой инфраструктуры видеонаблюдения:

  • Быстрые последовательные (потоковые) операции для обработки данных с большого числа IP-камер. Например, сотни и тысячи камер с разрешением FullHD и выше, частотой 25 к/с, средней или высокой сложностью сцены.
  • Большая полезная ёмкость за счет возможности эффективно работать с большими RAID-группами на 12-24 диска, обеспечивающими отработку одновременного отказа до двух и более дисков. При этом могут успешно использоваться диски большого объёма — 6-10ТБ.
  • Отсутствие просадки производительности при вылетании дисков за счет мощи процессоров Xeon и эффективного подхода к использованию их инструкций. Данные с отказавших винтов очень быстро и незаметно для конечных потребителей ресурсов СХД вычисляются из контрольных сумм.
  • Поддержка двухконтроллерной конфигурации СХД, исключающей наличие единых точек отказа.

Дополнительные возможности

Кроме того, в арсенале RAIDIX имеются следующие уникальные и полезные для сферы видеонаблюдения «плюшки»:

  • Помимо стандартных уровней RAID 10, 5, 6 поддерживаются RAID 7.3 и N+M, которые обеспечивают отработку отказов до трех (RAID-7.3) и более (RAID-N+M, N дисков — полезный объем, M дисков — могут вылетать) дисков разом.
  • Возможность восстановления скрытых повреждений данных на дисках — защита от silent data corruption.
  • Упреждающая реконструкция. СХД отслеживает производительность всех дисков. Отдельные диски в случае неисправностей могут продолжать работать, но тормозить настолько, что восстановление их данных из контрольных сумм происходит быстрее чтения с этих дисков. В таком случае запись останется без изменений, но вместо чтения с проблемных дисков данные будут принудительно вычисляться из контрольных сумм массива для получения оптимальной производительности.
  • Частичная реконструкция. При временном отключении диска после его повторного подключения будет восстанавливаться лишь недостающая часть данных. Это может быть полезно при отключении дисков по ошибке, потере соединения дисков, перемещении дисков между полками, отключении полок целиком на время проведения обслуживания (при соответствующем числе полок и распределении RAID-групп по ним).

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

Действующие проекты на RAIDIX

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

В данный момент на этапе внедрения находится крупный проект на территории РФ по видеонаблюдению в масштабах города, в котором для организации хранилища было использовано 4 двухконтроллерных СХД RAIDIX, на 200 HDD по 6ТБ каждая. Еще один серьёзный проект по видеонаблюдению на базе RAIDIX разрабатывается для европейского казино: двухконтроллерная СХД на 300 HDD по 10ТБ. О них мы сможем рассказать в последующих публикациях, после введения систем в промышленную эксплуатацию.

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

Проект на 2000 IP-камер в Корее

Исходные данные

Йонъин — один из самых быстрорастущих мегаполисов в Южной Корее, равный по площади Сеулу, население города — около миллиона человек. Для фиксации нарушений ПДД и обеспечения безопасности власти установили в городе 2000 камер видеонаблюдения. Оборудование для записи и хранения видео находилось в 5 серверных стойках и занимало целую комнату. При этом камеры снимали видео невысокого разрешения, что существенно затрудняло работу правоохранительных органов, поскольку различить номер машины или лицо на изображении такого качества не представлялось возможным. Видеозаписи хранились меньше месяца, и полиция была ограничена в ресурсах при расследовании правонарушений — по истечении этого срока дела закрывались, штрафы за нарушения в бюджет не поступали.
Проектируем СХД для видеонаблюдения - 3

Для решения данной проблемы администрация города запланировала осуществлять запись и хранение видео в HD/FullHD разрешении. Режим записи камер — 24/7 (круглосуточно) с частотой 16-25 кадров в секунду. Срок хранения архива — не менее месяца. Такой подход в разы увеличивает скорость видеопотока и объем данных, следовательно, требует значительного увеличения производительности (пропускной способности — throughput) и ёмкости СХД, хранящей видеоархив.

Требования ТЗ на СХД

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

  • быстрая последовательная запись и чтение, исключение задержек и потери кадров при одновременной записи 2000 потоков HD/FullHD;
  • отсутствие просадки производительности дискового массива при выходе из строя допустимого конфигурацией количества дисков (деградация массива);
  • высокая надежность и отказоустойчивость, автоматическая отработка отказа любого элемента системы;
  • оптимальное соотношение цена/качество решения;
  • простота и удобство внедрения и сопровождения;
  • качественная техподдержка;
  • высокая плотность размещения оборудования;
  • высокая полезная ёмкость хранилища, достаточная для хранения видеоархива со всех камер глубиной не менее одного месяца;
  • возможность масштабирования.

Структура решения

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

Помимо СХД ИТ-инфраструктура проекта включала в себя:

  • 15 физических стоечных серверов на платформе Intel под управлением Windows Server для развертывания VMS-серверов (ПО видеонаблюдения);
  • 2 коммутатора InfiniBand (IB) Mellanox с пропускной способностью портов 40Гбит/с для подключения VMS-серверов к СХД.

Для развертывания СХД была использована 4U стоечная серверная платформа AIC HA401-CP2 c двумя серверными узлами и внутренней корзиной на 24 диска 3,5’’ — аналог более новой платформы AIC HA401-LB2. Данная платформа идеально подходит для развертывания двухконтроллерной отказоустойчивой конфигурации RAIDIX, поскольку каждый вычислительный (серверный) узел представляет собой отдельный сервер, со своей материнкой, процессорами, ОЗУ, сетевыми интерфейсами и HBA-адаптерами (для подключения дисковых корзин). Блоки питания задублированы и являются общими для всех узлов. Таким образом, за счёт дублирования всех необходимых компонентов исключаются единые точки отказа платформы в целом.

Ниже представлена структурная схема решения.

Проектируем СХД для видеонаблюдения - 4

Комплектующие

Аппаратная конфигурация серверных узлов — контроллеров СХД идентична, каждый контроллер включает:

  • Один процессор Intel Xeon E5-2609 (4 ядра по 2,4ГГц). Не самый свежий и мощный «проц», но его вполне хватило.
  • 128ГБ ОЗУ — много дисков и RAID-групп требуют большого объема оперативки.
  • 2 двухпортовых InfiniBand-адаптера Mellanox ConnectX-3, скорость передачи 56Гб/с на порт. 2 порта для подключения к IB-коммутаторам, 2 порта для синхронизации кэша контроллеров — 2 кроссовер-соединения между серверными узлами.
  • Один SAS HBA-адаптер Broadcom 9207-4i4e для подключения к 1 внешней (JBOD на 60 дисков) и 1 внутренней дисковой корзине (24 диска). 4 внешних (4e) и 4 внутренних линии SAS по 6 Гбит/с, 1 внешний порт Mini-SAS.
  • Один HBA-адаптер Broadcom 9207-8e для подключения трех внешних дисковых полок (3 JBOD на 60 дисков, 2 полки каскадом). 8 внешних (8e) линий SAS по 6 Гбит/с, 2 внешний порта Mini-SAS.

В проекте было использовано 208 жестких дисков корпоративного класса SAS HDD 3,5’’ 4ТБ 7200об/мин для достижения ёмкости, необходимой для хранения видеоархива. Для размещения такого количества дисков помимо внутренней дисковой корзины платформы СХД (на 24 HDD) было использовано 4 внешних дисковых полки (JBOD) AIC XJ3000-4603S:

  • форм-фактор 4U;
  • ёмкость — 60 HDD 3,5’’ с вертикальной установкой и горячей заменой;
  • 2 SAS-экспандера 6Гбит/с, 4 порта Mini-SAS на экспандер;
  • дублирование блоков питания.

Все дисковые корзины решения (внутренняя и внешние) поддерживали горячую замену дисков. Внутренняя и две внешние корзины были набиты дисками полностью (24+2х60=144HDD), согласно структурной схеме каждая из них независимо подключена к одному порту HBA-адаптера на каждом контроллере. Остальные 64 диска были поровну поделены между оставшимися двумя внешними полками (по 32 диска на полку), как показано на схеме, данные полки подключены каскадом (последовательно) — первая полка к HBA-адаптерам контроллеров, вторая — двумя путями к первой.

Возможность расширения

Решение поддерживает дальнейшее вертикальное масштабирование. Поскольку две дисковые корзины забиты не полностью, имеется возможность установить в них до 56 дополнительных дисков. При этом лучше поставить на контроллеры по дополнительному HBA-адаптеру (Broadcom 9207-8e) и подключить каскадированную дисковую полку к ним напрямую. На оставшиеся свободные порты новых адаптеров (пока заняли по одному из двух Mini-SAS портов) можно повесить ещё одну полку на 60 дисков.

В случае недостатка вычислительной мощности следует добавить по одному процессору на контроллер и увеличить объёмы ОЗУ. Таким образом, возможно наращивание ёмкости и производительности хранилища в 1,5 раза с минимальными инвестициями — существующая платформа вертикально расширяется без необходимости покупки новых серверов.

Конфигурация массива

При конфигурировании дискового массива был выбран простой и логичный подход. Каждому из 15 VMS-серверов было отдано по одному тому (LUN), каждый из которых размещался на отдельной RAID-группе из 12-15 дисков. Для создания каждой дисковой группы был выбран уровень RAID 7.3, обеспечивающий сохранность данных при одновременном отказе до трех любых дисков.

В итоге суммарная полезная ёмкость хранилища составила порядка 600ТБ.

Плотность размещения

Всё оборудование, необходимое для организации СХД, было размещено в одной стойке, как показано на рисунке ниже.

Проектируем СХД для видеонаблюдения - 5

Следует отметить, что при этом значительная часть пространства стойки осталась пустой, полезное пространство, занимаемое железом СХД — 20U (5 узлов по 4U), плотность размещения довольно высокая.

Заключение

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

Сегодня оборудование, использованное в этом проекте, устарело: вышли новые поколения и модели процессоров, HBA-адаптеров, объёмы дисков выросли до 8-10ТБ. Стало быть, ёмкость проекта может быть достигнута и превышена на новом железе с плотностью размещения 8U вместо 20U.

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

Автор: raidixteam

Источник

Поделиться

* - обязательные к заполнению поля