Научная статья на тему 'ПРИМЕНЕНИЕ ТЕХНОЛОГИИ ВИРТУАЛИЗАЦИИ И ОБЛАЧНЫХ ВЫЧИСЛЕНИЙ ПРИ ПОСТРОЕНИИ СЛОЖНЫХ РАСПРЕДЕЛЕННЫХ МОДЕЛИРУЮЩИХ СИСТЕМ'

ПРИМЕНЕНИЕ ТЕХНОЛОГИИ ВИРТУАЛИЗАЦИИ И ОБЛАЧНЫХ ВЫЧИСЛЕНИЙ ПРИ ПОСТРОЕНИИ СЛОЖНЫХ РАСПРЕДЕЛЕННЫХ МОДЕЛИРУЮЩИХ СИСТЕМ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
117
22
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИМИТАЦИОННОЕ МОДЕЛИРОВАНИЕ / РАСПРЕДЕЛЕННАЯ СИСТЕМА / ВИРТУАЛИЗАЦИЯ / ОБЛАЧНЫЕ ВЫЧИСЛЕНИЯ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Кондрашин Михаил Алексеевич, Арсенов Олег Юрьевич, Козлов Илья Викторович

Рассматриваются подходы к разработке сложных распределенных систем моделирования для проведения вычислительных экспериментов с использованием современных методов и средств виртуализации и организации облачных вычислений. Приводится описание создаваемого во ФГУП ЦНИИмаш комплекса имитационного моделирования, где применяется данная технология.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Кондрашин Михаил Алексеевич, Арсенов Олег Юрьевич, Козлов Илья Викторович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

VIRTUALIZATION AND COMPUTING CLOUDS TECHNOLOGY APPLICATION WITHIN COMPLEX DISTRIBUTED SIMULATED SYSTEMS CREATION

This article considers the approaches to developing complex distributed simulation systems for conducting experiments on test subject using up-to-date methods and means of virtualization and cloud computation organization. Simulation means modeling performed with computers. It allows automatization of experiments conducted on a tested system. Distributed modeling is the modeling employing multiprocessor computers and/or computer network. The main requirement, defining the necessity of distributed modeling architecture implementation is complex simulation systems integration. The main advantages of the distributed modeling systems are as follows: the possibility of multiple stand-alone hardware sets integration while conducting an experiment; a new sample development verification by one of the distributed system element substituting; developing simulators for teaching personnel, operating the real system. Labor consuming process of preparing for conducting an experiment and original setting of the interconnections between the system elements; requirement of the exact notion of necessary computing resources at the stage of modeling system design; the need for implementation of special algorithms for hardware computing resources balancing can be referred to as the drawbacks of distributed simulation systems while developing complex simulation systems. Today, in the age of computer technologies we suggest using the virtualization and computing clouds technology when developing distributed modeling complexes. Such technology helps you to get rid of the most of the disadvantages when building the distributed systems for modeling. Virtualization is a hardware-software opportunity of computer/server physical resources (processor, memory, storage and network adapter) utilization optimization through their representation in the shared access between units (virtual machines) logically isolated from each other. The paper suggests an approach for the distributed modeling systems developing, using the virtualization and computing clouds technologies. We provide the description of the technology and its advantages, foremost among which is an easily scalable distributed modeling systems creation. The simulation complex of the SC GCC elements and SC GСС in general under development at TsNIIMash (Central scientific research institute of mechanical engineering) is described. The paper shows that the virtualization and cloud computation methods utilization when building the distributed modeling systems allow get rid of the most of the problems emerging from building analogous systems in a traditional way.A description of the developed applications allowing automatize the virtualization platform control process is also presented.

Текст научной работы на тему «ПРИМЕНЕНИЕ ТЕХНОЛОГИИ ВИРТУАЛИЗАЦИИ И ОБЛАЧНЫХ ВЫЧИСЛЕНИЙ ПРИ ПОСТРОЕНИИ СЛОЖНЫХ РАСПРЕДЕЛЕННЫХ МОДЕЛИРУЮЩИХ СИСТЕМ»

Труды МАИ. Выпуск № 89 www.mai.ru/science/trudy/_

УДК 004.94

Применение технологии виртуализации и облачных вычислений при построении сложных распределенных моделирующих систем

