Облачный сервис ОИЯИ для научных и инженерных расчетов на ресурсах МИВК
Автор: Соколов Иван Александрович, Кореньков Владимир Васильевич
Журнал: Сетевое научное издание «Системный анализ в науке и образовании» @journal-sanse
Статья в выпуске: 2, 2019 года.
Бесплатный доступ
Облачные вычисления стали обычным инструментом, используемым учеными во многих областях. Пользователям ОИЯИ предоставляется многофункциональный информационно-вычислительный комплекс (МИВК), включающий в себя различные вычислительные ресурсы ОИЯИ, для выполнения широкого спектра научных расчетов. Для ускорения выполнения научных расчетов, а также упрощения запуска однотипных задач, но с использованием различных типов ресурсов МИВК, был разработан прототип облачного сервиса ОИЯИ для научных и инженерных расчетов. Он состоит из нескольких компонентов и реализует гибкую и модульную архитектуру, которая позволяет запускать большое количество задач на различных типах вычислительных архитектур. Примером использования сервиса в научных вычислениях является исследование сверхпроводящих процессов в уложенных длинных джозефсоновских переходах.
Облака, сервис, вычислительные ресурсы, вычисления, веб-портал, сloud
Короткий адрес: https://sciup.org/14123297
IDR: 14123297
Текст научной статьи Облачный сервис ОИЯИ для научных и инженерных расчетов на ресурсах МИВК
Довольно часто небольшие исследовательские научные группы не имеют доступа к достаточно мощным вычислительным ресурсам для проведения исследовательских работ. Глобальные вычислительные инфраструктуры могут быть сложными из-за бюрократических издержек, а также из-за сложности использования базового инструментария.
Распространенной практикой является выполнение вычислений на собственных ноутбуках или ПК, которые могут длиться дни или даже недели. Другие покупают мощные настольные серверы и переносят на них вычислительную работу. Однако возможными недостатками такого подхода являются:
-
1. Потребность в соблюдении оптимальных параметров окружающей среды.
-
2. Необходимость квалифицированного обслуживания оборудования.
-
3. Неэффективное использование и распределение ресурсов.
-
4. Простаивающие вычислительные мощности современных серверов.
На помощь небольшим исследовательским научным группам из ОИЯИ и стран участниц в преодолении описанных проблем приходит многофункциональный информационно-вычислительный комплекс (МИВК) [1]. Он является базовой установкой ОИЯИ и обеспечивает в режиме 24х7 выполнение целого спектра конкурентоспособных исследований, ведущихся на мировом уровне в ОИЯИ и в сотрудничающих с ним мировых центрах. Данный комплекс включает в себя такие типы ресурсов как: облачные вычисления, гетерогенный кластер HybriLIT , грид-инфраструктура, центральный информационно-вычислительный комплекс, суперкомпьютер «ГОВОРУН». Комплекс предоставляет широкий спектр различных типов вычислительных ресурсов, однако все равно возникают трудности с их использованием, связанные со сложностью инструментария различных ресурсов, неопытностью пользователей и т.п.
В связи с этим для сокращения времени получения значимых научных результатов, а также упрощения запуска однотипных задач, но с использованием различных типов ресурсов МИВК был разработан прототип облачного сервиса ОИЯИ для научных и инженерных расчетов. Он состоит из нескольких компонентов и реализует гибкую и модульную архитектуру, которая предоставляет возможность запускать большое количество задач на различных типах вычислительных архитектур. Все это позволяет ученому сосредоточиться на своей исследовательской области, взаимодействуя с сервисов удобным способом и абстрагируясь от базовой инфраструктуры, а также от ее обслуживания. Пользователь просто задает необходимые значения параметров для своей работы через вебинтерфейс и указывает адрес для загрузки результата.
-
1. Реализация
На данном этапе развития сервис позволяет запускать задачи на двух типах вычислительных архитектур МИВК: в облачной инфраструктуре ОИЯИ [2] и гетерогенном кластере HybriLIT [3].
Обычно пользователь взаимодействует с облачной инфраструктурой ОИЯИ через вебинтерфейс, который позволяет ему управлять виртуальными машинами (ВМ) в рамках своих квот и использовать их по назначению. Ресурсы гетерогенного кластера HybriLIT доступны пользователям через командную строку, подключенную удаленно к машинам комплекса. Взаимодействие пользователей с данными типами вычислительных архитектур может быть упрощено путем создания вебформы для конкретной научной задачи, где пользователю просто нужно ввести значение параметров определенной задачи, выбрать тип счетного ресурса, определить количество требуемых ресурсов и указать место для загрузки результатов. Реализация такого подхода позволило реализовать инфра-
Электронный журнал «Системный анализ в науке и образовании» Выпуск №2, 2019 год структуру типа « Software-as-a-Service » ( SaaS) - облачный сервис ОИЯИ для научных и инженерных расчетов на ресурсах МИВК.
Базовая схема взаимодействия с сервисом и его основные компоненты показаны на рис. 1 и описаны ниже.

