Особенности вероятностного анализа производительности и надежности проблемно-ориентированных сред облачных вычислений

Т. Н. Чуров, Д. А. Насонов, Б. Я. Штейнберг, А. В. Бухановский

ОСОБЕННОСТИ ВЕРОЯТНОСТНОГО АНАЛИЗА ПРОИЗВОДИТЕЛЬНОСТИ И НАДЕЖНОСТИ ПРОБЛЕМНО-ОРИЕНТИРОВАННЫХ СРЕД ОБЛАЧНЫХ ВЫЧИСЛЕНИЙ

Предложена вероятностная модель функционирования среды облачных вычислений; рассмотрены способы оценки производительности и надежности предоставления сервисов с ее использованием.

Ключевые слова: облачные вычисления, сервисы, распределенная среда, производительность, время наработки на отказ.

Введение. Концепция облачных вычислений предполагает, что пользователю предоставляются вычислительные ресурсы и сервисы с гарантированным уровнем качества, априори обеспеченным провайдером. Мера качества определяется бизнес-моделью предоставления сервиса. В частности, в рамках модели SaaS (Software as a Service) она связана как с надежностью функционирования, так и с производительностью (временем предоставления сервиса). Особенность определения этих характеристик состоит в том, что среда облачных вычислений представляет собой распределенный программно-аппаратный комплекс, включающий в себя управляющую инфраструктуру среды облачных вычислений, вычислительные ресурсы, а также пакеты прикладных программ, на основе которых формируются сервисы. По сравнению с нормативами автоматизированных систем для традиционных видов [1], оценка надежности сред облачных вычислений требует учета таких факторов, как распределенность, иерархичность и многовариантность использования. Как следствие, применение аппарата оценки показателей надежности программного обеспечения [2—4] требует определенной модификации в соответствии с принципами работы среды облачных вычислений как системы массового обслуживания.

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

Вероятностная модель среды облачных вычислений. Основой для функционирования среды является облако вычислительных ресурсов Q = ; где — физические ресурсы — отдельные вычислительные системы (серверы приложений, хранилища данных и пр.). Каждый вычислительный ресурс описывается кортежем, определяющим основные его технические характеристики:

здесь B — элемент из множества классов вычислительных архитектур (SMP, MPP, GPGPU, FPGA, ...), определяющих свойства, отражающие целесообразность запуска тех или иных пакетов. Производительность каждого ресурса характеризуется триплетом (q, p, П)в , где q — количество ядер, p — количество процессоров, П — количество узлов; марка B определяет их иерархию в конкретной архитектуре. Оперативная память описывается набором (m, д) объемных характеристик памяти на узле m и в целом в системе д (могут быть пересчитаны через p, q, П ). Дисковая память характеризуется аналогичными по смыслу величинами (d, D) .

УДК 681.3.069, 681.324

Многомерное вероятностное распределение 3f (T), где T = {tb..., tz}, описывает составляющие случайной изменчивости временных характеристик накладных расходов работы с данной вычислительной системой как с физическим ресурсом Qt в распределенной среде. В простейшем случае они могут включать в себя время tw (S) на передачу данных S на физический ресурс Qy и накладные расходы tr (Q) системы управления вычислительным ресурсом Qt. Такая высокоуровневая детализация позволяет использовать модель (1) как для „настоящих" физических ресурсов (серверов и суперкомпьютеров), так и для виртуальных систем (например, Грид-инфраструктур), доступных в „облаке". В случае виртуальных систем значение tr может быть представлено в форме суммы нескольких составляющих накладных

расходов, связанных с работой отдельных управляющих сервисов Грид.

В качестве иллюстрации на рисунке приведены ядерные оценки маргинальных распределений времени ft) накладных расходов, возникающих при исполнении заданий в среде облачных вычислений HPC-NASIS II [5], использующей ресурсы Грид Национальной нанотех-нологической сети [6]. На рисунке, а показана плотность распределения времени выполнения задания в Грид; видно, что при среднем времени выполнения около 85 с разброс может составлять от 70 до 110 с, что характеризуется латентностью самой Грид-среды. Из этого следует, что составляющая tr (Q) может достигать 40 с. На рисунке, б представлена плотность распределения нахождения задания в очереди, в — суммарные издержки среды облачных вычислений на основе платформы CLAVIRE (CLoud Applications VIRrtual Environment). Видно, что их разброс невелик; в среднем они в четыре раза меньше, чем издержки, связанные с Грид. На рисунке, г приведена плотность распределения времени передачи данных; для рассмотренного примера оно незначительно. В целом из рисунка видно, что латентность Грид является существенной по сравнению с остальными накладными расходами среды облачных вычислений, что требует ее отдельного учета в распределении 3t (T) .

