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

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

0d1f627014444029acc50b0f707eabd4.jpeg
Torley / Flickr / CC

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


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

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

bce4a04e241e4006b49e069a6ebce273.jpg

Облачные технологии 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 позволяет конструировать композитные приложения — комплексы, взаимодействующие для решения общей задачи. Коллекция композитных приложений для различных предметных областей предоставлена специалистами НИИ Наукоемких компьютерных технологий НИУ ИТМО и на сегодняшний день содержит несколько моделей.

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

27b592f46c3746e996487d5904928dd8.jpg

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

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


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

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

69c4ff4fe4364517a40d8774b1301f8d.png

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

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

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

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

d236d84cc54849bf9907925de9a5da5b.png

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

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

8156b827ad3940b4a5c635f827a023ce.png

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

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

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

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


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

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

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

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

d206740bd31742be8d4219f7fbfa8537.png

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

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

P.S. Если вас заинтересовала система, то комплект технической документации, методики использования комплекса CLAVIRE, программные и эксплуатационные документы, и начальные навыки работы с платформой можно получить здесь. А познакомиться с CLAVIRE поближе и поработать с системой самостоятельно можно тут.

Комментарии (1)

  • 17 января 2017 в 09:26

    0

    Спасибо за рассказ. Радует, что система уже в реальном мире применяется

© Habrahabr.ru