Счётный ресурс: кластер HybnLIT
Счётный ресурс: облако ОИЯИ
Рис. 1. Базовая схема взаимодействия с сервисом и его основные компоненты
-
1.1 Веб-портал
Пользователь взаимодействует со всем сервисом только через веб-портал (отмечен цифрой «1» на рис. 1), который является «клиент-серверным» веб-приложением. Серверная часть основана на платформе Django [4], которая реализует так называемую архитектуру «модель-шаблон-представление». Взаимодействия серверной части портала c другими компонентами сервиса осуществляется через удаленные вызовы процедур, закодированные в формате XML , то есть через так называемый стандарт «XML-RPC ».
Клиентская часть портала, с которой пользователь непосредственно взаимодействует через свой браузер, была разработана с использованием программного стека, включающим в себя: Bootstrap 3, AJAX , JavaScript, HTML 5 и CSS . Она позволяет выбрать конкретное приложение, тип счетного ресурса и его количество, определить входные параметры и отправить задачу на расчет. Кроме того, сервис отображает информацию о свободных и занятых ресурсах в рамках пользовательских квот. Серверная часть получает эту информацию и на ее основе формирует запрос в IdleUtilizer ( IU) для запуска задачи на вычислительных ресурсах МИВК.
Веб-портал позволяет пользователю осуществить отмену ранее запущенных задач, посмотреть детали конкретной задачи, а также список всех задач.
-
1.2 Единая система аутентификации ОИЯИ
Веб-портал аутентифицирует пользователя по средствам единой системы аутентификации ОИЯИ [5] (отмечен цифрой «2» на рис.1), что снижает риск ошибочного доступа к сторонним сервисам, а также уменьшает путаницу между использованием различных комбинаций пароля и логина. Скриншот формы аутентификации через единую систему аутентификации ОИЯИ представлен на рис. 2.

Рис. 2. Форма аутентификации через единую систему аутентификации ОИЯИ
-
1.3 IdleUtilizer
IdleUtilizer - это служба для управления счётными узлами (создание, отслеживание их статуса, удаление) в облаке ОИЯИ, а также для взаимодействия с ресурсами гетерогенного кластера HybriLIT (отмечен цифрой «3» на рис. 1).
В рамках сервиса IU выполняет следующие задачи:
-
- получение информации, определенной пользователем на этапе создания задачи, включая характеристики необходимых ресурсов, а также входных параметров для выполнения расчетов;
-
- управление виртуальными машинами в облаке (создает запросы на создание виртуальных машин, проверяет состояние запросов, удаляет виртуальные машины и т. д.);
-
- управление ресурсами кластера HybriLIT ;
-
- управление пользовательскими задачами (отправляет пользовательское задачу на расчет, проверяет его состояние, отменяет отправленное задание по запросу пользователя и т. д.).
IU поддерживает облака на основе OpenNebula [6], а также системы управления локальными вычислительными ресурсами на основе HTCondor [7] и Slurm [8].
-
1.4 HTCondor
HTCondor - это специализированная система управления локальными вычислительными ресурсами. HTCondor предоставляет механизм очередности заданий, политику планирования, схему приоритетов, мониторинг ресурсов и управление ресурсами.
Если в качестве счетного ресурса выбрано облако ОИЯИ, то каждое отдельное пользовательское задание инициирует создание указанного количества вычислительных ресурсов - виртуальных машин в облачной инфраструктуре ОИЯИ. Они становятся рабочими узлами системы управления локальными вычислительными ресурсами на базе HTCondor (отмечен цифрой «4» на рис. 1).
Электронный журнал «Системный анализ в науке и образовании»
1.5 Облачная инфраструктура ОИЯИ
Облачный сервис ОИЯИ для научных и инженерных расчетов позволяет отправлять задания на расчеты в облако на основе OpenNebula , где создаются виртуальные машины для выполнения реальной рабочей нагрузки.
Облако ОИЯИ (отмечено цифрой «5» на рис.1) используется в качестве одного из счетных ресурсов сервиса входящего в МИВК. Схема облачной инфраструктуры ОИЯИ показана на рис. 3.

