Содержание к диссертации
Введение
ГЛАВА 1. Системы, основанные на технологиях виртуализации и проблемы обеспечения качества обслуживания в условиях ограниченных затрат 13
1.1. Основные концепции технологии виртуализации и облачных вычислений 13
1.2. Анализ существующих практических реализаций технологий виртуализации. Инструменты ресурсного обеспечения. 23
1.3. Классификация вычислительных систем, основанных на технологиях виртуализации 28
1.4. Ресурсное обеспечение сложных информационно-вычислительных систем основанных на технологиях виртуализации 30
1.5. Целевая функция исследования процесса ресурсного обеспечения СОТВ, соответствующих топологии и задачам железнодорожной отрасли 36
Выводы по главе 1 38
ГЛАВА 2. Анализ существующих механизмов ресурсного обеспечения сотв. оценка эффективности . 40
2.1. Механизмы ресурсного обеспечения информационно-вычислительных систем, основанных на технологиях виртуализации 40
2.1.1. Механизм обеспечения виртуальных приложений, основанный на очередях 42
2.1.2. Адаптивный механизм предоставления ВМ в облачной инфраструктуре 51
2.2. Построение оценки эффективности 54
Выводы по главе 2 57
ГЛАВА 3. Адаптивный механизм оптимизации ресурсного обеспечения информационно-вычислительных систем 60
3.1. Архитектура адаптивного механизма оптимизации ресурсного обеспечения
3.2. Алгоритм перерасчета параметров ресурсного обеспечения 68
3.3. Организация связи между узлами ЦОД 75
Выводы по главе 3 78
ГЛАВА 4. Имитационное моделирование 79
4.1.Описание программного пакета моделирования облачной среды CloudSim. 79
4.2. Определение основных элементов имитационной модели 80
4.2.1. Центр обработки данных 80
4.2.2. Физический сервер 81
4.2.3. Виртуальная машина
4.2.3. Виртуальное приложение 82
4.2.4. Типовая структура модели СОТВ
4.3. Построение имитационной модели 84
4.4. Определение основных параметров имитационной модели 85
4.5. Моделирование работы СОТВ
4.5.1. Сценарий Web 85
4.5.2. Научный сценарий 86
4.6. Анализ результатов моделирования 87
Выводы по главе 4 92
ГЛАВА 5. Особенности ресурсного обеспечения сложных информационно-вычислительных систем на железнодорожном транспорте 94
5.1. Применение адаптивного механизма оптимизации, как средства ресурсного обеспечения АС ЭТРАН 96
5.1.1. Архитектура АС ЭТРАН 96
5.1.2. Назначение и цель системы 99
5.1.3. Автоматизированное рабочее место по подготовке перевозочных документов 101
5.1.4. Проблема производительности АРМ ППД 104
5.2. Вычисление экономного плана предоставления ресурсов 104
5.3. Расчет эффективности применения аналитического алгоритма ресурсного обеспечения для организации распределения ресурсов в АРМ
ПДД 109
5.4. Применение правила расчета оценки эффективности при построении вычислительных систем ООО ТОП ТРАНС 113
Выводы по главе 5 113
Заключение 115
Список литературы 117
- Классификация вычислительных систем, основанных на технологиях виртуализации
- Адаптивный механизм предоставления ВМ в облачной инфраструктуре
- Алгоритм перерасчета параметров ресурсного обеспечения
- Построение имитационной модели
Классификация вычислительных систем, основанных на технологиях виртуализации
Под виртуализацией понимают концепцию, которая допускает выполнение отдельных экземпляров операционной системы в среде виртуальной машины. Виртуальная машина эмулирует работу реального компьютера. Виртуализация может быть использована для создания виртуальной компьютерной архитектуры для облачных вычислений [76].
При данном подходе отдельный экземпляр приложения компонуется экземплярами виртуальных машин, где значение любое фиксируемое или изменяемое во времени основанное на текущей рабочей загрузке системы и запрашиваемой производительности. Вычисление объема ресурсов, требуемого для работы приложения, состоит из набора независимых задач, которые могут быть смоделированы как запросы на обслуживание, отправляемые конечными пользователями на экземпляры виртуальных приложений.
По причине существования различных трактовок понятия облачных вычислений [64,65], введем определение и основные характеристики облачных вычислений, в рамках которого будем исследовать процесс ресурсного обеспечения информационно-вычислительных систем.
Под облачными вычислениями понимается модель обеспечения повсеместного и удобного сетевого доступа по требованию к вычислительным ресурсным пулам (например, сетям, серверам, системам хранения, приложениям, сервисам), которые могут быть быстро предоставлены с минимальными усилиями по управлению и взаимодействию с поставщиком услуг [67, 68].
Облачная инфраструктура обладает всеми пятью свойствами, которые характеризуют ее функциональные возможности.
Самообслуживание по требованию (On-demand self-service). Потребитель имеет возможность получить доступ к предоставляемым вычислительным ресурсам в одностороннем порядке, по мере необходимости, автоматически, без взаимодействия с сотрудниками каждого поставщика услуг.
Широкий сетевой доступ (Broad network access). Предоставляемые вычислительные ресурсы доступны по сети через стандартные механизмы для различных платформ, тонких и толстых клиентов (мобильных телефонов, планшетов, ноутбуков, рабочих станций и т.п.).
Объединение ресурсов в пулы (Resorce pooling). Вычислительные ресурсы объединяются в пулы для обслуживания множества пользователей по модели множественной аренды (multitenant - то есть, каждый из пользователей облачной инфраструктуры обслуживается в рамках своей аренды). Пулы включают в себя различные физические и виртуальные ресурсы, которые могут быть динамически назначены и переназначены в соответствии с потребительским спросом [9,68].
Нет необходимости в понимании или управлении со стороны пользователя точным местоположением ресурсов, однако возможно указать местонахождение на более высоком уровне абстракции (например, страна, регион или центр обработки данных). Примерами такого рода ресурсов могут быть системы хранения, вычислительные мощности, объемы оперативной память, пропускная способность сети.
Мгновенная эластичность (Rapid elasticity). Ресурсы могут быть эластично выделены и освобождены, в некоторых случаях автоматически, для быстрого масштабирования соразмерно со спросом. Максимальное время отклика на запрос пользователя об изменение потребностей в ресурсах, прописывается в соглашении об уровне сервиса (далее - SLA)). Для пользователя ресурсы представляются, как неограниченные и могут быть предоставлены в любом количестве в любое время. Измеряемость (Measured service). Облачные системы и сервисы должны обладать функциями автоматизированного измерения объема использованных ресурсов для разного рода сервисов (например, объемы хранения данных, обработка, полоса пропускания, или активные пользовательские сессии)[9]. Так же можно выделить три вида предоставления облачных служб. Программное обеспечение как услуга (SaaS). Возможность предоставления пользователю в использование приложений провайдера, работающих в облачной инфраструктуре. Приложения доступны из различных клиентских устройств или через интерфейсы тонких клиентов, такие как веб-браузер или интерфейсы программ. Пользователь, при этом, не управляет базовой инфраструктурой облака, в том числе сетями, серверами, операционными системами, системами хранения, или даже индивидуальными настройками приложений, за исключением некоторых пользовательских настроек конфигурации приложения.
Здесь под облачной инфраструктурой понимается набор аппаратного и программного обеспечения, имеющий пять основных свойств облачных вычислений. Облачная система рассматривается как инфраструктура, содержащая и физический уровень, и уровень абстракции. Физический уровень состоит из аппаратных ресурсов, которые необходимы для поддержки облака предоставляемых услуг и, как правило, включает серверы, системы хранения и сетевые компоненты. Уровень абстракции состоит из программного обеспечения развернутого на физическом уровне, и содержит все основные свойства облаков. Концептуально уровень абстракции стоит выше физического уровня.
Платформа как услуга (PaaS). Возможность предоставления пользователю для развертывания на облачной инфраструктуре пользовательского, созданного или приобретенного приложения, созданных с помощью языков программирования, библиотек, служб и средств поддерживаемых провайдером услуг. Пользователь, при этом, не управляет базовой инфраструктурой облака, в том числе сетями, серверами, операционными система и системами хранения данных, но имеет контроль над развернутыми приложениями, а также может иметь контроль над некоторыми параметрами физической среды.
Адаптивный механизм предоставления ВМ в облачной инфраструктуре
Запуск приложений и управление ими в общедоступных облачных инфраструктурах характеризует их как наборы виртуальных ресурсов.
Для предоставления ресурсов в облаке поставщик услуг проводит комплекс мероприятий, в процессе которых вычисляет наилучшие значения параметров программных и аппаратных характеристик, которые обеспечат выполнение требований QoS для предоставляемого сервиса.
Достижение целей QoS важно для выполнения SLA-договора с конечными пользователями и оправдания инвестиций ввода в эксплуатацию облачно-ориентированных систем. Однако данный процесс является сложным из-за труднопрогнозируемого поведения виртуальных ресурсов и сетевых элементов [51]. В процессе предоставления услуг могут случиться следующие непредсказуемые ситуации, препятствующие стабильной работе системы:
Ошибка оценки уровня производительности системы: Как поставщики услуг, так и их потребители могут недооценивать или переоценивать объемы требуемых системе ресурсов, по причине, отсутствия четкого понимания необходимого уровня производительности приложений, выполняемых на облачной платформе. Как результат, поставщику услуг становится крайне сложно найти правильную комбинацию распределения виртуальных ресурсов, что приводит либо к повышенной загрузке, либо к простою системы, и оказывает влияние на стоимость или требуемое качество работы приложения;
Высокая динамичность рабочей загрузки: Программный сервис используется большим количеством конечных пользователей, что способствует крайне изменчивому характеру поступления запросов на предоставление ресурсов, зависящему от времени суток, времени года или пиков популярности приложения. Определенные характеристики рабочей загрузки могут изменяться в зависимости от типа приложения (например, высокопроизводительные приложения, web или социальные сети)[50]. Данные аспекты является причиной серьезных трудностей на этапе оценки характера рабочей загрузки системы и предоставления требуемого объема виртуальных ресурсов;
Неопределенное поведение системы: В крупномасштабных компьютерных средах, таких как облачные инфраструктуры, текущая загрузка ресурсов и пропускная способность сетевых звеньев могут непрогнозируемо изменяться [51]. Кратковременность состояния системы усложняет процесс определения общей потребности ЦОД в ресурсах, необходимых для обеспечения требуемого качества работы приложений. Сложность обеспечения требуемого качества обслуживания обусловлена как разнородностью ресурсов, так и неопределенным характером рабочей загрузки приложений в облачных системах. Для решения данной задачи необходимо провести научное исследование с применением имеющейся математической базы.
Одна из задач механизмов распределения ресурсов заключается в понижении объема не используемых ресурсов, получаемого за счет разницы между количеством ресурсов полученных от запущенных экземпляров ВМ и количеством ресурсов запрашиваемых конечными пользователями. Основная цель исследуемых механизмов – оптимизация процесса распределения ресурсов, которая достигается по средствам снижения объема предоставленных, но не используемых ресурсов. Ниже представлен анализ механизма обеспечения виртуальных приложений, основанных на очередях и адаптивный механизм предоставления ВМ в облачных инфраструктурах. 2.1.1. Механизм обеспечения виртуальных приложений, основанный на очередях
В рамках решения задачи ресурсного обеспечения СОТВ, в работе [47] представлен механизм обеспечения виртуальных приложений, основанный на очередях. Работа ЦОД, основной единицей предоставления ресурсов в котором является ВМ, представляется как комбинация М/М/с модели и множества М/М/1 моделей систем массового обслуживания. Данный механизм предназначен для решения следующих задач:
Предоставление ресурсов. Механизм определяет, сколько ВМ необходимо выделить виртуальному многоуровневому приложению, чтобы удовлетворить требованиям конечных пользователей, предъявляемым к времени отклика. Наряду с этим, механизм должен предотвращать не обоснованную растрату ресурсов системы.
Настойка ВМ, позволяющая изменять параметры работы ВМ, для обеспечения наиболее эффективного распределения ресурсов.
В рамках построения механизма ресурсного обеспечения виртуальных приложений, основанного на очередях, представлена гибридная модель, в виде комбинации М/М/с и множества М/М/1 моделей систем массового обслуживания, осуществляющая распределение вычислительных ресурсов, необходимых для виртуальных приложений. [47, с.372].
Алгоритм перерасчета параметров ресурсного обеспечения
В IP-сетях для поддержания связи на требуемом уровне используются механизмы обеспечения качества обслуживания. Определение QoS имеет множество значений. В рамках обеспечения качества IP-сетей под QoS будем понимать способность сети предоставлять требуемый уровень обслуживания заданному трафику в определенных технологических рамках. Необходимый сервис описывается многими параметрами. Важным является выполнение заданных значений таких параметров как: время ожидания пакета в очереди, джиттер, вероятность потери пакета. В QoS для обеспечения качества обслуживания используются алгоритмы обработки очередей [18,19].
При построении сети передачи данных, соединяющей ЦОД облачной инфраструктуры, введем рекомендации по обеспечения требуемого уровня QoS.
Сосредоточимся на сети передачи данных. Тогда, абстрагировавшись от особенностей функционирования различных приложений и сервисов можно рассматривать различные виды трафика, что ограничивает виды задач типами передаваемых данных. Различные виды трафика предъявляют к сети передачи данных свои особенные требования, но в конечном итоге можно говорить о трех основных параметрах, характеризующих эффективность работы сети передачи данных – это время ожидания пакета в очереди, значение джиттер и потеря пакета, при передаче. Под джиттером будем понимать разброс максимального и минимального времени прохождения пакета от среднего. Чем меньше будут значения данных параметров, тем эффективнее будет работа сети.
Пакеты в IP-сетях могут обрабатываться по различным алгоритмам, таким как First in First Out, Priority queuin (далее – PQ), Weighted Fair Queuing, Class-Based Weighted Fair Queuing (далее – CBWFQ), Low Latency Queuing (далее - LLQ) и другие. Данные алгоритмы подробно описываются в литературе [15, с. 299].
В работе [46, с. 2267] рекомендуется, использовать алгоритм CBWFQ для обработки трафика данных в условиях повышенной нагрузки.
Существует огромное количество модификаций алгоритма CBWFQ используемых разработчиками сетевого оборудования.
В алгоритме CBWFQ веса пакетов распределяются в зависимости от класса трафика. Каждый класс трафика занимает необходимую ему часть полосы пропускания в соответствии с его весом. Если один класс трафика не занимает всю полосу пропускания, тогда другие классы используют свободное пространство. На практике, трудно определить какие правила используются в CBWFQ алгоритмах для выбора класса пакетов, который необходимо передавать в обработку, когда маршрутизатор освобождается. Производители сетевого оборудования не придают огласке данную информацию.
В различном оборудование, использующем алгоритмы CBWFQ, применяются особенные правила обработки очередей. В большинстве платформ алгоритм CBWFQ реализован с использованием реестра очереди или временного механизма, работа которого заключается в распределении интервалов времени обработки пакетов [46, с. 2267]. При использовании такого алгоритма, каждый пакет связывается с соответствующим слотом в реестре очереди и вычисляется временное значение обработки каждого пакета. Но как вычисляется временное значение обработки пакета нам неизвестно.
На данный момент наиболее широко известными являются методы планирования CBWFQ очередей [46, 56,59,71], такие как: алгоритм случайного выбора класса пакетов; алгоритм Голестани виртуального времени обработки. В работе [24], рекомендуется использование метода Голестани алгоритма CBWFQ режиме штатной работы сети. А в условиях повышенной нагрузки необходимо использовать метод случайного выбора классов пакетов алгоритма CBWFQ.
Далее в работе будем абстрагироваться от издержек, вызванных передачей данных между узлами ЦОД облачной инфраструктуры, поскольку данная предметная область выходит за рамки проводимого исследования.
В данной главе исследован адаптивный механизм оптимизации ресурсного обеспечения сложных информационно-вычислительных систем, проанализирована работа аналитического алгоритма ресурсного обеспечения, в рамках которого построена задача оптимизации процесса предоставления ресурсов в облачных системах. Задача сформулирована как задача оптимизации целевой функции при условии выполнения ряда заданных ограничений.
Построена схема расчета оптимального плана предоставления ресурсов, заключающегося в поиске наиболее дешевого сценария предоставления виртуальных ресурсов, с учетом требований по качеству обслуживания, предъявляемых к системе. Так, зная минимальные системные требования одного экземпляра приложения, а также соотношения технических и ценовых характеристик виртуальных машин, можно вычислить оптимальный план предоставления виртуальных ресурсов для любого конечного множества пользователей на сессию с конечным временем.
Построение имитационной модели
Интеграция решений в области обработки перевозочных и других технологических и финансовых документов в процессе оформления перевозок привела к созданию автоматизированной системы для централизованной подготовки и оформления перевозочных документов на принципах электронного документооборота с сохранением и развитием функций действующих информационных систем железной дороги.
Для осуществления электронизации документооборота железные дороги должны иметь информационную взаимосвязь с грузоотправителем, грузополучателем, экспедитором на уровне, обеспечивающем электронизацию документооборота, с возможностью установки разработанного в рамках системы АС ЭТРАН программного обеспечения АРМ ППД. При разработке системы АС ЭТРАН предусматривалось:
Автоматизированное рабочее место по подготовке перевозочных документов
Программный пакет АРМ ППД в системе АС ЭТРАН реализуется по модульной архитектуре. Каждая функциональная часть задачи выделена в отдельный модуль. Модульный подход позволяет существенно упростить и облегчить процесс обновления версий программного обеспечения. Программное обеспечение АРМ ППД необходимо для управления загрузкой и взаимодействием следующих программных модулей: модуль ведения единого каталога пользователей АС ЭТРАН и система разграничения доступа;
В АРМ ППД всем модулям предоставляется возможность работы по средствам одного соединения с сервером приложений АС ЭТРАН. При этом производится индикация работы с сетью и контроль очередности выполнения функций приложений.
В АРМ ППД предоставляется возможность построения, просмотра и печати форм и отчетов, описание которых расположено в репозитории сервера приложений системы ЭТРАН. Такое хранение позволяет менять формат печатных документов без изменения функциональности модуля. При просмотре печатной формы документа в программном пакете АРМ ППД существует возможность, как отображать документ в отдельном окне, так и непосредственно на экране [12].
Наряду с этим, АРМ ППД осуществляет контроль ошибок и ведет журнал взаимодействия с сервером приложений АС ЭТРАН за последнюю сессию и контролирует успешность этого взаимодействия. Журнал хранится в файле на компьютере клиента и позволяет контролировать программные ошибки. В случае возникновения нештатных ситуаций этот журнал должен высылаться разработчику.
Обмен информацией между функциональными разделами системы ЭТРАН должен осуществляться методом репликации баз данных, а также с помощью процедур чтения и записи таблиц баз данных. Допускается обмен с использованием файлов данных определенной структуры, а также с помощью специализированных процедур ввода-вывода информации через программные интерфейсы. В основе взаимодействия положена обработка данных в режиме реального времени с использованием протокола TCP/IP через сеть интернет, с применением архитектуры клиент-сервер, для связи с центральной базой сетевого уровня.
Аппаратура связи должна обеспечивать стойкое соединение. Допустимо использование любого типа оборудования, например, того, которое используется при построении систем передачи данных отрасли, — маршрутизаторы фирмы Cisco и аппаратура фирмы Siemens [12].
Каналы связи должны обеспечивать следующие физические скорости связи в зависимости от соединяемых абонентов:
В настоящее время система ЭТРАН эксплуатируется в промышленном режиме 7х24 и охватывает 100% железнодорожных грузоперевозок на территории Российской Федерации. На сегодняшний день к системе подключено свыше 32000 пользователей, из более чем 13400 организаций, в том числе подразделений ОАО РЖД. В месяц оформляется свыше 136 000 заявок и более 1 500 000 накладных [41].
Однако, программное средство АРМ ППД является чувствительным к качеству каналов связи. Так, например, при оформлении накладных в АРМ ППД в утреннее время может отмечаться отказ в обслуживании или увеличение времени выполнения операции.
Одной из причин возникновения данной проблемы может быть нехватка вычислительных ресурсов, требуемых системе, для выполнения операций в периоды повышенной нагрузки. Для исключения отказов системы, вызванных нехваткой ресурсов необходимо разработать план предоставления ресурсов для определенного набора пользователей.
Используя разработанный алгоритм перерасчета параметров ресурсного обеспечения, вычислим комбинацию ВМ с наименьшей стоимостью, удовлетворяющую системным требованиям приложения АРМ ППД, выполняемого в ЦОД, основанном на облачных технологиях. В рассматриваемой системе используется пять типов виртуальных машин (Таблица 5.1), используемых для обеспечения работы конечного множества экземпляров приложения АРМ ППД, требующих одинаковых объемов ресурсов.