Оптимизация кластера с ограниченной доступностью кластерных групп

УДК 681.3

ОПТИМИЗАЦИЯ КЛАСТЕРА С ОГРАНИЧЕННОЙ ДОСТУПНОСТЬЮ КЛАСТЕРНЫХ ГРУПП

В.А. Богатырев, С.В. Богатырев, А.В. Богатырев

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

Введение

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

Рис. 1. Вычислительная система кластерной архитектуры с выделением групп серверов

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

Формирование кластерных групп функционально неоднородных серверов

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

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

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

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

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

В последнем случае кластерные группы (сегменты) имеют ограниченную (неполную) доступность для различных функциональных запросов.

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

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

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

Надежность систем с функциональной неоднородностью кластерных групп

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

В соответствии с [8] каждую кластерную группу (рис. 1), включающую коммутационный узел нижнего уровня и подключенные к нему разнотипные по функциональному назначению серверы, будем рассматривать как многофункциональный модуль, для которого ^¿)(У/)[(, ^ /) ^ Ф, ^Ф: = О], где

Ф1,Ф2,...,Фп - ресурсы модуля, задействованные при выполнении функций /1,/2,...,/, а О - базовое оборудование общее при выполнении всех функций [4-7]. Отказ базового оборудования О приводит к отказу всего многофункционального модуля. Для исследуемого объекта к оборудованию О отнесем КНУ, а к оборудованию Ф1, Ф2,..., Фп - серверы разной функциональности (назначения).

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

II ' НпхМ

а,/ = 1, если группа/-го типа комплектации содержит сервер, реализующий ,-ю функцию, иначе а,/ = 0 , /=1,2,...,м Матрица 11 | , характеризующая функциональные возможности серверных групп системы,

формируется из матрицы ||а/1| с учетом числа (кратности резервирования) групп каждого варианта

функциональной комплектации т1, т2,..., тм .

В работе [7] предложена оценка надежности (вероятности безотказной работы) систем из многофункциональных модулей, а адаптация этой оценки к кластерным системам, в которых в качестве многофункциональных модулей рассматриваются кластерные группы, включающие коммутаторы и разнотипные по функциональности серверы, проведена в работе [8]:

м м

м "Ут.-Ук.

ш Ш2 Шм ук/ п ,

р к Ш2,..., тм )=р у у... у сс .-^р:

к, =0 к2 =0 км =0 ,=1

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

функционального назначения ,-го типа; Р^ = 1 -(1 -Р^У0 , Р<1 = 1 -(1 -Рл)Г1 - вероятности исправности групп коммутационных узлов верхнего и нижнего уровня при кратности их резервирования Г) и г и вероятности работоспособности одного КВУ и КНУ, равной р^ и р^ .

Выбор функциональной комплектации кластерных групп

Рассмотрим системы, компонуемые из серверных групп, функциональная комплектация которых представлена матрицами аг/| вида А1,А2,А3,А4:

"1 0" "1 1 0" "1 1 1" "1 1 0 0"

1 0 1 0 0 0 0 1 0 1 1 0

0 1 0 1 1 0 1 1 0 0 1 1

0 1 0 0 1 0 0 1 1 0 0 1

Если кратности серверных групп, представляемых столбцами матрицы А1 равны т1 = 8, Ш2 = 8, матриц А2, А3 равны т1 = 8, т2 = тз = 4, а матрицы А4 - т1 = т2 = тз = т4 = 4, то матрицы ||ф;/1| имеют соответственно вид 81982,83 ,Б4:

1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0

1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1"

0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1

0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1

11111111 11111111

00000000 00000000 11111111 0 0 0 0 1 1 1 1 00000000

1 1 1 1 0 0 0 0 00000000 11111111 0 0 0 0 1 1 1 1 00000000 1 1 1 1 0 0 0 0 11111111

1111000000001111

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

рассматриваемых кластерных систем при ps0 = ps1 = p, Р1 = P2 = Рз = P4 = p2 представлены на рис. 2. На рис. 2 кривая 1 соответствует надежности систем, комплектация серверных групп которых представлена матрицами Sj,S4, а кривые 2, 3 - матрицами S2,S3; кривая 4 отражает разницу DP(p) вероятностей

работоспособности систем, представленных матрицами S19S4.

Расчеты подтверждают, что надежность исследуемых систем зависит не только от надежности и кратности резервирования серверов, но и от вариантов их объединения в серверные группы. Расчеты показывают предпочтительность комплектации кластерных групп серверами разного функционального назначения, для которой разница построчных сумм матриц Цф. || минимальна. При выполнении этой рекомендации предпочтительней является распределение серверов по группам, при котором число комбинаций расположения единиц в строках минимально.

Р

0,49»

ода ода 0.590

1 1 \ н 2 /у 3

\ / 1 # /

\ 1 V

/V /] / -

/ xi / U

4* КГ

.......Г

0,8 0,85 0,9 0.05 р

Рис. 2. 1 - вероятность безотказной работы систем P(p) с матрицами Sj ,S4; 2, 3 - то же для матриц S2,S3; 4 - разница DP(p) вероятностей безотказной работы систем с матрицами SJ9S4

Оптимизация кратности резервирования серверных групп

В работе [7] поставлена и решена задача оптимизации, для которой при заданном наборе типов многофункциональных модулей (отличающихся функциональной комплектацией), представленном матрицей ||агу||, требуется определить состав и число m^,m2,...,шм модулей каждого типа комплектации, обеспечивающих максимум надежности системы при ограничении на стоимость ее реализации C0:

P(mj,Ш2,Ш3,Ш4) ^ max,C(m1,ш2,ш3,...,mM) < С0.

В работе [8] представленные модели [7] уточнены при рассмотрении в качестве многофункционального модуля группы функционально разнотипных серверов, объединяемых через коммутатор.