Рис. 3. Схема облачной инфраструктуры ОИЯИ
-
1.6 Гетерогенный кластер HybriLIT
Гетерогенный кластер HybriLIT (отмечен цифрой «6» на рис. 1) является вычислительной компонентой, включающей в себя многоядерные центральные процессоры, графические ускорители NVIDIA и сопроцессоры Intel Xeon Phi . В качестве системы управления локальными вычислительными ресурсами используется Slurm . Гетерогенный кластер выступает в качестве второго счетного ресурса для запуска пользовательских задач на расчет.
-
1.7 Программно-определяемое хранилище на базе Ceph
Одним из ключевых компонентов облачной инфраструктуры ОИЯИ и сервиса является программно-определяемое хранилище на базе Ceph [9] (отмечено цифрой «7» на рис. 1). Оно обеспечивает размещение дисков облачных ВМ, а также файлов с результатами расчётов. Схема развертывания программно-определяемого хранилище на базе Ceph в ОИЯИ показаны на рис. 4.

Рис. 4. Схема развертывания программно-определяемого хранилище на базе Ceph в ОИЯИ
-
1.8 Ganglia
-
2. Взаимодействие пользователя с сервисом
Для получения информации о различных показателях (использование ЦП и памяти, а также дисков и сетевого трафика) рабочих узлов HTCondor , развернутых и запущенных на облачных виртуальных машинах, используется система мониторинга на основе Ganglia [10] (отмечена цифрой «8» на рис. 1).
Одним из ее преимуществ перед другими подобными системами является независимость от топологии, что означает, что узлы, отслеживаемые агентами, могут динамически появляться и исчезать без необходимости перезапускать основные службы на главном узле Ganglia , то есть топология отслеживаемой системы может динамически меняться.
Скриншот веб-интерфейса Ganglia с обзором загрузки процессора рабочих узлов (в данном случае ВМ) показан на рис. 5.

Рис. 5. Скриншот веб-интерфейса Ganglia с обзором загрузки процессора рабочих узлов
Прототип сервиса доступен по адресу Пользователь осуществляет вход на вебпортал через свой веб-браузер (см. рис 6). Для начала работы с сервисом пользователь проходит аутентификацию через единую систему аутентификации ОИЯИ (см. рис. 2).

Рис. 6. Скриншот страницы входа на сервис
После успешной аутентификации пользователь попадает на вкладку « Creating a job », где ему необходимо выполнить следующий набор действий:
-
1. выбрать определенное приложение, которое он хочет запустить (см. рис. 7);
-
2. выбрать тип счетного ресурса и определить количество запрашиваемых ресурсов (см. рис. 8);
-
3. ввести значения параметров выбранного приложения, если они есть (см. рис. 9);
-
4. указать URL для загрузки результатов (см. рис. 10);
-
5. нажать кнопку « Submit », чтобы отправить задачу на расчет (см. рис. 8).

Рис. 7. Раздел выбора приложения на вкладке «Creating a job»

Рис. 8. Раздел выбора счетного ресурса и его количества на вкладке «Creating a job»

Рис. 9. Раздел ввода значения параметров выбранного приложения на вкладке «Creating a job»
URL for uploading job results ftp://1O.93.221.37/pub/
Рис. 10. Раздел ввода URL для загрузки результатов на вкладке «Creating a job»
После нажатия на кнопку « Submit » пользователь перенаправляется на вкладку « Jobs results » (см. рис. 11), где он может отслеживать ход выполнения задания, отменить его, нажав кнопку « Cancel ». Так же пользователь может просмотреть детали запущенной задачи (см. рис. 12), нажав на соответствующую кнопку в строке задачи.

