Например, Бобцов

РАЗРАБОТКА СТЕНДА ДЛЯ ЭКСПЕРИМЕНТАЛЬНЫХ ИССЛЕДОВАНИЙ ТИПОВЫХ СХЕМ РАЗВЕРТЫВАНИЯ СИСТЕМЫ ACADEMICNT

РАЗРАБОТКА СТЕНДА ДЛЯ ЭКСПЕРИМЕНТАЛЬНЫХ ИССЛЕДОВАНИЙ …
УДК 004.942
РАЗРАБОТКА СТЕНДА ДЛЯ ЭКСПЕРИМЕНТАЛЬНЫХ ИССЛЕДОВАНИЙ ТИПОВЫХ СХЕМ РАЗВЕРТЫВАНИЯ СИСТЕМЫ ACADEMICNT
А.А. Скшидлевский, А.В. Лямин
Описывается стенд для проведения экспериментальных исследований типовых схем развертывания системы дистанционного обучения AcademicNT. Стенд основан на технологии виртуализации с целью упрощения механизмов развертывания и проведения экспериментов, повышения эффективности работы со стендом и минимизации затрат. На основе данных, полученных при экспериментальных исследованиях, строятся имитационные модели системы дистанционного обучения для последующего расчета мощности необходимых аппаратных ресурсов при функционировании системы с заданной нагрузкой. Ключевые слова: технология виртуализации, моделирование, имитационная модель.
Введение
На этапе планирования развертывания многопользовательского программного обеспечения существует известная проблема, когда, располагая какой-то системой, невозможно дать обоснованную оценку производительности данной системы в конкретных условиях проведения испытаний этой системы на конечном оборудовании в реальных условиях. Для решения задачи оценки производительности такой системы была предложена методика расчета на основе имитационного моделирования [1], а также проведено исследование поведения испытуемых при проведении педагогических измерений и разработана соответствующая математическая модель [2]. В настоящей работе предлагается подход, дополняющий предыдущие исследования и предоставляющий инструменты для получения необходимых данных для реализации имитационных моделей систем дистанционного обучения.
Типовые схемы развертывания
В качестве основы для исследований взята система дистанционного обучения (СДО) AcademicNT, разработанная в СПбГУ ИТМО [3, 4]. Есть несколько типовых схем развертывания этой системы как внутри одной сети, так и на территориально распределенных узлах. В качестве примера рассмотрим схему, изображенную на рис. 1.
Рис. 1. Типовая схема развертывания СДО AcademicNT
Эта схема представляет собой один узел вычислительного кластера в локальной сети, где отдельные элементы, такие как веб-серверы Apache HTTP, Apache Tomcat и система управления базой данных (СУБД) Oracle, взаимодействуют друг с другом, создавая единую отказоустойчивый структуру.
Имитационные модели
Каждый элемент этой схемы можно представить в виде модели, представляющей элементарное звено обработки запросов. Объединяя такие звенья в соответствии со схемой развертывания системы, получим модель, изображенную на рис. 2.

Рис. 2. Модель типовой схемы развертывания СДО AcademicNT
Основными входными параметрами такой модели являются генератор входного потока запросов и показатели среднего времени обработки запросов каждым элементом модели. На основе результатов апробации, проведенной в рамках исследования поведения испытуемых при проведении педагогических

126

Научно-технический вестник Санкт-Петербургского государственного университета информационных технологий, механики и оптики, 2011, № 3 (73)

А.А. Скшидлевский, А.В. Лямин
измерений, были получены распределения вероятностей для запросов к системе вовремя аттестаций. Эти исследования легли в основу генератора входного потока запросов. В модели буквами H1, H2, ..., Hn; T1, T2, ..., Tn; D1, D2, ..., Dn обозначаются устройства обработки запросов, а Qh, Qt, Qd – очереди.
Виртуализация и экспериментальный стенд
Для определения входных параметров модели при использовании различных схем развертывания было решено разработать экспериментальный стенд. Для повышения эффективности и гибкости разработки, а также минимизации затрат используется технология виртуализации. Эта технология позволяет на одном сервере одновременно запускать множество виртуальных систем, изолировать их друг от друга, распределять ресурсы между ними, создавать виртуальные сети и управлять этими виртуальными системами. На рис. 3 изображена общая схема виртуализации, где на одном сервере запускаются несколько виртуальных машин. В качестве монитора виртуальных машин было решено использовать гипервизор с открытым исходным кодом Xen, поддерживаемый компанией Citrix и распространяемый по лицензии GPL-2. Именно открытость исходных кодов позволила в полной мере использовать технологию виртуализации для реализации механизмов сбора и анализа статистической информации. Гипервизор Xen устанавливается поверх операционной системы GNU/Linux.

Гипервизор Аппаратное обеспечение

