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

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

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

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

Владимир Недобой, директор центра интеграционных решений компании Redsys: «Ceph можно настроить так, что даже выход из строя значительной части оборудования – серверов и дисков – не приведет к фатальным последствиям»

Распределенная сеть хранения

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

Ceph обеспечивает объектный, файловый и блочный доступ к данным. В частности, поддерживается традиционный для файловых систем интерфейс с семантикой POSIX.

Масштабируемость хранилища на базе Ceph впечатляет: оно может располагаться на нескольких Linux-машинах, а может достигать многих тысяч узлов – подобные конфигурации встречаются, например, в крупных поисковых системах, таких как Yahoo. Дублированная репликация данных делает хранилище «непотопляемым», обеспечивая высокую живучесть системы.

«Поверх» Ceph могут успешно работать протоколы S3 и Swift – технология поддерживает API-интерфейсы Amazon S3 RESTful и OpenStack Swift.

Круг возможных применений

Наиболее целесообразно использовать сеть хранения на основе Ceph, если налицо хотя бы один из следующих факторов:

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

Использовать Ceph для записи оперативно поступающих транзакционных данных, как правило, не очень целесообразно.

Ceph позволяет хранить, совместно использовать и достаточно эффективно анализировать накопленную структурированную и неструктурированную информацию (не только текстовую). Это полезно, например, при создании территориально распределенных электронных архивов и систем электронного документооборота. Причем речь может идти не только о традиционных офисных документах (управленческих, бухгалтерских, кадровых, юридических и пр.), но и о производственной и конструкторской документации (например, в производственных холдингах, конструкторских бюро и проектных организациях, использующих системы САПР), документации логистических и транспортных компаний. Ceph также пригодится для хранения и обмена мультимедийными документами маркетинговых департаментов крупных организаций (например, розничных и аптечных сетей) – аудиофайлов, видеороликов и пр.

Экономия и надежность

Сложности, которые сегодня испытывает российская экономика, сказываются и на ИТ-бюджетах. Технология Ceph позволяет обойти многие трудности, связанные с сокращением финансирования, – она вполне достойно работает не только на современном высокопроизводительном оборудовании, но и на морально устаревшем, «слабеньком», давая организациям возможность эффективно задействовать имеющиеся вычислительные резервы. Эту возможность наверняка оценят и госзаказчики, и коммерческие предприятия, умеющие считать деньги. Конфигурации оборудования и дисковые интерфейсы могут быть самыми разными: от SATA и IDE до самых современных.

Ceph позволяет эффективно управлять данными и перераспределять нагрузку с учетом емкости и производительности носителей и систем хранения. Также эта технология позволяет управлять дублированием и репликацией данных, обеспечивая именно тот уровень надежности, который требуется организации. В частности, можно настроить Ceph так, что даже выход из строя значительной части оборудования – серверов и дисков – не приведет к фатальным последствиям (при этом жизненно важно для Ceph обеспечить сохранность хостов с метаданными). Благодаря этому можно отказаться от хранения на основе RAID, задействовав диски иным, более эффективным образом. Появляется также возможность уйти от классического резервного копирования, сохраняя копии в хранилищах Ceph, а не на стримерных лентах.

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

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

Если заказчик пожелает, RedSys готов обеспечить поставку и установку оборудования, помочь в интеграции Ceph с традиционными реляционными СУБД, такими как DB2 и PostgreSQL. В частности, разработчики RedSys создали расширение для СУБД PostgreSQL, обеспечивающее «бесшовную» интеграцию с Ceph: по определенному расписанию данные из Ceph поступают в PostgreSQL, при этом миграция данных или остановка серверов не требуется.