Кондрашин М.А.*, Арсенов О.Ю.**, Козлов И.В.***

Центральный научно исследовательский институт машиностроения, ЦНИИмаш, Пионерская, 4, Королев, Московская область, 141070, Россия

*e-mail: mak@mcc. rsa. ru **e-mail: aoy@mcc.rsa.ru ***e-mail: kozloviv@mcc.rsa.ru

Аннотация

Рассматриваются подходы к разработке сложных распределенных систем моделирования для проведения вычислительных экспериментов с использованием современных методов и средств виртуализации и организации облачных вычислений. Приводится описание создаваемого во ФГУП ЦНИИмаш комплекса имитационного моделирования, где применяется данная технология. Ключевые слова: имитационное моделирование, распределенная система, виртуализация, облачные вычисления.

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

места будущей системы, оценить производительность, стоимость, пропускную способность - все главные ее характеристики еще до того, как система будет создана [1].

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

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

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

Например, при необходимости построения модели сети передачи данных будет достаточно использования одной ЭВМ и средств моделирования ОРББ. Когда же требуется оценить не только статистику, но и обеспечить моделирование сложной системы, состоящей из большого числа разнородных моделируемых элементов, ресурсов одного компьютера может оказаться недостаточно. В таких случаях, как правило, есть несколько вариантов решения - использовать так называемые суперЭВМ, в которых заложена большая вычислительная мощность и высокий объём оперативной памяти, однако применение подобных архитектур может сдерживаться недостаточной развитостью методов автоматического распараллеливания алгоритмов, или организовать построение распределенной архитектуры моделирования, где используются вычислительные мощности нескольких компьютеров, объединенных между собой для распределения нагрузки выполняемых программных комплексов (прототипов моделируемых элементов). Это позволяет увеличить мощности инструмента моделирования за счет распределения задач и объединения в одну локальную или глобальную сеть. В рамках данной статьи рассматривается именно распределенное моделирование.

Поясним термин «распределенное моделирование». Распределенная система -система, обладающая распределенной структурой, состоящей из некоторого множества элементов со связями между ними. Таким образом, моделирование с использованием многопроцессорных ЭВМ и/или компьютерных сетей называется распределенным. Основным требованием, диктующим необходимость использования архитектуры распределенного моделирования, является построение сложных имитационно-моделирующих систем. К отличительным особенностям моделирования сложных систем относятся: большое количество и сложный характер взаимодействия элементов системы, объединение разных видов моделирования в одной модели, необходимость воспроизведения в создаваемых элементах модели реальных алгоритмов обработки информации и сохранения протоколов передачи данных. Таким образом, повышение сложности модели приводит к необходимости увеличения доступных вычислительных ресурсов, что в свою очередь является толчком к применению сложной архитектуры построения распределенных систем для моделирования.

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

Недостатками распределенных систем при построении сложных имитационно-моделирующих комплексов можно назвать высокую трудоемкость процессов подготовки и проведения эксперимента, первоначальной настройки связи между элементами системы, требование точного представления, еще на этапе проектирования моделирующей системы, о необходимых вычислительных ресурсах, необходимость использования специальных алгоритмов балансировки вычислительных ресурсов технических средств. Указанные выше проблемы заставляют при проектировании моделирующей системы выбирать между ее сложностью и адекватностью, что в некоторых случаях недопустимо. Например, при моделировании сценариев развития ситуаций в военной или космической отраслях [3] нельзя значительно упростить элементы модели, которые сами по себе являются сложными структурными элементами, представляющими собой компоненты наземной инфраструктуры или космические аппараты (КА) (рис. 1).

V.

Рисунок 1 - Пример схемы распределенного моделирования НКУ КА

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

избавиться от большинство недостатков при построении распределенных систем для моделирования.

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

Рисунок 2 - Различия между традиционной физической архитектурой и

виртуальной

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