Рис. 3. Общая схема виртуализации с применением гипервизора
На виртуальных машинах можно реализовать любую необходимую схему развертывания системы, в данном случае используются виртуальные машины с веб-серверами Apache HTTP, Apache Tomcat и СУБД Oracle. Ключевыми компонентами данной схемы являются генератор запросов и агрегатор.
Генератор запросов представляет собой виртуальную систему, генерирующую запросы по заранее составленному сценарию. Сценарий представляет собой набор ссылок и переходов, которые бы выполнял реальный пользователь. При генерации запросов учитывается распределения вероятностей, полученные при апробации. Соответственно, есть возможность изменять интенсивность запросов.
Агрегатор представляет собой систему, собирающую статистику по функционированию реализованной схемы. Собирается статистика об объеме используемой оперативной памяти, использованию процессора и объеме передачи данных по сети, а также сохраняется дамп сетевого трафика для последующего анализа. На основе полученного дампа рассчитываются входные параметры для модели. Каждый элемент схемы порождает трафик особой структуры, что дает возможность точно сказать, какому элементу принадлежит тот или иной запрос. Каждый промежуточный запрос имеет временную метку. На рис. 4 проиллюстрированы этапы обработки запроса в СДО AcademicNT. К примеру, если запрос направляется сначала к веб-серверу Apache HTTP, после чего отправляется на веб-сервер Apache Tomcat, а затем сервлеты СДО AcademicNT взаимодействуют с базой данных, то в рамках одного запроса полное время обработки будет суммой всех временных затрат на каждом элементе данной схемы взаимодействия. Именно это время обработки может определить клиент, отправивший запрос. Но для использования в модели необходимо определить время обработки запроса, затраченное каждым отдельным элементом схемы. Эта задача решается с помощью идентификации фрагментов трафика и временных меток.
Таким образом, определяем переменные T1, T2 и T3, обозначающие время обработки запроса с учетом дочерних связующих элементов. Время N1, затраченное на передачу данных от клиента до серверов системы, является константой в каждом конкретном случае и не учитывается в модели. Время на передачу данных внутри локальной сети N2 и N3 намного меньше времени обработки запроса и тоже не учитываются в модели. Следовательно, время обработки запроса веб-сервером Apache HTTP будет соответст-

Научно-технический вестник Санкт-Петербургского государственного университета информационных технологий, механики и оптики, 2011, № 3 (73)

127

РАЗРАБОТКА СТЕНДА ДЛЯ ЭКСПЕРИМЕНТАЛЬНЫХ ИССЛЕДОВАНИЙ …
вовать Ht = T1 – T2 – T3, время обработки запроса веб-сервером Apache Tomcat будет соответствовать Tt = T2 – T3, а время обработки запроса СУБД Oracle будет соответствовать Dt = T3. Таким образом, можно определить все необходимые входные параметры для имитационной модели, а также получить некоторое представление о работе системы при использовании конкретной схемы развертывания.
Рис. 4. Этапы обработки запроса в СДО AcademicNT
Доработка гипервизора Xen Для виртуализации можно использовать как один сервер, так и несколько серверов при необходимости увеличения производительности. Но, чтобы иметь возможность работать с несколькими серверами как с одним целым, необходимо использовать общее хранилище данных для виртуальных машин. Так как одной из целей разработки стенда является снижение расходов при планировании развертывания системы, желательно избежать дополнительных расходов на общее хранилище данных на этапе планирования. Для решения этой проблемы используется модуль DRBD ядра Linux для реализации сетевого RAID первого уровня. К сожалению, на данный момент гипервизор Xen не поддерживает ряд функций при работе с томами DRBD. В частности, нет возможности работы с томами при использовании полной виртуализации и в случаях, когда гостевая система не умеет работать с ресурсами данного типа. На рис. 5 приведена схема, которая реализована в ходе разработки стенда, где полностью решена проблемы совместимости ресурсов DRBD и Xen. Для этого создан набор патчей для гипервизора Xen и сценарий для корректного управления DRBD ресурсами.

Рис. 5. Общая схема работы гипервизора Xen совместно с ресурсами DRBD поверх LVM томов

Рис. 6. Процесс создания и восстановления виртуальной машины
На рис. 6 приведена UML-диаграмма последовательности, на которой изображен механизм взаимодействия различных компонентов системы при создании виртуальной машины и восстановлении после сохранения состояния. На диаграммах ниже затронуты только те компоненты, которые подвергались

128

Научно-технический вестник Санкт-Петербургского государственного университета информационных технологий, механики и оптики, 2011, № 3 (73)

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

Рис. 8. Процесс миграции виртуальной машины с одного хоста на другой

Заключение

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

Литература

1. Лямин А.В., Скшидлевский А.А. Методика и алгоритмы расчета вычислительной мощности аппаратной платформы системы для проведения ЕГЭ в компьютерной форме // Труды XV Всерос. н.метод. конференции «Телематика'2009». – СПб, 2008. – Т. 1. – С. 101–102.
2. Лямин А.В., Скшидлевский А.А. Разработка поведенческой модели испытуемого при проведении педагогических измерений // Труды XVI Всероссийской научно-методической конференции «Телематика'2009». – СПб, 2009. – Т. 2. – 349 с.
3. Васильев В.Н., Лямин А.В., Чежин М.С. Система дистанционного обучения второго поколения // Научно-технический вестник СПбГУ ИТМО. – 2007. – № 45. – С. 148–157.
4. Лямин А.В., Скшидлевский А.А., Чежин М.С. Организация сетевого межвузовского взаимодействия в информационно-образовательной среде AcademicNT // Информационные технологии в обеспечении нового качества высшего образования. Сборник научных статей. Кн. 1 / Тр. конф. «Информационные технологии в обеспечении нового качества высшего образования (14–15 апреля 2010, Москва, НИТУ «МИСиС»)». – М.: Исследовательский центр проблем качества подготовки специалистов НИТУ «МИСиС», 2010. – С. 111–115.

Скшидлевский Антон Алексеевич Лямин Андрей Владимирович

– Санкт-Петербургский государственный университет информационных технологий, механики и оптики, аспирант, anton@cde.ifmo.ru
– Санкт-Петербургский государственный университет информационных технологий, механики и оптики, кандидат технических наук, доцент, директор ЦДО, lyamin@mail.ifmo.ru

Научно-технический вестник Санкт-Петербургского государственного университета информационных технологий, механики и оптики, 2011, № 3 (73)

129