Под катом в этом материале — рассказ о том, что такое AaaS, почему модель Application as a Service считается более перспективной, чем знакомые нам SaaS, PaaS и IaaS, и как разработчики и ученые Университета ИТМО реализуют такую модель в рамках проекта CLAVIRE.
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 поближе и поработать с системой самостоятельно можно тут.
Автор: Университет ИТМО