а)

ft)

0,06

0,04 0,02 0 ft)

0,5

б)

ft) 1,5

1

0,5

г)

0

3 2

2 u c

10

11 t„ c

1,5 tw, c

При предоставлении пользователю сервиса в процессе его запуска в облаке происходит

*

выделение (резервирование) виртуального ресурса Оу на физическом ресурсе Оу, при этом

~ *

оставшийся ресурс Оу = О, \ О, может быть задействован для другой задачи. Эта операция

1

1

1

0

9

0

1

позволяет рассматривать Q как физический ресурс, однако — с „ухудшенными" (за счет выделения под заданную задачу) характеристиками по сравнению с Q;-. Следует отметить, что изменение касается не только числовых характеристик вычислителей (количество процессоров, узлов, ядер) и памяти, но и свойств распределения 3t (T): при увеличении количества независимых приложений объем накладных расходов может возрастать (хотя бы в силу загрузки управляющего узла).

Вероятностная модель производительности сервисов в рамках SaaS. Модель (1) описывает ресурсную составляющую облачной среды в рамках модели IaaS (Infrastructure as a Service). Для описания процесса запуска на ней прикладных пакетов следует ввести модель сервиса

£j _

который ассоциирован с каждым из физических ресурсов Q;- в (1). Здесь S j — характеристики (объем, структура) входных и выходных данных сервиса, Sj ( S j, P, Qi) — формализация „внутреннего" параллельного ускорения (например, в виде параметрической модели [7]) на физической системе Q;- в зависимости от количества занимаемых вычислительных ресурсов P _ (q, p, П), Kj — относительная пиковая производительность системы Qt для заданного сервиса £ j, а TO j — абсолютное время исполнения сервиса на „эталонном" (т.е. выбранном для сопоставления) ресурсе облачной среды в последовательном режиме. Следует отметить, что сервисы могут исполняться на тех системах, где они установлены, или развертываться на новых целевых системах (если они совместимы). На каждом ресурсе могут быть доступны все сервисы (или только несколько).

Время исполнения конкретного сервиса в рамках модели облачной среды (1)—(2) может быть представлено выражением:

Tj _ tij +KjToj / S

Здесь индексы i, j обозначают целевой ресурс и тип сервиса. Величина t в (3) является характеристикой накладных расходов на запуск сервиса, задаваемой распределением 3t (T), и может быть представлена следующим образом:

t _ tu

где tu — накладные расходы на подготовку задания к исполнению в распределенной среде Q с данными S, tr (Q) — внутренние накладные расходы распределенной среды, tw (S) — совокупное время подготовки и передачи данных в распределенной среде.

При запуске каждого сервиса создается сессия £

при ограничении на предельное число вычислителей на ресурсе Cli).

Таким образом, временной срез „общего" процесса функционирования облачной среды в рамках модели SaaS представляется в виде

Л _1M

£_<{{ )(Q*)}}

jeW

UQ/ \UQ*).

i i

Здесь к — индекс сквозной нумерации сессий пользователей, I — индекс сквозной нумерации виртуальных ресурсов, выделяемых под предоставление им сервисов, а у е Ж — идентификаторы конкретных содержательных сервисов. При этом допускается одновременное наличие нескольких сессий одних и тех же пользователей с одинаковыми сервисами, разли-

"

чающимися, например, только параметрами запуска ^¿у '.

Множество О = и О; \ и О* определяет доступное облако ресурсов, которое может

/ I

быть представлено в виде

о=и о /=и (о/ \ {о;, , оы ,...}),

II

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

Модель (3)—(4) определяет размерные характеристики производительности сервиса. Однако для анализа эффективности применения среды облачных вычислений в рамках модели БааБ, по сравнению с традиционными моделями использования программного обеспечения, целесообразно ввести ряд безразмерных характеристик:

— технологическая эффективность $1 использования среды облачных вычислений в сопоставлении с выделенной вычислительной системы с предустановленным пакетом (учитываются накладные расходы на управление выделенной системой);

— пользовательская эффективность $2 использования среды облачных вычислений в сопоставлении с „чистым" временем исполнения пакета на идеальной вычислительной системе (накладные расходы отсутствуют);

— абсолютная эффективность $3 технических решений среды облачных вычислений в

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

— относительная эффективность $4 технических решений среды облачных вычислений в сопоставлении с техническими решениями низкоуровневой вычислительной инфраструктуры для решения конкретной прикладной задачи, требующей передачи данных определенного объема.

Поскольку выражение (3) определяет случайную функцию в соответствии с Зг (Т), определяемые через него безразмерные характеристики $1 - $4 являются случайными величинами. В табл. 1 приведены вероятностные характеристики эффективности среды облачных вычислений НРС-ЫАБК II для примера, соответствующего рисунку.

Таблица 1

Характеристика Моменты, с Квантиль 10 %-ной обеспеченности, с

тх х #10% 195% #10 % #10 % + 195 %

$1 88,0 0,9 88,9 89,4 89,8

$2 72,3 4,5 76,2 78,1 80,0

$3 159,4 64,5 235,8 275,6 315,4

$4 58,3 9,7 67,6 72,0 76,3

Из таблицы следует, что оценка технологической эффективности $1 достаточно устойчива (около 88—89 %). Разброс пользовательской эффективности $2 существенно выше, а

среднее значение — ниже (72 %), что можно объяснить учетом накладных расходов среды ГридННС. Абсолютная эффективность технических решений $3 значительно превышает

100 % вследствие того, что накладные расходы платформы CLAVIRE, используемой в HPC-NASIS II, существенно меньше накладных расходов ГридННС (см. рисунок, в). Относительная эффективность технических решений $4 меньше, чем пользовательская эффективность

$2 , в силу сходных затрат на передачу данных.

Вероятностная модель надежности предоставления сервисов. В соответствии с моделью (1)—(2), среда облачных вычислений может иметь два режима функционирования:

— ожидания, когда в среде не выполняется ни одной сессии; все ресурсы свободны, Q = Q ;

— предоставления сервисов в соответствии с (5), когда QcD : в этой ситуации может быть одновременно запущено к сессий с различным временем выполнения.

Каждая сессия задействует ресурс , который может включать несколько вычислителей (узлов, процессоров, ядер). Как следствие, вероятность отказа пропорционально увеличивается. Это позволяет использовать для оценки надежности условное время работы 70j параллельной программы на ресурсе Q,, которое равно времени работы этой программы на одном процессоре с данными характеристиками Sj (3). Совокупное время работы в режиме

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

77 = ZQ70/// №*)

i=1

Здесь С/ — весовой коэффициент, отражающий потребительский интерес к использованию

*

прикладного пакета l, Pi — оптимальное количество вычислителей (ядер, процессоров, узлов), Toi — среднее время использования пакета (по разным наборам исходных данных), П/

*

— вероятность отказа конкретного сервиса. Функция f (P/ ) > 1 отражает дополнительные

накладные расходы на поддержку параллельного выполнения пакета. Она может быть представлена в различных параметризациях, например, в форме закона Амдала. Однако применительно к задаче определения среднего времени наработки на отказ можно полагать f = 1 с ошибкой в безопасную сторону. Величина 70/ определяется путем тестового исполнения типовых задач. Величины С/ определяются экспертно специалистами предметной области, а П/

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

т

пусков программы, в ней остается K - а^ kj ошибок.

j=1

В предположении, что число ошибок сХ в программе распределено по закону Пуассона, где X — частота появления ошибки, а с — коэффициент пропорциональности, вероятность безотказной работы р(0) = 1 - п и среднее время наработки на отказ ЕТ имеют вид

