Информационный портал mskIT

Оригинал документа: http://mskit.ru/projects/p199797/


     
 

Первая российская ОС уровня предприятия – для госструктур, госкорпораций и крупных коммерческих организаций

06.04.2017 17:00
Менее года назад компания «Базальт СПО» представила на рынке первую линейку российских ОС уровня предприятия. В условиях действующей политики и нормативной базы импортозамещения «представить на рынке» — в узком смысле означает внести ОС в Реестр российских программ. Формально процедура не отличается особой сложностью. Фактически же этот шаг означал принятие ответственности перед теми, кому в изменившихся условиях придётся использовать именно ОС из Реестра: перед сотрудниками государственных учреждений, компаний-интеграторов, преподавателями учебных центров — перед всеми, кто так или иначе вынужден будет перейти на российское ПО.

Автор текста - Дмитрий Державин, ведущий инженер ООО «Базальт СПО»

В случае ОС уровня предприятия эта ответственность особенно велика, ведь речь идет о системообразующем ИТ-решении, которое отвечает за формирование и жизненный цикл целого ряда критически важных элементов ИТ-инфраструктуры. Есть ли у нашей компании объективные основания для такого шага? Уверен, что да. Об этом и пойдет речь ниже. При этом я сосредоточусь на технических и методических аспектах, не касаясь технической поддержки и других элементов сервисной обвязки ОС. Эти моменты, тщательно проработанные в линейке ОС Альт, имеют огромное практическое значение при внедрении и эксплуатации операционной системы уровня предприятия, но это большая отдельная тема.

Предпосылки и история создания ОС

Новые ОС уровня предприятия компании «Базальт» во многом опираются на технологии и архитектурные решения, созданные и проверенные в рамках целого ряда проектов команды Альт, в частности, — развития семейства отечественных ОС уровня подразделения. Так, облик ОС Альт как самостоятельной операционной системы оформился весной 2001 года и окончательно сложился через несколько лет, с выходом версии 3.0. Уже тогда можно было говорить не только и не столько об операционной системе, сколько о платформе для разработки решений, на базе которой разрабатывались и разрабатываются в том числе ОС, ориентированные на применение в корпоративной среде.

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

Одним из аспектов решения этой задачи была ставка на открытость — в англоязычном названии ОС «ALT» — рекурсивный акроним. Он означает «Alt Linux Team», то есть — команда разработчиков Альт Линукс. Любой желающий внести вклад в разработку ОС, имел возможность это сделать, оставаясь при этом в рамках родного языка, законодательства и, как сейчас говорят, культурного кода.

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

В итоге, сейчас, когда основа платформы — репозиторий «Сизиф», на базе которого выпускаются все операционные системы семейства Альт, — входит в число крупнейших самостоятельных репозиториев в мире, примерно половина из ведущих его разработчиков не являются сотрудниками компании «Базальт СПО», ответственной за поддержку инфраструктуры и выпуск основных дистрибутивов. То есть, ставка на открытость оправдалась — отечественным разработчикам действительно интересны открытые решения.

При этом открытость Альт направлена в обе стороны: так как основой платформы является Linux, все изменения, вносимые участниками команды, по возможности интегрируются в общую международную разработку.

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

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

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

Что получилось

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

В настоящее время поддерживает платформу компания «Базальт СПО», полноправный преемник компании «Альт Линукс». Кроме собственно программной платформы наша компания занимается разработкой, выпуском и поддержкой операционных систем, в том числе сертифицированных и зарегистрированных в Реестре отечественного ПО. Именно в компании «Базальт СПО» были воплощены в программном коде новые и чрезвычайно важные для  рынка импортозамещения идеи построения, выпуска и поддержки современных операционных системы уровня крупного предприятия на основе технологического потенциала платформы Альт и репозитория «Сизиф». Рассмотрим возможности и особенности этих ОС подробнее.

Возможности системы. Решаемые задачи.

Возможности системы имеет смысл рассматривать именно в контексте решаемых задач.

Список задач ОС, ориентированной на корпоративное применение, начинается с непосредственной работы с пользовательскими данными.