По статистике, средняя загрузка серверов без виртуализации составляет не более 15-20% [4]. По данным компании InternationalDataCorporation, занимающейся исследованием рынка, большинство серверов х86 в среднем задействуют в работе от 5% до 25% от общего количества ресурсов [5]. В большинстве случаев организации запускают по одному приложению на сервер во избежание уязвимостей, которые возникают, если одно приложение негативно влияет на доступность другого приложения, выполняемого на том же сервере. Это говорит о неэффективности использования физического пространства. Во многом по этой причине в компьютерной индустрии начались исследования по возможности оптимизации использования физических ресурсов серверного оборудования, которые и привели к появлению понятия "виртуализация" через виртуальные машины.

Виртуальная машина - это программная среда, которая эмулирует аппаратную составляющую компьютера со всеми его компонентами и предназначенная для запуска на физическом компьютере независимо от других виртуальных машин.

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

Облачные вычисления - это модель предоставления вычислительных ресурсов серверов с помощью сетевого доступа (по ЛВС или Интернет). Другое аналогичное название «облачных вычислений» - это IaaS (InfrastructureasaService) -инфраструктура как сервис.

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

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

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

моделируемой системы без необходимости дополнительных закупок и манипуляций с сетевыми настройками. К примеру, моделирование наземного комплекса управления (НКУ) КА при разных сценариях может включать разное количество средств и элементов НКУ КА, причем при разработке подобной моделирующей системы заранее не известно число этих элементов.

При использовании виртуализации отпадает необходимость закупать отдельно стоящее оборудование с жёстко заданными требованиями к техническим характеристикам: процессор, объём оперативной памяти, количество жёстких дисков и пр., количество которых неизвестны до начала получения первых результатов моделирования. Гораздо эффективнее использовать платформу виртуализации для динамического создания нужного количества виртуальных машин с заданными параметрами. Если в процессе имитационного моделирования станет понятно, что количество выделенных ресурсов для имитационного моделирования недостаточно, то количество ресурсов можно увеличить, запустив необходимое количество ВМ непосредственно в процессе выполнения сценариев моделирования.

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

Исходя из этого, в настоящее время во ФГУП ЦНИИмаш разрабатывается Автоматизированная система отработки технологии создания НКУ КА на основе методов виртуализации, включающая в себя комплекс имитационного моделирования элементов НКУ КА и НКУ КА в целом. Для создания данной системы было принято решение использовать средства виртуализации, предоставляющие возможность моделирования любого состава НКУ КА, как существующего, так и перспективного. Применение современных ИТ-технологий позволило обеспечить масштабируемость и отказоустойчивость системы и на практике реализовать все вышеописанные достоинства виртуализации и облачных технологий.

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

удаление идентификационной информации домена АсЙуеВ1гес1:огу (рис. 3). Для того, чтобы любое другое разработанное приложение воспользовалось предоставляемыми услугами службы - оно должно использовать в своём составе программный ТСР-клиент (технология сокетов), так как служба является ещё и многопоточным ТСР-сервером.

Рисунок 3 - Автоматическая подготовка ВМ

Применение разработанной службы позволяет значительно упростить процесс управления виртуальной платформой и динамически масштабировать состав ВМ и управлять ими в процессе проведения эксперимента комплексом имитационного моделирования.

Вывод.

В статье рассматриваются виды моделирования и способы построения

имитационно-моделирующих комплексов. Описываются подходы к созданию

распределенных моделирующих систем. Предложен подход к созданию

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

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

Библиографический список

1. Карпов Ю.Г. Имитационное моделирование систем. - СПб.: БХВ-Петербург, 2005. - 400 с.

2. Костин П.С., Верещагин Ю.О., Волошин В.А. Программно-моделирующий комплекс для полунатурного моделирования динамики маневренного самолета // Труды МАИ, 2015, № 81: http://www.mai.ru/science/trudy/published.php?ID=57735

3. Лохматкин В.В. Модели для оценки производительности моноскопической стереосъёмки космических аппаратов дистанционного зондирования Земли с учётом надёжности бортовых систем // Труды МАИ, 2015, №81:

http: //www.mai .ru/science/trudy/published.php?ID=

4. Самойленко А. Виртуализация серверов в среднем и малом бизнесе, URL: http : //www. ixbt. com/cm/virtualization-smb. shtml

5. Казак М. Виртуализация: технология, которая изменит ИТ-мир URL: http://www.infosecurity.ru/ gazeta/content/080627/article01.shtml#top

i Надоели баннеры? Вы всегда можете отключить рекламу.