( ( т

р(0) = exp - y-ßZ

V v

ET =

1

i=1 У

f f

1 - exp

Y\'

ET :

1

V V

у-ßZ k

i=1

У У

Y-ßZ k

i=1

где у = сК, в = са — приведенные параметры, оцениваемые методом максимального правдоподобия. В общем случае оценки К и К - ак{ могут принимать нецелые значения, так как

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

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

распределена в соответствии с геометрическим законом /(п) = (1 -п£ )п п£ . Среднее значение

этого распределения (п) = 1/ п£, таким образом:

ТЕ= Т/пЕ .

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

В качестве примера в табл. 2 приведены значения параметров выражения (6) для предметно-ориентированных сервисов среды НРС-КАБК II.

_Таблица 2

Прикладной пакет Парамет] ры

Q, % T , мин * P П, %

SEMP 10 600 1 1

PRIRODA 15 30 8 0,5

NDDO 10 5 8 3

DPIMC 0,1 300 8 1

MD- kMC 15 600 8 1,5

NTDMFT 5 300 8 1

JAGGREGATE 0,1 3 8 1

QDLaser 0,1 3 8 1

PLASMON 0,1 1 8 1

NANOIMAGE 10 10 24 1

NANOFLOW 4,4 60 24 5

NAEN 0,1 3 24 2

MAGNET 0,1 10 24 3

GAMESS 15 60 8 0

ORCA 15 60 8 0

В табл. 2 для компонентов ОАМЕББ и ОЯСА принято П/ = 0, в силу того что эти компоненты являются внешними подключаемыми пакетами и не подвергались тестированию в ходе разработки. Используя данные из табл. 1 в (6)—(8), получим точечную оценку среднего

времени безотказной работы всего комплекса — T£ _ 965 ч. При этом выборочная изменчивость такой оценки достаточно велика. В частности, для верхней границы 90 % доверительного интервала , в силу того что в (8) выполняется деление на относительно малую величину, получается следующая оценка снизу времени безотказной работы: 7£"90 % _ 643 ч.

Заключение. Вероятностные модели производительности (1)—(5) и надежности (6)—(8) ориентированы на выполнение поверочных расчетов для оценки качества функционирования сервисов в ходе разработки и опытной эксплуатации проблемно-орентированных сред облачных вычислений.

Работа выполнена при поддержке проектов Минобрнауки по реализации Постановлений № 218 и 220 Правительства Российской Федерации (2010—2012 гг.).

список литературы

1. Надежность автоматизированных систем управления. ГОСТ 24.701 86.

2. Shooman M. L. Operational Testing and Software Reliability Estimation During Program Development, Record // IEEE Symp. on Computer Software Reliability. 1973. N 73. P. 51—76.

3. Благодатских В., Волик В., Поскакалов К. Стандартизация разработки программных средств. М.: Финансы и статистика, 2005. 288 с.

4. Майерс Г. Искусство тестирования программ. М.: Финансы и статистика, 1982. 174 с.

5. Спельников Д. М., Гуськов А. А., Маслов В. Г., Бухановский А. В. Учебно-научный комплекс „Компьютерное моделирование в нанотехнологиях" на основе Грид-среды // Изв. вузов. Приборостроение. 2011. Т. 54, № 10. C. 44—50.

6. [Электронный ресурс]: <www.ngrid.ru>.

7. Бухановский А. В., Ковальчук С. В., Марьин С. В. Интеллектуальные высокопроизводительные программные комплексы моделирования сложных систем: концепция, архитектура и примеры реализации // Изв. вузов. Приборостроение. 2009. Т. 52, № 10. C. 5—24.

Сведения об авторах

Тимофей Николаевич Чуров — НИИ Наукоемких компьютерных технологий Санкт-Петербург-

ского государственного университета информационных технологий, механики и оптики; младший научный сотрудник; E-mail: tchurovtim@gmail.com Денис Александрович Насонов — НИИ Наукоемких компьютерных технологий Санкт-Петербург-

ского государственного университета информационных технологий, механики и оптики; младший научный сотрудник; E-mail: denis.nasonov@gmail.com Борис Яковлевич Штейнберг — д-р техн. наук; Южный федеральный университет, кафедра алгеб-

ры и дискретной математики, Ростов-на-Дону; зав. кафедрой; E-mail: borsteinb@mail.ru

Александр Валерьевич Бухановский — д-р техн. наук, профессор; НИИ Наукоемких компьютерных технологий Санкт-Петербургского государственного университета информационных технологий, механики и оптики; директор; E-mail: avb_mail@mail.ru

Рекомендована НИИ НКТ Поступила в редакцию

15.05.11 г.