В области обработки данных ОС Альт предоставляет возможность решения широкого спектра прикладных задач, в том числе офисных — таких, как оформление текстов, электронных таблиц, схем, презентаций. Анализа и обработки аудиовизуальной информации — растровой и векторной графики, трёхмерной графики и анимации, видео, звука. Геоинформационных задач, в том числе, с поддержкой клиентской части служб протоколов общепринятого сейчас семейства стандартов OGC. Применения математических методов, решения задач моделирования и проектирования. Причём, что характерно, для большинства задач предусмотрены средства автоматизации рутинных операций, а также реализована поддержка стандартных протоколов и форматов обмена данными. Это значительно упрощает реализацию характерной для современных крупных организаций коллективной работы с информацией в формате «потоков работ» (workflow).

Вообще, встроенные средства автоматизации и привязки типично пользовательских инструментов к современным языкам программирования высокого уровня очень характерны для современных открытых пользовательских приложений. Они предоставляют даже неискушённым в программировании пользователям возможность существенно повысить уровень интеграции и продуктивность своей рабочей среды, реализовать «персональные потоки работ». Так, например, большинство представленных в ОС Альт программных средств для решения перечисленных выше задач могут управляться непосредственно из программ на языке Python, что принципиально позволяет добиться очень высокого уровня автоматизации.

Задача разработчика ОС в такой ситуации — предусмотреть в поставке операционной системы полный набор необходимых инструментов, обеспечивающий возможность применения встроенных в приложения средств автоматизации. Этот подход в ОС Альт является традиционным не только в области обработки данных. Например, для большинства сетевых служб возможность автоматизированного управления также поддерживается в полной мере «из коробки».

В состав ОС Альт входят полностью готовые к развёртыванию клиентская и серверная части ряда широко применяемых служб локальных сетей и Интернет. Например, обеспечивается работа служб доступа к графическим и текстовым терминалам, в том числе с поддержкой «тонких» и «толстых» клиентов, удалённой загрузки и централизованного хранения пользовательских конфигураций, служб доступа к файлам, служб протокола HTTP с поддержкой масштабирования и балансировки нагрузки, систем управления базами данных, в том числе реляционными, древовидными, документ-ориентированными, системами хранения данных в формате ключ-значение. Для большинства сетевых служб поддерживается возможность аутентификации с единой точкой входа, а также развитые средства мониторинга и событийного управления.

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

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

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

Домен безопасности ОС Альт основан на Samba DC — реализации домена безопасности, совместимого с Microsoft Active Directory. Он предоставляет единое пространство учётных записей пользователей и групп, централизованные настройки доступа к ресурсам и сквозную авторизацию в сети с единым входом. Поддерживается как серверная, так и клиентская часть: рабочие станции Альт могут входить в домен Active Directory, реализованный на базе Windows Server, а рабочие станции Windows могут входить в домен Альт. Поддерживается плавная миграция с домена Windows на домен Альт.

Для организации совместной работы в сети предприятия в ОС Альт применяется SOGo — служба, поддерживающая обмен сообщениями, контактами, расписаниями событий, а также гибкое разграничение доступа, интеграцию с доменом Samba DC и полную поддержку клиентов на базе Windows. Для SOGo также поддерживается плавная миграция с Microsoft Exchange Server.

Ещё одна важная часть инфраструктуры современного предприятия — облачные вычисления. Для решения этой задачи в ОС Альт входит OpenStack — платформа для организации облачных сервисов. Это единая расширяемая платформа для построения распределённых приложений и хранилищ данных. С её помощью можно организовать автоматизацию управления физическими и виртуальными узлами, мониторинг и балансировку нагрузки, а также поддержку инфраструктуры виртуальных рабочих мест.

Средства управления виртуальными окружениями в ОС Альт представлены ALT PVE — инструментом, который отличает простота внедрения и обслуживания, возможность управления через web-интерфейс, а также поддержка как «лёгких» изолированных окружений, так и полноценных виртуальных машин. Реализована также возможность организации виртуальных рабочих мест. При этом важно, что средства виртуализации в сертифицированных дистрибутивах ОС Альт входят в состав комплекса средств защиты информации.

Вообще, как уже было отмечено, средствам обеспечения безопасности при разработке ОС Альт уделяется особое внимание. Все дистрибутивы Альт разрабатываются с учётом современных реалий информационной безопасности. Высокий уровень защищённости достигается в том числе за счёт применения ряда собственных уникальных разработок: комплекса упреждающих мер для уменьшения возможностей атаки системы с «умолчальными» настройками; интегрированного в систему механизма изоляции приложений, чувствительных к сетевым атакам; уникальной реализации механизма управления фиксированными состояниями параметров системы, чувствительных к ошибкам оператора. Кроме того, как я уже отмечал, команда разработчиков Альт тесно сотрудничает с международным сообществом специалистов в области информационной безопасности, обеспечивая своевременную реакцию на обнаружение опасных уязвимостей.