Jobs
List of jobs
Job ID
Path
Status
ftp://10.93.221.37/pub/
Details

bootstrapping
Cancel
ftp://10.93.221.37/pub/

cancelled

ftp://10.93.221.37/pu b/error/


ftp://10.93.221.37/pub/


Рис. 10. Скриншот вкладки «Jobs results»

Рис. 12. Окно просмотра деталей задачи на вкладке «Jobs results»
Когда задание переходит в статус « Done », сервис отправляет пользователю электронное письмо с информацией, что расчеты закончены, и он может загрузить выходные файлы по указанному URL -адресу.
Сервис имеет раздел « Advanced mode » на вкладке « Creating a job » (см. рис. 12). Он позволяет изменять IP -адрес IdleUtilizer , а также редактировать описание задачи для HTCondor . Этот режим можно активировать, установив соответствующий флажок. Данный раздел полезен для осуществления отладки и тестирования и обычно не должен использоваться простыми пользователями.

Рис. 12. Раздел «Advanced mode» на вкладке «Creating a job»
На данный момент в веб-портале реализован запуск двух приложений:
-
- « Hello test », которое используется для тестирования и отладки.
-
- « Long Josephson junctions simulation », которое позволяет моделировать фазовую динамику системы длинных джозефсоновских переходов (ДДП) с расчетом их вольт-амперных характеристик [11]. Системы ДДП подвергаются интенсивным исследованиям из-за перспективы практического применения в наноэлектронике и квантовых вычислениях.
-
3. Планы
В ближайшее время планируется развивать сервис по следующим направлениям:
-
- Визуализация результатов на сервисе после окончания расчетов.
-
- Организация нового хранилища для результатов расчетов.
-
- Добавление возможности запуска задач на других счетных ресурсах МИВК.
Кроме этого, планируется вести работы по расширению количества запускаемых приложений на сервисе.
Заключение
Облачной командой ОИЯИ был разработан сервис предоставляющий возможность запускать большое количество задач на различных типах вычислительных архитектур МИВК. Он позволяет сократить время получения значимых научных результатов, а также упрощает запуск однотипных задач. Все это позволяет ученому сосредоточиться на своей исследовательской области, взаимодействуя с сервисов удобным способом и абстрагируясь от базовой инфраструктуры, а также от ее обслуживания. Пользователь просто задает необходимые значения параметров для своей работы через веб-интерфейс и указывает адрес для загрузки результата. По завершению расчетов сервис информирует пользователя об окончании и открывает доступ к файлам с результатами. Сервис значительно облегчил решение очень важной проблемы сверхпроводящих процессов в длинных джозефсоновских переходах. В ближайшем будущем сервис планируется только улучшать и усовершенствовать.
Работа над службой IdleUtilizer поддержана Российским фондом фундаментальных исследований в рамках гранта № 16-07-01111.
Остальная часть работы в рамках сервиса поддержана Российским научным фондом по гранту № 18-71-10095.
Список литературы Облачный сервис ОИЯИ для научных и инженерных расчетов на ресурсах МИВК
- Многофункциональный информационно-вычислительного комплекса // Информационный портал МИВК ОИЯИ. - [Электронный ресурс]. URL: https://micc.jinr.ru/?id=17.
- Baranov A.V., Balashov N.A., Kutovskiy N.A., Semenov R.N. JINR cloud infrastructure evolution // PPNL 13, 2016. - No. 5. - P. 672.
- EDN: YVGGOX
- Alexandrov E.I. et al. Research of Acceleration Calculations in Solving Scientific Problems on the Heterogeneous Cluster HybriLIT // RUDN JMISP 4, 2015. - P. 30.
- Greenfeld D., Greenfeld A. Two Scoops of Django: Best Practices for Django 1.8 (3rd ed.) // Publisher: Two Scoops Press. - P. 531.
- Drinkwater D. What is single sign-on? How SSO improves security and the user experience // CSO from IDG, 2018.