Способ динамического контроля конфликтных ситуаций в сложных технических системах со средой облачных вычислений

Иллюстрации

Показать все

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

Реферат

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

Развитие и модернизация распределенных СТС (включая ее ИТ-инфраструктуру, ИТ - информационные технологии) организаций государственного сектора, стратегических промышленных предприятий и крупных компаний до недавнего времени осуществлялись путем централизации вычислений, строительства высокопроизводительных центров обработки данных (ЦОД), которые каналами связи объединяли в сеть. В качестве ключевых недостатков такого подхода к созданию СТС, и, в частности, ИТ-систем, построенных на базе классической архитектуры, являются различия в степени загрузки разных ЦОД, низкий коэффициент использования сетевых ресурсов, особенно серверов и накопителей данных, неравномерность информационной нагрузки, избыточность в дублировании, сложность и непрозрачность управления, а также низкая мобильность использования ресурсов СТС, возникновение нештатных конфликтных ситуаций из-за сбоев, отказов, ошибок в программном обеспечении, нарушения систем синхронизации, несовершенства архитектурных и проектных решений, тупиковых ситуаций, аварийных и веерных отключений систем электропитания, вирусов, атак «хакеров», «спама» и других дестабилизирующих факторов, приводящих к длительности ожидания послеаварийного восстановления (http://www.antiviruspro.ru/news/archive/123273.php - [Д1], Зиновьев Э.В. Управление сетевыми информационными процессами и ресурсами, Рига, "Зинатнэ", 1987, 304 с. - [Д2]).

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

Из уровня техники известно построение вычислительных систем в виде кластеров (многомашинных систем), которые представляют собой вычислительный комплекс, состоящий из нескольких компьютеров (узлов), а также программные и аппаратные средства связи компьютеров, которые обеспечивают работу всех компьютеров комплекса как единого целого (В.Г. Олифер, Н.А. Олифер. Компьютерные сети, учебник для вузов, С-Пб., 2005 - [Д3]).

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

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

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

Другим аналогом настоящего изобретения является аппаратно-вычислительный комплекс для предоставления доступа к программному обеспечению в концепции облачных вычислений (патент №122505 на полезную модель - [Д4]). Данный комплекс предназначен для предоставления доступа к программному обеспечению в концепции облачных вычислений, включающий связанные между собой и соединенные с Интернет группу ЭВМ, группу ЭВМ для хранения программных сессий, файловые хранилища и высокопроизводительные вычислительные ресурсы, при этом аппаратно-вычислительный комплекс дополнительно снабжен ЭВМ учета ресурсов, через которую связаны группа ЭВМ для хранения программных сессий и высокопроизводительные вычислительные ресурсы. Способ реализации предлагаемого в аналоге аппаратно-вычислительного комплекса виртуализации и управления ресурсами в среде облачных вычислений заключается в интеграции путем организации информационных связей между собой и соединение посредством сети первую группу рабочих ЭВМ и вторую группу ЭВМ для хранения программных сессий, а также ЭВМ управления, через которую связывают вторую группу ЭВМ для хранения программных сессий, высокопроизводительные вычислительные ресурсы и разделяемые файловые хранилища. Реализованный по данному способу комплекс, как следует из описания [Д4], обеспечивает достижение технического результата в виде расширения класса программных продуктов, которые могут быть установлены в инфраструктуру хаба (платформы, на которую можно установить программный продукт). При этом система учета ресурсов (управления), которую предусматривает такой комплекс, обеспечивает лишь ограничение доступа к ресурсам лицам, не прошедшим проверку, а также данный способ не обеспечивает осуществление оперативного (динамического) контроля и отслеживания возникновения конфликтности при распределении и управлении сетевыми ресурсами и нагрузкой в СТС.

Из уровня техники известно решение, предложенное в патенте №2543962, RU «Аппаратно-вычислительный комплекс виртуализации и управления ресурсами в среде облачных вычислений» - [Д5]), и выбранное в качестве прототипа. В описании прототипа приводится, что в основу создания современной системы виртуализации и управления общими сетевыми ресурсами при параллельном (одновременном) выполнении нескольких процессов предложен способ, позволяющий обеспечивать выполнение следующих основных функций:

- виртуализацию и разделение между отдельными виртуальными машинами таких типов аппаратных (физических) и информационных ресурсов хоста, как физические процессоры, оперативная память, ресурсы хранения данных, внешние аппаратные интерфейсы (USB, IEEE 1394, RS-232, FC, SAS, SCSI, IDE, LPT, COM).

- запуск и выполнение (в режиме разделения ресурсов) в рамках виртуальных машин основных типов гостевых операционных систем (далее ОС): ОС семейства MS Windows, ОС семейства Linux;

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

- диспетчеризацию выполнения виртуальных машин на физических серверах с учетом приоритетов, назначаемых отдельным виртуальным машинам в момент их запуска;

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

- мониторинг состояния виртуальных машин (загружена/работает/остановлена), тип и количество назначенных ресурсов;

- поддержание на гостевую ОС не менее 64 виртуальных процессоров, с возможностью последующего увеличения до 128;

- поддержание на гостевую ОС не менее 64 Гб виртуальной оперативной памяти, с возможностью увеличения до 128 Гб;

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

- виртуализацию физических сетевых интерфейсов между виртуальными системами, в том числе и монопольное предоставление сетевых ресурсов выделенному виртуальному серверу;

- создание снимков состояния виртуальных машин по расписанию;

- архивирование снимков состояния виртуальных машин;