Одной из характерных черт платформы Альт и ОС, разрабатываемых на её основе, является Alterator — единый интерфейс администратора, применяемый для быстрой настройки компонентов системы. Его концепция была сформирована ещё в первые годы развития Альт как самостоятельного проекта. Альтератор включает в себя три унифицированных пользовательских интерфейса — веб-, графический, и интерфейс командной строки, более 100 модулей конфигурирования — от задания имени узла до настройки домена безопасности или системы резервного копирования. Alterator отличает простота как разработки новых и модификации имеющихся модулей, так и интеграции с другими системами управления. Кроме того, в Альтераторе реализован многопользовательский режим работы с гибким разграничением прав.

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

Инфраструктура разработки в ОС Альт включает широкий выбор собственно средств разработки и инструментальных средств для создания приложений, а также конструктор дистрибутивов — уникальный инструмент для оформления своих разработок в виде установочного диска или образа для загрузки физических или виртуальных ЭВМ; обеспечивает совместимость с программными комплексами сторонних производителей — САВЗ, СКЗИ, СЭД, ФХД, а также обеспечивает поддержку стандартов РФ в области обработки данных.

В дистрибутивах Альт поддерживаются актуальные версии сред выполнения приложений на языках C/C++, Java, Python, Perl, Ruby, PHP, JavaScript, Go и других. Для большинства представленных языков программирования в ОС Альт доступны инструменты для обеспечения полного цикла проектирования, разработки, отладки, тестирования и развёртывания приложений, в том числе интегрированные визуальные среды разработки и проектирования, расширенный набор средств отладки, средства тестирования, включая инструменты для тест-ориентированной разработки, а также уникальные средства автоматизации процесса сборки и упаковки приложений в воспроизводимом изолированном окружении.

Инструментарий разработки Альт составлен с учётом применения современных стандартов и методов программирования. В дистрибутивах ОС представлен широкий спектр прикладных библиотек, предоставляющих возможность разработки приложений для решения, в том числе, следующих задач: двумерной и трёхмерной визуализация пространственных и геопространственных данных, анализа и обработки аудиовизуальной информации — растровой и векторной графики, трёхмерной графики и анимации, видео, звука. Разработки клиентских и серверных сетевых приложений, в том числе — масштабируемых и распределённых. Применения методов математической статистики, численных методов, инструментов для символьных вычислений, моделирования физических объектов и действия физических законов в виртуальной информационной среде. Для многих прикладных задач реализована поддержка высокоуровневых программных каркасов, в том числе — для быстрой разработки на специализированных языках и на скриптовых языках общего назначения.

Обеспечение высокой производительности приложений требует не только качественной реализации программной части, но и поддержки современного оборудования. Системы на базе дистрибутивов Альт в настоящее время полноценно работают на аппаратных платформах x86 и x86_64. Существуют сборки для armv7, armv8 («Байкал-М»), активно ведутся работы по портированию на современную платформу «Эльбрус», исследована и подтверждена возможность портирования на архитектуру mips («Байкал-Т1»). Для архитектур семейства x86 поддерживается современное оборудование ведущих производителей.

Как внедрять? Проблема технических заданий

Процесс внедрения современных «альтернативных» ОС связан с преодолением одной общей проблемы, которая заключается в потере культуры производства в области разработки технических заданий. Ориентация на готовые решения, описанные в рекламной литературе, привела к обратному процессу — адаптации задач к имеющимся решениям. Типичное «техническое задание» сегодня выглядит как перечисление проприетарных технологий и реализаций закрытых форматов и протоколов. Единственный способ выполнить такое задание — применить разработки соответствующего производителя. Любая попытка, например, внедрить Linux там, где ожидания ориентированы на Windows, будет обречена на провал.

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

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

Дмитрий Державин, ведущий инженер ООО «Базальт СПО»

Редактор раздела: Тимофей Белосельцев (info@mskit.ru)

Рубрики: Интеграция, ПО

наверх
 
 
     

А знаете ли Вы что?

     
   
     


Copyright 2004 mskIT. Все права защищены
Перепечатка материалов приветствуется при ссылке на www.mskIT.mskit.ru
Ресурс разработан и поддерживается компанией Peterlink Web