УДК 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® | , характеризующая функциональные возможности серверных групп системы,
II У ||пхт
формируется из матрицы ||а/1| с учетом числа (кратности резервирования) групп каждого варианта
функциональной комплектации т1, т2,..., тм .
В работе [7] предложена оценка надежности (вероятности безотказной работы) систем из многофункциональных модулей, а адаптация этой оценки к кластерным системам, в которых в качестве многофункциональных модулей рассматриваются кластерные группы, включающие коммутаторы и разнотипные по функциональности серверы, проведена в работе [8]:
м м
м "Ут.-Ук.
ш Ш2 Шм ук/ п ,
р к Ш2,..., тм )=р у у... у сс .-^р: (1 - р г " хп(1 -(1 - р, г2а'2мам ),(1)
к, =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.
Расчеты подтверждают, что надежность исследуемых систем зависит не только от надежности и кратности резервирования серверов, но и от вариантов их объединения в серверные группы. Расчеты показывают предпочтительность комплектации кластерных групп серверами разного функционального назначения, для которой разница построчных сумм матриц Цф. || минимальна. При выполнении этой рекомендации предпочтительней является распределение серверов по группам, при котором число комбинаций расположения единиц в строках минимально.
Р(р) --------б*КГ-' D(p)
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, тЗ,т4,Р0) < а, С(т1,т2, тЗ, т4,Р0),а)
При этом
С (ш1 , ш2 ,.
, Ра) =
/ Р(Ш1, Ш2,..., Шм) > Р0!
о(1т ) с(X ааш1)
]=\ 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.
Богатырев Владимир Анатольевич - Санкт-Петербургский государственный университет информационных технологий, механики и оптики, доктор технических наук, профессор, [email protected]
Богатырев Станислав Владимирович - Санкт-Петербургский государственный университет информационных технологий, механики и оптики, аспирант, [email protected]
Богатырев Анатолий Владимирович - Санкт-Петербургский государственный университет информационных технологий, механики и оптики, студент, [email protected]
УДК 621.3.085.42
ПСЕВДОРЕГУЛЯРНЫЕ КОДОВЫЕ ШКАЛЫ ДЛЯ ЦИФРОВЫХ ПРЕОБРАЗОВАТЕЛЕЙ УГЛА А.А. Ожиганов, П.А. Прибыткин
Предложен новый тип кодовых шкал для цифровых преобразователей угла (ЦПУ) - псевдорегулярные кодовые шкалы. Рассмотрен метод их построения, основанный на использовании композиции нелинейных рекуррентных последовательностей и регулярных двоичных кодовых шкал. Приведен пример построения псевдорегулярной кодовой шкалы.
Ключевые слова: преобразователь угол-код, цифровой преобразователь угла, кодовая шкала, считывающие элементы, рекуррентная последовательность, псевдорегулярная кодовая шкала, последовательность де Брейна, нелинейная кодовая шкала.
Введение
ЦПУ являются измерительными преобразователями, служащими для ввода аналоговой информации об объекте в различные цифровые системы автоматического управления. Среди ЦПУ особое место занимают преобразователи абсолютного типа, основанные на методе считывания с пространственным кодированием [1, 2]. Основные требования к таким преобразователям - точность преобразования, быстродействие, надежность, стойкость к внешним воздействующим факторам и др. Достаточно хорошо изучены основные способы получения высокой точности и разрешающей способности ЦПУ, если нет ограничений в габаритах преобразователей. Но в ряде применений ЦПУ актуальна задача увеличения точности и разрешающей способности при одновременном уменьшении их габаритов [3].