В отличие от постановки задачи оптимизации по [7], определим состав и число тх,m2,...,mM кластерных групп различной функциональной комплектации, обеспечивающих минимум стоимость реализации системы при выполнении заданных требований по надежности P0:

C(ml, m2, m3,..., mM) ^ min и P(ml, m2, m3, m4) > P0.

Для структур по рис. 1 стоимость реализации системы вычисляется как

M n M

с m m2,..., mM)=C0(1mj)+Х ci (S aijmj)'

j=1 i=1 j = 1

где C0 - стоимость коммутатора, ci - стоимость i-го типа сервера, M - число типов комплектации кластерных групп. Надежность системы определяется по формуле (1).

Поиск минимума С(да1,Ш2,...,тм) проводится на основе перебора возможных значений (ш-1,Ш2,...,тм). При этом задаем начальное значение стоимости системы максимально возможным Cmax (например, а=1000), а затем при переборе (шьш^,...,шм), если текущее значение стоимости меньше значения переменной а и удовлетворяет ограничению по надежности Р0 , присваиваем переменной а текущее значение стоимости, иначе остается старое значение. Реализация такого поиска с использованием средств системы МаШсас1-14 приведена ниже:

ё2(Р0):

а <-1000 /ог т1 Е 1..5 /ог т2 €= 1..5 /огтЗ 6 1..5 /ог т1 Е 1..5

а <— г[

При этом

С (ш1 , ш2 ,.

, Ра) =

/ Р(Ш1, Ш2,..., Шм) > Р0!

о

]=\ 1=1 ]=\ _

Стах , / P(Ш1, . , ШМ ) < Р0.

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

Приведем пример оптимизации при стоимости узлов с2 = 6, с3 = 2, с4 = 2, с0 = 1 (условных единиц,

у.е.) и вероятности их исправности р^ = р^ = 0,9; л = рз = 0,7 ; р2 = Р4 = 0,9. При заданной предельной надежности системы Р0 = 0,9995 и комплектации кластерных групп в соответствии с матрицей А1 требуется 8 и 10 групп, представленных соответственно первым и вторым столбцами, при этом затраты на построение системы равны 154 у.е.

Рис. 3. Зависимость минимальной стоимости реализации системы от требований ее надежности Р0 : 1 - при комплектации системы, представленной матрицей А1, 2 - то же для матрицы А4.

Зависимость минимальной стоимости реализации системы от требований по ее надежности Р0 при комплектации групп серверов, представляемых матрицами А19А4 отображена кривыми 1 и 2 на рис. 3. Расчеты (рис. 3) показывают, что требуемый уровень надежности в зависимости от исходной функциональной комплектации кластерных групп может быть достигнут при различных затратах на ее построение.

Заключение

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

А.А. Ожиганов, П.А. Прибыткин

Литература

1. Ретана Ф. Принципы проектирования корпоративных IP-сетей. - М.: Вильямс, 2002. - 368 с.

2. Богатырев В. А. Оптимизация отказоустойчивых кластеров с неполнодоступностью узлов и неоднородностью потока запросов // Информационные технологии. - 2008. - № 2. - С. 30-36.

3. Богатырев В. А. Оптимальное резервирование системы разнородных серверов // Приборы и системы. Управление, контроль, диагностика. - 2007. - № 12. - С. 30-36.

4. Богатырев В.А., Богатырев С.В. Объединение резервированных серверов в кластеры высоконадежной компьютерной системы // Информационные технологии. - 2009. - № 6. - С. 41-47.

5. Богатырев В.А. Надежность вариантов размещения функциональных ресурсов в однородных вычислительных сетях // Электронное моделирование. - 1997. - № 3. - С. 21-29.

6. Богатырев В.А. Отказоустойчивость распределенных вычислительных систем динамического распределения запросов и размещение функциональных ресурсов // Наука и образование: электронное научно-техническое издание. - 2006. - № 1 [Электронный ресурс]. - Режим доступа: http://technomag.edu.ru/doc/56860.html, свободный. Яз. рус. (дата обращения 1.02.2010).

7. Богатырев В.А. Метод оценки надежности вычислительных систем при функциональной неоднородности компьютерных узлов // Приборы и системы. Управление, контроль, диагностика. - 2006. -№ 12. - С. 20-22.

8. Богатырев В.А. Оценка надежности и оптимизация комплектации вычислительных систем при резервировании функционально неоднородных компьютерных узлов // Информационные технологии. - 2007. - № 5. - С. 41-47.

9. Богатырев В.А., Богатырев С.В. Надежность компьютерных систем при объединении серверов в кластерные группы // Информационные технологии моделирования и управления. - 2009. - № 4. -С. 548-552.

10. Богатырев В.А., Богатырев С.В. Критерии оптимальности многоустойчивых отказоустойчивых компьютерных систем // Научно-технический вестник СПбГУ ИТМО. - 2009. - № 5. - С. 92-97.

Богатырев Владимир Анатольевич - Санкт-Петербургский государственный университет информационных технологий, механики и оптики, доктор технических наук, профессор, Vladimir.bogatyrev@gmail.com

Богатырев Станислав Владимирович - Санкт-Петербургский государственный университет информационных технологий, механики и оптики, аспирант, realloc@gmail.com

Богатырев Анатолий Владимирович - Санкт-Петербургский государственный университет информационных технологий, механики и оптики, студент, ganglion@gmail.com

УДК 621.3.085.42

ПСЕВДОРЕГУЛЯРНЫЕ КОДОВЫЕ ШКАЛЫ ДЛЯ ЦИФРОВЫХ ПРЕОБРАЗОВАТЕЛЕЙ УГЛА А.А. Ожиганов, П.А. Прибыткин

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

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

Введение

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