Статья опубликована в журнале «БДИ» Выпуск № 1, 2014
ОБЛАЧНЫЕ ТЕХНОЛОГИИ ДЛЯ ВИДЕОНАБЛЮДЕНИЯ:
БЫТЬ ИЛИ НЕ БЫТЬ?
Облачные технологии являются, наверное, одними из самых противоречивых в бурно развивающемся мире ІТ. На просторах Всемирной паутины можно встретить немало критики этой концепции. Основоположник OpenSource Ричард Столман предупреждает, что облачные сервисы — это ловушка. Основатель компании Oracle Ларри Эллисон еще более жестко называет облака полной чушью. А рядовые недоброжелатели подхватываютэти вырванные из контекста цитаты и выводят их на своих флагах и транспарантах.
Свирин И.С., кандидат технических наук, генеральный директор ЗАО «Нордавинд»
О СУТИ ОБЛАЧНЫХ ТЕХНОЛОГИЙ
При всем этом популярность облаков набирает обороты, занимая все новые и новые ниши в различных прикладных областях и покушаясь уже на святая святых — системы видеонаблюдения. Давайте разберемся: чем же не угодили облачные технологии, и, если они так плохи, то стоит ли доверять им ответственную задачу обеспечения безопасности? Для чего были придуманы облачные технологии? Википедия1 дает прекрасное определение термину cloud computing, за которым скрывается модель обеспечения сетевого доступа по требованию к некоему общему пулу ресурсов, которые могут быть оперативно предоставлены или освобождены с минимальными эксплуатационными затратами. То есть, с технологической точки зрения, облако — это всего лишь некая совокупность ресурсов, которые предоставляются пользователю без раскрытия внутренней структуры системы, образующей эти ресурсы.
Пользователь может оперировать понятиями выделенной ему процессорной мощности, памяти, пространства для хранения данных, не задумываясь, на каких физических процессорах выполняются его приложения и как его пространство для хранения данных распределено между конкретными жесткими дисками в составе РАЮ-накопителей. Таким образом, использование облачных технологий не может быть неудобным для пользователя, который, по сути, получает единую точку входа в систему технологически безграничной сложности, оказываясь при этом совершенно независимым от любых ее внутренних изменений. Например, выход из строя какого-либо конкретного сервера в составе облачной системы при правильном администрировании останется незамеченным для пользователей облака, так как выполняемые задачи автоматически перераспределятся между остальным оборудованием. Это уникальное свойство облачных технологий еще называют эластичностью?, достоинства которой можно ощутить и в обычном штатном режиме работы системы, когда ресурсы облака могут приоритетным образом выделяться для решения оперативных проблем, а по мере их решения — перераспределяться на менее критичные задачи. Очевидно, что облачные технологии позволяют значительно уменьшить расходы на ИТ-инфраструктуру и оперативно реагировать на изменения потребностей пользователей системы. Облака удобны и для пользователей, и для администраторов, и для их владельцев. Что же с ними не так? Ответ на этот вопрос весьма прост, и, если не полениться и ознакомиться с полными текстами заявлений тех же уважаемых критиков облачных технологий Ричарда Столмана и Ларри Эллисона, то они не имеют ничего против самих технологий, достоинства которых было бы глупо и сложно оспаривать. Они резко возражают лишь против конкретных вариантов их применения [usecases] и построенных на их основе бизнес моделей. Я не считаю себя ярым сторонником «теории заговора», но концепция размещения собственных данных на серверах, принадлежащих каким-то внешним компаниям, даже мне кажется, мягко говоря, сомнительной. Итак, можно ли применять облачные технологии для решения задач обеспечения безопасности? Я думаю, в свете вышесказанного ответ очевиден: конечно, можно. Но только с важной оговоркой: если владельцем этого облака являетесь вы. Это позволит повысить удобство работы пользователей с системой видеонаблюдения, качество ее администрирования, эффективность использования имеющихся вычислительных ресурсов, если в составе одного облака будут функционировать и другие информационные системы компании.
ВИДЕОНАБЛЮДЕНИЕ В ОБЛАКЕ
Сразу оговоримся, что если ваша система видеонаблюдения «помещается» на один сервер, то думать об облаках — смысла нет, если, конечно, не ставится задача освоения всего самого и передового без разбора. Поэтому будем считать, что ваша система насчитывает несколько сотен камер, для обработки видео с которых требуются серьезные вычислительные ресурсы (видеоаналитика, транскодинг потоков для передачи мобильным клиентам), а архив имеет внушительные объемы — все это уже является серьезным поводом для того, чтобы задуматься о размещении системы в корпоративном облаке. Еще раз подчеркну, что применение облачных технологий не добавит вашей системе видеонаблюдения каких-то особых функций и потребительских свойств. Облако отличается от простой совокупности видеосерверов тем, что позволяет динамически изменять ресурсы, доступные экземплярам ПО видеонаблюдения, в зависимости от общего объема ресурсов и от сложности задач, выполняемых каждым экземпляром ПО.
Развертывание и администрирование, собственно, является чисто айтишной задачей, для решения которой можно использовать как свободно распространяемые реализации технологии (Xen Cloud Platform), так и коммерческие (WmWare vSphere) — все зависит от имеющихся компетенций технического персонала, финансовых возможностей и специфических требований к функциям самого облака.
В отношении непосредственно ПО видеонаблюдения — ничто не мешает развернуть в облаке серверную часть обычного ПО видеонаблюдения: современные средства виртуализации делают практически неразличимым для прикладного ПО его запуск на реальном физическом сервере или на виртуальном ресурсе. Однако использование ПО, адаптированного к технологиям виртуализации, позволяет задействовать больше «степеней свободы». Как правило, такое специализированное ПО представляет собой некое масштабируемое ядро, которое запускается на большом числе виртуальных машин в составе облака, а также некий модуль управления, взаимодействующий со всеми экземплярами ядра и осуществляющий управление и балансировку на прикладном уровне — например, распределение видеопотоков.
Поскольку адаптированного программного обеспечения крайне мало, то в качестве одного из возможных решений можно рассматривать создание своего собственного модуля управления для какого-либо уже готового обычного ПО видеонаблюдения, при этом взаимодействие с экземплярами запущенного ПО осуществляется через предоставляемое им АРІ. Данный путь, как правило, неосуществим для конечного потребителя, но с успехом применяется многими компаниями-интеграторами в рамках реализуемых ими проектов.
В качестве типового примера программного обеспечения, адаптированного для использования в составе облачной системы, можно привести ПО «Медиасервер» — совместную разработку ЗАО «Нордавинд» и ЗАО «Технокерт». ПО «Медиасервер» — то самое масштабируемое ядро, запускаемое на виртуальных машинах облака и обеспечивающее реализацию базовых функций видеонаблюдения:
- — получение аудиовидеопотоков от IP -камер и видеосерверов по протоколам RTSP и НТТР, а также аудио-видеопотоков с камер мобильных устройств (телефоны и планшетные компьютеры] при использовании специальных мобильных приложений;
- — ретрансляция аудиовидеоданных в ІР-сеть по протоколам RTSP/RTP [RFC-2326), RTMP [Adobe RTMP Spec.1.0], HLS [HTTP Live Streaming];
- — циклическое формирование архива получаемых потоков в специализированном хранилище, оптимизированном для хранения и быстрого. А доступа к потоковым данным;
- — трансляция архива удаленным клиентам по протоколам;
- — разграничение доступа к ретранслируемым » потокам реального времени и архиву;
- — предоставление статистической информации внешним системам мониторинга;
— АРІ для взаимодействия со стороны внешних систем.
Для максимально эффективного использования возможностей «Медиасервера» в составе облака предусмотрен специальный программный компонент «Балансер», который в режиме реального времени взаимодействует со всеми экземплярами «Медиасервера», получая и анализируя статистику их работы, оперативно реагируя на любые отклонения от оптимального режима распределения нагрузки.
ЗАКЛЮЧЕНИЕ
Итак, отвечая на вопрос, поставленный в названии статьи, можно однозначно ответить, что облачным технологиям при создании масштабных систем видеонаблюдения — безусловно, быть. Однако при выборе такого пути надо понимать, что облако — это всего лишь элемент ИТ-инфраструктуры, который может придать вашей системе видеонаблюдения большую надежность, удобство и гибкость, но лишь в айтишном срезе большой и комплексной задачи создания системы обеспечения безопасности. И помните: системы безопасности строились задолго до появления облаков — и прекрасно функционируют по сей день.