- предоставление размера дискового пространства для гостевых ОС без перезагрузки/выключения до 10 Тб.

Тем не менее, в приведенном способе построения существующих сред облачных вычислений отсутствует функция контроля возникновения конфликтности из-за возникновения деструктивных явлений и факторов при обслуживании запросов и доступа параллельно выполняемых процессов и процедур к общесетевым ресурсам и распределенным данным. Как правило, одной из основных причин возникновения конфликтности в средах облачных вычислений, является возникновение и воздействие так называемых деструктивных явлений и факторов [http://swsys-web.ru/cloud-computing-basic-concepts-problems.html - [Д6]; Туманов Ю.М. Защита сред облачных вычислений путем верификации программного обеспечения на наличие деструктивных свойств // Автореф. канд. дисс., М.: Издательство НИЯУ «МИФИ», 2012. 20 с. - [Д7]; Привалов А.Н., Клепиков А.К. Модель распределения ресурсов при облачных вычислениях. Журнал «Известия ТулГУ». Технические науки. - Тула: изд-во ТулГУ, 2012. - №3. - с. 151-157 [Д8], Повышение надежности систем на базе виртуализации, https://technet.microsoft.com/ru-ru/library/ee922690.aspx - [Д9]), что и требует осуществления функций динамического контроля и отслеживания возникновения деструктивных явлений, приводящих к конфликтности.

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

- обеспечение одновременного (совместного) доступа к ресурсам и данным множеству клиентов (процессам и процедурам), сохранив их консистентность (согласованность данных друг с другом, целостность данных, а также их внутреннюю непротиворечивость);

- появление и распространение в облачных системах вредоносного программного обеспечения (ПО);

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

- информация в «облаках» может находиться в распределенных хранилищах, что приводит к необходимости учитывать скорость и надежность передачи данных по каналам связи.

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

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

Указанный технический результат достигается тем, что способ реализации функций динамического контроля конфликтных ситуаций, возникающих из-за деструктивных явлений в сложных технических системах со средой облачных вычислений [Д6-Д9] осуществляют путем включения в состав ядра управления модуля динамического контроля конфликтных ситуаций, активизируют его всякий раз при распределении общих сетевых ресурсов. В алгоритм функционирования модуля динамического контроля конфликтных ситуаций закладывают выполнение программным образом на момент времени tk соответствующих шагов по определению атрибутов для каждого планируемого к параллельному выполнению в сложной технической системе процесса ρi. Так, на первом шаге определяют:

,

На втором шаге обеспечивают выполнение модулем динамического контроля составление матриц запросов для монопольного Zм и разделяемого Zр типов доступа к сетевым ресурсам, а также матриц монопольного Vм и разделяемого Vр типа владений соответственно в виде:

где: ri и rj - общие сетевые ресурсы, запрашиваемые или находящиеся во владении процессов ρi и ρj. На третьем шаге обеспечивают выполнение модулем динамического контроля вычисление значения размерности матрицы конфликтов по формуле: .

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

На пятом шаге при значении размерности матрицы конфликтов осуществляют выделение общесетевых ресурсов ri и rj в момент времени tk параллельного выполнения процессов ρi и ρj. При значении размерности матрицы конфликтов выделение общесетевых ресурсов ri и rj в момент времени tk параллельного выполнения процессов ρi и ρj либо откладывают до выявления условий бесконфликтного состояния, либо выделяют запрашиваемые процессами ρi и ρj общие сетевые ресурсы ri и rj путем переназначения в сторону повышения приоритета выбранных к выполнению более важных конфликтующих процессов ρi и ρj и процедур, задерживая выполнение других менее важных процессов и процедур.

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

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

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

Пояснение. Используемые в материалах заявки понятия «ресурсы», «сетевые ресурсы» и «распределенные ресурсы» являются тождественными, и приводятся как наиболее часто употребляемые в пределах своих временных рамок развития ИТ-технологии, а именно: ЭВМ - Вычислительные сети - Облачные вычисления.

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

на втором шаге составляют матрицы запросов для монопольного Zм и разделяемого Zp типов доступа к сетевым ресурсам, а также матрицы монопольного Vм и разделяемого Vp типа владений соответственно в виде:

где ri и rj - общие сетевые ресурсы, запрашиваемые или находящиеся во владении процессов ρi и ρj, на третьем шаге вычисляют по формуле

значение размерности матрицы конфликтов , на четвертом шаге делают вывод, что, если определяемое модулем динамического контроля и передаваемое на ЭВМ управления значение размерности матрицы конфликтов , то в системе нет конфликтных ситуаций, если определяемое модулем динамического контроля и передаваемое на ЭВМ управления значение , то в системе одна или несколько конфликтных ситуаций, причем на пятом шаге при значении размерности матрицы конфликтов осуществляют выделение общесетевых ресурсов ri и rj, в момент времени tk параллельного выполнения процессов ρi и ρj, при значении размерности матрицы конфликтов выделение общесетевых ресурсов ri и rj в момент времени tk параллельного выполнения процессов ρi и ρj либо откладывают до выявления условий бесконфликтного состояния, либо выделяют запрашиваемые процессами ρi и ρj общие сетевые ресурсы ri и rj путем переназначения в сторону повышения приоритета выбранных к выполнению более важных конфликтующих процессов ρi и ρj и процедур, задерживая выполнение других менее важных процессов и процедур, причем размерность матрицы конфликтов вычисляют как произведение числа ненулевых строк на число ненулевых столбцов, а сами конфликтующие процессы однозначно определяют из матрицы конфликтов как номера ненулевых строк.