Облачные вычисления второго поколения: Система CLAVIRE

    Под катом в этом материале — рассказ о том, что такое AaaS, почему модель Application as a Service считается более перспективной, чем знакомые нам SaaS, PaaS и IaaS, и как разработчики и ученые Университета ИТМО реализуют такую модель в рамках проекта CLAVIRE.


    Torley / Flickr / CC

    AaaS: облачные технологии второго поколения


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

    Для развитых облачных сред характерна интеграция различных бизнес-моделей, что связано с ориентацией на конкретные потребности пользователей в разных областях деятельности. Для их классификации и анализа используется модель становления облачных вычислений Cloud Computing Maturity Model (CCMM), которая включает в себя пять уровней развития, представленных на схеме ниже.



    Облачные технологии I и II поколения в логике CCMM. Источник: Облачные вычисления второго поколения: композитные приложения, интерактивные системы и семантические технологии / А.В. Бухановский, С.В. Ковальчук

    Согласно CCMM выделяют облачные вычисления первого и второго поколений. Технологии первого поколения соответствуют уровням I—III и покрывают три известные бизнес-модели — это IaaS, PaaS, SaaS. Технологии второго поколения включают в себя уровни IV и V и ориентированы не только на предоставление пользователям отдельных сервисов по сети интернет, но и на управление целой экосистемой вычислительных, программных и информационных ресурсов.

    Это позволяет решать комплексные задачи, связанные с совместной деятельностью нескольких пользователей. Технологии облачных вычислений второго поколения реализуют перспективную модель облачных вычислений AaaS (Application as a Service), основной услугой в рамках которой оказывается разработка и использование композитных приложений (это совокупность взаимодействующих облачных сервисов, направленных на решение одной задачи).

    Такая концепция воплощена в многофункциональной инструментально-технологической платформе (МИТП) CLAVIRE (CLoud Application VIRtual Environment), разработанной в НИИ Наукоемких компьютерных технологий Университета ИТМО в рамках проекта реализации постановления Правительства РФ, связанного с поддержкой развития кооперации высших учебных заведений и организаций.

    Основные задачи МИТП — эффективное управление вычислительными, информационными и программными ресурсами распределенных неоднородных вычислительных инфраструктур, а также построение корпоративных облачных инфраструктур.

    Что может CLAVIRE


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

    Кроме того, CLAVIRE обеспечивает выполнение многоцелевых расчетов в пакетах SciLab, WEKA (демонстрационные пакеты, доступные для публичного использования через интерфейсы CLAVIRE, можно найти по ссылке).

    Также платформа CLAVIRE позволяет конструировать композитные приложения — комплексы, взаимодействующие для решения общей задачи. Коллекция композитных приложений для различных предметных областей предоставлена специалистами НИИ Наукоемких компьютерных технологий НИУ ИТМО и на сегодняшний день содержит несколько моделей.

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



    Решение задачи расчета распределения температуры и массовых скоростей в объеме конвекционного слоя основано на моделировании динамики наночастиц в среде методом молекулярной динамики и численном моделировании процесса конвекции методом конечных элементов (используемые пакеты: VMD, NAMD, Comsol, MDlogAnalyst, ComsolInitialise, интерпретатор Ruby)

    Как это работает


    Сами вычисления производятся на мощностях Amazon EC2, OpenStack, с использованием грид-вычислений. Грид-вычисления — это разновидность параллельных вычислений, которые выполняются с применением обычных компьютерных систем, подключенных к сети и объединенных в «виртуальный суперкомпьютер».

    В системе CLAVIRE используется проект ГридННС (грид-система для «Национальной нанотехнологической сети», реализованная в российских суперкомпьютерных центрах). Грид-сеть из суперкомпьютеров управляется базовыми грид-сервисами, расположенными в основном и резервном центрах управления, задача которых — координировать работу ресурсов системы и в то же время являться прослойкой между пользователями и грид-инфраструктурой.



    Вычислительная инфраструктура. Источник: CLAVIRE Облачная платформа для высокопроизводительных вычислений / А.В. Бухановский

    Для управления запуском задач на многопроцессорных установках используются такие решения как PBS, Torque, Windows HPC и Condor. Доступ к ресурсам осуществляется по SSH или через веб-сервисы, а в качестве операционных систем используются ОС Windows и Unix-подобные системы. Что касается инструментов виртуализации, то в CLAVIRE применяются приложения VirtualBox и решения VMware и KVM.

    Организация процесса создания и исполнения композитного приложения под управлением МИТП сводится к последовательной формализации наборов описаний в терминах потоков заданий (workflow, WF). На верхнем уровне описания приложения располагается мета-WF. В нем отдельные блоки содержат лишь указания для выполнения расчетных задач.

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



    Композитное приложение в виде WF. Источник: Облачная платформа для высокопроизводительных вычислений / А.В. Бухановский, С.В. Ковальчук

    Проектирование композитного приложения при указани исходных данных представляет собой процесс поэтапного уточнения MWF через стадии абстрактного (AWF) и конкретного WF (CWF), вплоть до создания конкретных сценариев запуска сервисов в облаке. На первом этапе проектирования композитного приложения формируется MWF. Пользователь способен выбирать классы сервисов, которые будут использоваться при подборе сервисов.



    Принципиальная схема создания и исполнения композитного приложения. Источник: CLAVIRE: Перспективная технология облачных вычислений второго поколения / А.В. Бухановский, В.Н. Васильев, В.Н. Виноградов и др.

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

    На рисунке выше представлена принципиальная схема создания и исполнения композитного приложения под управлением МИТП.

    Где это работает


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



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

    Сергей Иванов, руководитель международной лаборатории «Городская информатика» Университета ИТМО объяснил, что для базовой работы моделей хватит обычных камер наружного наблюдения в разных точках территории. Это позволит подстроить модель под реальную ситуацию, просто выделив группы людей из видеоряда и спроецировав их на модель.

    Полевое исследование с использованием технологии не так давно было проведено сотрудниками Университета ИТМО совместно с коллегами из других стран. Объектом исследования стал религиозный фестиваль «Кумбха-мела» в Индии. В течение месяца исследователи наблюдали за паломничеством порядка 70 млн людей к святым местам.



    Сферы применения МИТП. Источник: Облачная платформа для высокопроизводительных вычислений / А.В. Бухановский, С.В. Ковальчук

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

    P.S. Если вас заинтересовала система, то комплект технической документации, методики использования комплекса CLAVIRE, программные и эксплуатационные документы, и начальные навыки работы с платформой можно получить здесь. А познакомиться с CLAVIRE поближе и поработать с системой самостоятельно можно тут.
    • +19
    • 4,3k
    • 4
    Университет ИТМО 116,10
    IT's MOre than a University
    Поделиться публикацией
    Комментарии 4
    • +1
      Спасибо за рассказ. Радует, что система уже в реальном мире применяется
      • 0

        Я всегда чувствовал, что простые облака, состоящие из независимых инстансов, — это тупик. Типа, как пейджеры, которые в своё время рулили, а потом вдруг исчезли как класс. Теперь понятно, что будет с облаками. Их полностью заменят грид-системы.

        • +1
          Практически тот же самый SaaS…
          • 0
            SaaS — это отдельные приложения, а тут еще дополнительные уровни абстракции и управления.

          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

          Самое читаемое