Київський національний університет імені Тараса Шевченка

Факультет кібернетики

Реферат

з інформаційних технологій

Відмовостійкі системи

студента 5-го курсу

групи ОМ

Бездітного Костянтина

Київ 2005

Зміст

Передмова...................................................................................................................................

3

Основні визначення...................................................................................................................

4

Підсистеми зовнішньої пам'яті високої готовності................................................................

6

Вимоги, пропоновані до систем високої готовності...............................................................

7

Конфігурації систем високої готовності..................................................................................

7

Вимоги початкової установки системи....................................................................................

8

Вимоги до системного програмного забезпечення.................................................................

9

Вимоги до мережевої організації й до комунікацій................................................................

10

«Кластеризація» як спосіб забезпечення високої готовності системи..................................

Базова модель VAX/VMS кластерів

11

Висновок .....................................................................................................................................

17

Використані джерела.................................................................................................................

19


Передмова

НЕ нашли? Не то? Что вы ищете?

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

Дуже часто визначальним стає вимога високого рівня готовності комп'ютерних систем, які повинні зберігати працездатність цілодобово (режим 24x7). В одному з досліджень Gartner Group й Dataquest було показано, що щонайменше 37% розглянутих систем характеризуються незапланованим часом простою від 1 год. і більше за місяць. Інше дослідження, проведене компанією Standish Group, виявило, що 72% відповідальних додатків простоюють 9 год. або більше за рік. Середня вартість хвилини простою відповідальних додатків склала при цьому близько 10 тис. дол. Більше того, приблизно 6% додатків могли б призвести до втрат 100 тис. дол. за хвилину простою під час пікового навантаження, а середні додатки електронної торгівлі могли б у випадку відмови комп'ютерних систем викликати втрати на суму більше мільйона доларів. Зі звіту, опублікованого фірмою Zona Research, можна укласти, що через неприйнятно низьку швидкість обміну даними з Web-сайтами підприємства електронної торгівлі в США щорічно недоодержують до 4,35 млрд. дол. виторгу. Ще один показник зростаючого розміру втрат через простої - випадок онлайнового аукціону, вартість основного фонду якого зменшилася на мільйони доларів через несправність комп'ютерної системи протягом 22 ч.

Доступність мережі Інтернет і пов'язаний з нею розвиток електронної торгівлі за схемою B2B (business-to-business) і B2C (business-to-consumer) пред'являють усе більш жорсткі вимоги до готовності інформаційних систем, що забезпечують Іт-інфраструктуру.

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

Старе гасло служби Federal Express звучить так: «У будь-якому випадку пошта повинна бути доставлена за ніч». Приблизно такі й вимоги до сучасних комп'ютерних систем, за винятком того, що доставка інформації повинна гарантуватися не за одну ніч, а постійно, поза залежністю від проблем, які можуть виникнути в конкретних апаратних або програмних компонентах інформаційної системи, збоїв у мережі електроживлення або неприємностей іншого роду.

Така концепція називається відмовостійкістю. Системи забезпечення відмовостійкості вбудовуються в програмне забезпечення, входять до складу апаратних засобів або є комбінованими.

Компанії, і в першу чергу працюючі в галузі фінансових послуг, телекомунікаційній сфері або службі експрес-доставки, уже давно використовують відмовостійкі конфігурації для захисту деяких базових і найбільш важливих додатків. Але поширення електронної комерції й глобалізація зв'язків збільшують попит на безперервний рівень обслуговування, причому й у розподіленому середовищі.

Основні визначення

Однією з основних проблем побудови обчислювальних систем за всіх часів лишається задача забезпечення їхнього тривалого функціонування. Ця задача має три складові: надійність, готовність і зручність обслуговування. Всі ці три складові припускають, у першу чергу, боротьбу з несправностями системи, породжуваними відмовами й збоями в її роботі. Ця боротьба ведеться по всім трьох напрямках, які взаємозалежні й застосовуються спільно.

Підвищення надійності засноване на принципі запобігання несправностей шляхом зниження інтенсивності відмов і збоїв за рахунок застосування електронних схем і компонентів з високим і надвисоким ступенем інтеграції, зниження рівня перешкод, полегшених режимів роботи схем, забезпечення теплових режимів їхньої роботи, а також за рахунок удосконалювання методів зборки апаратури. Одиницею виміру надійності є середній час наробітку на відмову (MTBF - Mean Time Between Failure).

Підвищення готовності припускає придушення в певних межах впливу відмов і збоїв на роботу системи за допомогою засобів контролю й корекції помилок, а також засобів автоматичного відновлення обчислювального процесу після прояву несправності, включаючи апаратурну й програмну надлишковість, на основі якої реалізуються різні варіанти відмовостійких архітектур. Підвищення готовності - є спосіб боротьби за зниження часу простою системи. Одиницею виміру тут є коефіцієнт готовності, що визначає ймовірність перебування системи в працездатному стані в будь-який довільний момент часу. Статистично коефіцієнт готовності визначається як MTBF/(MTBF+MTTR), де MTTR (Mean Time To Repair) - середній час відновлення (ремонту), тобто середній час між моментом виявлення несправності й моментом повернення системи до повноцінного функціонування.

В останні роки в літературі по обчислювальній техніці все частіше вживається термін «системи високої готовності», «системи високого ступеня готовності», «системи з високим коефіцієнтом готовності». Всі ці терміни власне кажучи є синонімами, однак як і багато термінів в галузі обчислювальної техніки, термін «висока готовність» розуміється по-різному окремими постачальниками й споживачами обчислювальних систем. Цілком аналогічно, деякі слова, пов'язані з терміном «висока готовність», такі, наприклад, як «кластеризація», також вживаються в різних значеннях. Важливо мати стандартний набір визначень для того, щоб пропозиції різних постачальників можна було порівнювати між собою на основі однакових термінів.

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

Висока Готовність (High Availability). Дані конструкції з високим коефіцієнтом готовності для мінімізації планового й непланового часу простою використовують звичайну комп'ютерну технологію. При цьому конфігурація системи забезпечує її швидке відновлення після виявлення несправності, для чого в ряді місць використовуються надлишкові апаратні й програмні засоби. Тривалість затримки, протягом якої програма, окремий компонент або система простоює, може знаходитися в діапазоні від декількох секунд до декількох годин, але більш часто в діапазоні від 2 до 20 хвилин. Звичайно системи високої готовності добре масштабуються, пропонуючи користувачам більшу гнучкість, ніж інші типи надлишковості.

Еластичність до відмов (Fault Resiliency). Ряд постачальників комп'ютерного обладнання поділяє весь діапазон систем високої готовності на дві частини, при цьому у верхній його частині опиняються системи еластичні до відмов. Ключовим моментом у визначенні еластичності до відмов є більш короткий час відновлення, що дозволяє системі швидко відкотитися назад після виявлення несправності.

Стійкість до відмов (Fault Tolerance). Відмовостійкі системи мають у своєму складі надлишкову апаратуру для всіх функціональних блоків, включаючи процесори, джерела живлення, підсистеми вводу/виводу й підсистеми дискової пам'яті. Якщо відповідний функціональний блок неправильно функціонує, завжди є гарячий резерв. У найбільш розвинутих відмовостійких системах надлишкові апаратні засоби можна використовувати для розпаралелювання звичайних робіт. Час відновлення після виявлення несправності для перемикання компонентів, що відмовили, на надлишкові для таких систем звичайно менше однієї секунди.

Безперервна готовність (Continuous Availability). Вершиною лінії відмовостійких систем є системи, що забезпечують безперервну готовність. Продукт із безперервною готовністю, якщо він працює коректно, усуває будь-який час простою як плановий, так і неплановий. Розробка такої системи охоплює як апаратні засоби, так і програмне забезпечення й дозволяє здійснювати модернізацію (upgrade) і обслуговування в режимі on-line. Додатковою вимогою до таких систем є відсутність деградації у випадку відмови. Час відновлення після відмови не перевищує однієї секунди.

Стійкість до стихійних бедствияи (Disaster Tolerance). Широкий ряд продуктів і послуг пов'язаний із забезпеченням стійкості до стихійних лих. Іноді стійкість до стихійних лих розглядається в контексті систем високої готовності. Зміст цього терміна в дійсності означає можливість рестарту або продовження операцій на іншій площадці, якщо основне місце розташування системи опиняється в неробочому стані через повінь, пожежу або землетрус. У найпростішому випадку, продукти, стійкі до стихійних лих, можуть просто являти собою резервні комп'ютери, розташовані поза основним місцем розташування системи, сконфігуровані по специфікаціях користувача й доступні для використання у випадку стихійного лиха на основній площадці. У більш складних випадках стійкість до стихійних лих може означати повне (дзеркальне) дублювання системи поза основним місцем розташування, що дозволяє прийняти на себе роботу негайно після відмови системи на основній площадці.

Всі згадані типи систем високої готовності мають загальну мету - мінімізацію часу простою. Є два типи часу простою комп'ютера: плановий й неплановий. Мінімізація кожного з них вимагає різної стратегії й технології. Плановий час простою звичайно включає час, прийнятий керівництвом, для проведення робіт з модернізації системи й для її обслуговування. Неплановий час простою є результатом відмови системи або компонент. Хоча системи високої готовності якнайбільше асоціюються з мінімізацією непланових простоїв, вони виявляються також корисними для зменшення планового часу простою.

Можливо найбільшим винуватцем планового часу простою є резервне копіювання даних. Деякі конфігурації дискових підсистем високої готовності, особливо системи із дзеркальними дисками, дозволяють робити резервне копіювання даних у режимі on-line. Наступним джерелом зниження планового часу простою є організація робіт з відновлення (модернізації) програмного забезпечення. Сьогодні деякі відмовостійкі системи й всі системи з безперервною готовністю дозволяють робити модернізацію програмного забезпечення в режимі on-line.

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

Спеціальне програмне забезпечення є істотною частиною систем високої готовності. При виявленні несправності системи воно забезпечує керування конфігурацією апаратних засобів і програмного забезпечення, а також якщо буде потреба процедурами початкової установки, і перебудовує де треба структури даних.

Висока готовність не дається безкоштовно. Загальна вартість подібних систем складається із трьох складових: початкової вартості системи, витрат планування й реалізації, а також системних накладних витрат.

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

Щоб реалізувати конфігурацію системи високої готовності найбільш ефективним способом, особливо при використанні кластерних схем, потрібно досить велике попереднє планування. Наприклад, щоб мати можливість перекидання критичного додатка у випадку відмови одного процесора на іншій, користувачі повинні визначити, які додатки є найбільш критичними, проаналізувати всі можливі відмови й скласти докладні плани відновлення на всі випадки відмов.

Накладні витрати систем високої готовності пов'язані з необхідністю підтримки досить складних програмних продуктів, що забезпечують високу готовність. Для забезпечення дублювання записів на дзеркальні диски у випадку відсутності спеціальних, призначених для цих цілей процесорів, потрібна підтримка додаткової зовнішньої пам'яті.

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

Підсистеми зовнішньої пам'яті високої готовності

Першим кроком на шляху забезпечення високої готовності є захист найбільш важливої частини системи, а саме - даних. Різні типи конфігурацій надлишкової зовнішньої пам'яті забезпечують різний ступінь захисту даних і мають різну вартість.

Є три основних типи підсистем зовнішньої пам'яті з високою готовністю. Для своєї реалізації вони використовують технологію Надлишкових Масивів Дешевих Дисків (RAID - Redundant Arrays of Inexpensive Disks). Найбільше часто використовуються наступні рішення : RAID рівня 1 або дзеркальні диски, RAID рівня 3 з парністю й RAID рівня 5 з розподіленою парністю. Ці три типи зовнішньої пам'яті в загальному випадку мають практично майже миттєвий час відновлення у випадку відмови. Крім того, подібні пристрої іноді дозволяють користувачам змішувати й підбирати типи RAID у межах одного дискового масиву. У загальному випадку дискові масиви представляються прикладній задачі як один диск.

Технологія RAID рівня 1 (або зеркалювання дисків) заснована на застосуванні двох дисків так, що у випадку відмови одного з них, для роботи може бути використана копія, що знаходиться на додатковому диску. Програмні засоби підтримки дзеркальних дисків забезпечують запис всіх даних на обидва диски. Недоліком організації дзеркальних дисків є подвоєння вартості апаратних засобів і незначне збільшення часу запису, оскільки дані повинні бути записані на обидва диски. Позитивні сторони цього підходу включають можливість забезпечення резервного копіювання в режимі on-line, а також заміну дисків у режимі on-line, що істотно знижує плановий час простою. Як правило, структура пристроїв із дзеркальними дисками усуває також одиничність точки відмови, оскільки для підключення обох дисків звичайно передбачаються два окремих кабелі, а також два окремих контролери вводу/виводу.

У масивах RAID рівня 3 передбачається використання одного додаткового дискового накопичувача, що забезпечує зберігання інформації про парність (контрольної суми) даних, записаних на кожні з двох або чотирьох дисків. Якщо один з дисків у масиві відмовляє, інформація про парність разом з даними, що перебувають на інших дисках, що залишилися, дозволяє реконструювати дані, що знаходилися на накопичувачі, що відмовив.

Масив RAID рівня 5 є комбінацією RAID рівня 0, у якому дані розщеплюються для запису на кілька дисків, і RAID рівня 3, у яких є один додатковий диск. В RAID рівня 5 корисна інформація чотирьох дисків і контрольна інформація розподіляється по всім п'ятьох дисках так, що при відмові одного з них, чотири що залишилися забезпечують зчитування необхідних даних. Методика розщеплення даних дозволяє також істотно збільшити швидкість вводу/виводу при передачі більших обсягів даних.

Діапазон можливих конструкцій сучасних дискових масивів досить широкий. Він простираються від простих підсистем без багатьох додаткових можливостей до досить витончених дискових підсистем, які дозволяють користувачам змішувати й підбирати рівні RAID усередині одного пристрою. Найбільш потужні дискові підсистеми можуть також містити у своєму складі процесори, які розвантажують основну систему від виконання рутинних операцій вводу/виводу, форматування дисків, захисту від помилок і виконання алгоритмів RAID. Більшість дискових масивів забезпечуються двома портами, що дозволяє користувачам підключати їх до двох різних систем.

Реалізація зовнішньої пам'яті високої готовності може приводити до збільшення системних накладних витрат. Наприклад, основний процесор системи змушений обробляти дві операції при кожному записі інформації на дзеркальні диски, якщо ці диски не є частиною дзеркального дискового масиву, що має свої власні засоби обробки. Однак найбільш складні дискові масиви дозволяють знизити накладні витрати за рахунок використання процесорів вводу/виводу, що є частиною апаратури дискового масиву.

Вимоги, пропоновані до систем високої готовності

Однією із ключових вимог користувачів UNIX-систем є можливість їхнього нарощування з метою забезпечення більш високого ступеня готовності. Головними характеристиками систем високої готовності в порівнянні зі стандартними системами є знижена частота відмов і більш швидкий перехід до нормального режиму функціонування після виникнення несправності за допомогою швидкого відновлення додатків і мережевих сесій до того стану, у якому вони перебували в момент відмови системи. Слід зазначити, що в багатьох випадках користувачів цілком може влаштувати навіть невеликий час простою в обмін на меншу вартість системи високої готовності в порівнянні зі значно більше високою вартістю забезпечення режиму безперервної готовності.

Конфігурації систем високої готовності

Конфігурації систем високої готовності, запропоновані сучасною комп'ютерною промисловістю, пролягають в широкому діапазоні від «найпростіших» жорстких схем, що забезпечують дублювання основної системи окремо вартим гарячим резервом у співвідношенні 1:1, до досить вільних кластерних схем, що дозволяють одній системі підхопити роботу кожної з декількох систем у кластері у випадку їхньої несправності.

Термін «кластеризація» в комп'ютерній промисловості має багато різних значень. Строге визначення могло б звучати так: «реалізація об'єднання машин, що представляється єдиним цілим для операційної системи, системного програмного забезпечення, прикладних програм і користувачів». Машини, кластеризовані разом таким способом можуть при відмові одного процесора дуже швидко перерозподілити роботу на інші процесори усередині кластера. Це, можливо, найбільш важливе завдання багатьох постачальників систем високої готовності. Є декілька постачальників, які називають свої системи високої готовності «кластерами» або «простими кластерами», однак реально доступні тільки кілька кластерів, які підпадають під строге визначення.

Сучасні конструкції систем високої готовності припускають використання гарячого резерву (Fail-Over), включаючи перемикання прикладних програм і користувачів на іншу машину з гарантією відсутності втрат або перекручувань даних під час відмови й перемикання. Залежно від властивостей системи, деякі або всі ці процеси можуть бути автоматизовані.

Системи високої готовності пов'язані зі своїми резервними системами за допомогою дуже невеликого програмного демона «серцевий пульс», що дозволяє резервній системі керувати основною системою або системами, які вона резервує. Коли «пульс» пропадає, кластер переходить у режим перемикання на резервну систему.

Таке перемикання може виконуватися вручну або автоматично, і є кілька рівнів автоматизації цього процесу. Наприклад, у деяких випадках користувачі інструктуються про те, що вони повинні вийти й знову ввійти в систему. В інших випадках перемикання здійснюється більш прозорим для користувача способом: він тільки повинен почекати протягом короткого періоду часу. Іноді користувач може робити вибір між ручним й автоматичним перемиканням. У деяких системах користувачі можуть продовжити роботу після перемикання саме з тієї точки, де вони перебували під час відмови. В інших випадках їх просять повторити останню транзакцію.

Резервна система не обов'язково повинна повністю повторювати систему, яку вона резервує (конфігурації систем можуть відрізнятися). Це дозволяє в ряді випадків заощадити гроші за рахунок резервування великої системи або систем за допомогою системи меншого розміру й припускає або зниження продуктивності у випадку відмови основної системи, або перемикання на резервну систему тільки критичних для життєдіяльності організації додатків.

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

Вимоги початкової установки системи

Більшість систем високої готовності вимагають включення у свій склад процедур початкової установки (System Setup), що забезпечують конфігурацію кластера для належного виконання процедур перемикання, необхідних у випадку відмови. Користувачі можуть запрограмувати «скрипти» початкової установки самостійно або попросити системного інтегратора або постачальника проробити цю роботу. Залежно від того, наскільки складна початкова установка системи, і залежно від типу системи, з якої мігрує користувач, написання «скриптів», які керують діями системи високої готовності у випадку відмови, може зайняти від одного - двох днів до декількох тижнів або навіть місяців для досвідчених програмістів. Багато постачальників забезпечують декілька стандартних «скриптів» початкової установки. Крім того, деякі з них надають сервісні послуги по початковій установці конфігурації, які включають програмування сценаріїв перемикання на гарячий резерв у випадку відмови, а також здійснюють роботу із замовником за написанням або модифікацією «скриптів». Користувачі можуть самостійно створювати «скрипти», однак для реалізації належної конфігурації потрібен висококваліфікований програміст - знавець UNIX й C.

Час простою при перемиканні системи на резервну для систем високої готовності може змінюватися в діапазоні від декількох секунд до 20-40 і більше хвилин. Процедура перемикання на резерв містить у собі наступні етапи: резервна машина виявляє відмову основної й потім слідує розпорядженням скрипта, що найімовірніше включає перезапуск системи, передачу адрес користувачів, одержання й запуск необхідних додатків, а також виконання певних кроків по забезпеченню коректного стану даних. Час відновлення залежить головним чином від того, наскільки швидко друга машина зможе одержати й запустити додатки, а також від того, наскільки швидко операційна система й додатки, такі як бази даних або монітори транзакцій, зможуть одержати наведені в порядок дані.

У загальному випадку апаратне перемикання на резерв займає один по порядку величини одну - дві хвилини, а система перезавантажується за наступні одну - дві хвилини. У більшості випадків від 5 до 20 хвилин потрібно на те, щоб одержати й запустити додаток з повністю відновленими даними. У противному випадку користувачі інструктуються про необхідність заново ввести останню транзакцію.

Накладні системні витрати залежать від типу використовуваної системи й від складності процедур її початкової установки. Для простих процедур початкової установки при переході на резерв вони дуже невеликі: від часток відсотка до 1.5%. Однак, щоб одержати справжню вартість накладних витрат до цих накладних витрат необхідно додати ще втрати, пов'язані з недовикористанням процесорної потужності резервної системи. Хоча покупці прагнуть використати резервну систему для некритичних додатків, вона виявляється менш завантаженою в порівнянні з основною системою. Істинно кластерні системи, такі як VAXclasters компанії DEC або кластер LifeKeeper Claster відділення NCR компанії AT&T, є прикладами набагато більш складного керування в порівнянні із простими процедурами початкової установки при перемиканні на резерв, і повністю використовують всі доступні процесори. Однак організація таких систем спричиняє й більші накладні витрати, які збільшуються з збільшенням числа вузлів у кластері.

Вимоги до системного програмного забезпечення

Постачальники, що пропонують системи з гарячим резервом, звичайно у своїх версіях системи UNIX надають також деякі додаткові властивості високої готовності, що забезпечують швидке завантаження й/або перезавантаження резервної системи у випадку перемикання при виникненні несправності.

Журналізація файлової системи

Наслідком журналізації змін файлової системи є те, що файли завжди перебувають у готовому для використання стані. Коли система відмовляє, журналізована файлова система гарантує, що файли збережені в останньому узгодженому стані. Це дозволяє здійснювати перемикання на резервну систему без якого-небудь псування даних, а також або взагалі без яких-небудь втрат даних, або із втратою тільки однієї останньої транзакції.

Ізоляція несправного процесу

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

Монітори обробки транзакцій

Іноді для керування перемиканням на резерв використовуються монітори транзакцій, що гарантують відсутність втрат даних. При цьому для незавершених транзакцій може бути зроблений відкат назад і бази даних повертаються до відомого узгодженого стану. Для системи UNIX найбільш відомими моніторами транзакцій є Tuxedo компанії USL, Encina компанії Transarc, CICS/6000 компанії IBM й Top End компанії NCR.

Інші функції програмного забезпечення

У сучасних системах все зростаючу роль грає діагностика в режимі on-line, що дозволяє передбачати проблеми, які можуть призвести до простою системи. У цей час вона специфічна для кожної системи. У майбутньому, можливо, діагностика стане частиною розподіленого керування системою.

Вимоги високої готовності до прикладного програмного забезпечення

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

Висока готовність баз даних. Кілька компаній, що поставляють бази даних, такі як Oracle, Sybase, Informix мають у складі своїх продуктів програмне забезпечення, що дозволяє виконувати швидку реконструкцію файлів у випадку відмови системи. Це знижує час простою для дзеркальних серверів і кластерних рішень.

Продукт Oracle7 Parallel Server дозволяє кільком системам одночасно працювати з єдиним представленням бази даних Oracle. Балансування навантаження й розподілений менеджер блокувань, які дозволяють безлічі систем звертатися до бази даних у той самий час, збільшують потенційну готовність бази даних.

Спочатку модель обчислювального кластера була розроблена компанією DEC наприкінці 80-х років. Вона відома за назвою VMS-кластерів (або VAX-кластерів), які являли собою об'єднані в кластер мінікомп’ютери VAX, що працюють під керуванням операційної системи VMS. Компанія DEC була першим постачальником Oracle Parallel Server на VMS-кластерах в 1991 році. Після появи версії Oracle 7, у компанії Oracle з'явився інтерес до концепції бази даних на UNIX-кластерах й в 1991 році вона опублікувала програмний інтерфейс додатків (API) для свого менеджера блокувань. Публікація цього API означала відкрите запрошення всіх постачальників обчислювальних систем для організації підтримки на їхніх платформах Oracle 7 Parallel Server. У результаті основні постачальники UNIX-кластерів у цей час підтримують цей продукт.

Крім того, існують продукти третіх фірм, що доповнюють можливості баз даних відомих виробників й які забезпечують збільшення ступеня високої готовності. Наприклад, компанія Afic Computer Incorporated (New York) продає продукт за назвою Multi Server Option (MSO), що дозволяє користувачам здійснювати через мережу TCP/IP одночасний запис у будь-яку кількість розподілених дзеркальних баз даних Sybase. Інформація розповсюджується широкомовним способом одночасно до всіх баз даних. MSO забезпечує також балансування навантаження по безлічі серверів. Якщо один із серверів відмовляє, програмне забезпечення перенаправляє запит на дублюючу базу даних протягом не більше 30 секунд.

Вимоги до мережевої організації й до комунікацій

Системи високої готовності вимагають також високої готовності комунікацій. Чим швидші комунікації між машинами, тим швидше відбувається відновлення після відмови. Деякі конфігурації систем високої готовності мають дубльовані комунікаційні зв'язки. У результаті зв'язок перестає бути точкою, відмова якої може призвести до виходу з ладу всієї системи. Існуюча в цей час тенденція в напрямку мереж LAN й WAN з підвищеною пропускною здатністю забезпечує як локальні, так і віддалені комп'ютери більш швидкими комунікаціями, що приводить у підсумку до більш швидкого відновлення в розподілених системах.

Сучасна мережева технологія сама по собі вимагає усунення таких точок, вихід з ладу яких, може призвести до відмови всієї мережі. Сьогодні при створенні мереж характерне використання більш складних мережевих пристроїв від різних постачальників, таких як маршрутизатори й мережеві хаби. Маршрутизатори, які визначають шлях даних у мережах, можуть обчислити новий шлях у випадку відмови зв'язку. Хаби можуть мати конфігурації з надлишковими пристроями й можуть ізолювати відмови у фізичній мережі для запобігання відмови всієї мережі. Важливу роль у підтримці оптимального функціонування систем грають також мережеві аналізатори, що дозволяють викликати системного менеджера при будь-якому симптомі, що може потенційно призвести до простою.

Висока готовність мережевої організації завжди дуже залежить від розміру мережі. У міру свого розростання мережа прагне набути властивості вбудованої надійності: чим більше мережа, тим більше бажане використання альтернативних маршрутів, щоб відмова одного компонента блокувала тільки якусь невелику її частину.

Ціни на мережі високої готовності в значній мірі залежать від їхньої конфігурації. Нижче дані кілька прикладів для однорангових мереж високої готовності.

Для невеликої мережі, розташованої на одній площадці, яка містить в собі менше 500 вузлів, користувач повинен очікувати приблизно 50-процентне збільшення вартості за забезпечення високої готовності.

Середня по розміру мережа, що припускає розміщення на декількох площадках і має до 5000 вузлів зажадає від 30 до 40 відсотків надбавки до вартості звичайної мережі.

Для дуже великої мережі з більше 5000 вузлів, розташованих на одній площадці надбавка до вартості за забезпечення високої готовності зменшується приблизно до%.

В відмовостійких системах вартість мережі ще більше збільшується. Надбавка до вартості за базову відмовостійку мережу звичайно перебуває в межах 80-100 і більше відсотків, і пов'язана скоріше не з розміром мережі, а із платою за високу готовність.

«Кластеризація» як спосіб забезпечення високої готовності системи

Базова модель VAX/VMS кластерів

Компанія DEC першою анонсувала концепцію кластерної системи в 1983 році, визначивши її як групу об'єднаних між собою обчислювальних машин, що представляють собою єдиний вузол обробки інформації. Власне кажучи VAX-кластер являє собою слабозв’язану бнатомашинну систему із спільною зовнішньою пам'яттю, що забезпечує єдиний механізм керування й адміністрування.

VAX-кластер має наступні властивості:

Розподіл ресурсів. Комп'ютери VAX у кластері можуть розділяти доступ до загальних стрічкових і дискових накопичувачів. Всі комп'ютери VAX у кластері можуть звертатися до окремих файлів даних як до локальних.

Висока готовність. Якщо відбувається відмова одного з VAX-комп'ютерів, завдання його користувачів автоматично можуть бути перенесені на інший комп'ютер кластера. Якщо в системі є кілька контролерів HSC й один з них відмовляє, інші контролери HSC автоматично підхоплюють його роботу.

Висока пропускна здатність. Ряд прикладних систем можуть користатися з можливості паралельного виконання завдань на декількох комп'ютерах кластера.

Зручність обслуговування системи. Загальні бази даних можуть обслуговуватися з єдиного місця. Прикладні програми можуть інсталюватись тільки один раз на загальних дисках кластера й розділятись між всіма комп'ютерами кластера.

Розширюваність. Збільшення обчислювальної потужності кластера досягається підключенням до нього додаткових VAX-комп'ютерів. Додаткові накопичувачі на магнітних дисках і магнітних стрічках стають доступними для всіх комп'ютерів, що входять у кластер.

Робота VAX-кластера визначається двома головними компонентами. Першим компонентом є високошвидкісний механізм зв'язку, а другим - системне програмне забезпечення, що забезпечує клієнтам прозорий доступ до системного сервісу. Фізично зв'язки усередині кластера реалізуються за допомогою трьох різних шинних технологій з різними характеристиками продуктивності.

Шина зв'язку комп'ютерів CI (Computer Interconnect) працює зі швидкістю 70 Мбіт/с і використовується для з'єднання комп'ютерів VAX і контролерів HSC за допомогою комутатора Star Coupler. Кожен зв'язок CI має подвійні надлишкові лінії, дві для передачі й дві для прийому, використовуючи базову технологію CSMA, що для усунення колізій використовує специфічні для даного вузла затримки. Максимальна довжина зв'язку CI становить 45 метрів. Зіркоподібний комутатор Star Coupler може підтримувати підключення до 32 шин CI, кожна з яких призначена для приєднання комп'ютера VAX або контролера HSC. Контролер HSC являє собою інтелектуальний пристрій, що управляє роботою дискових і стрічкових накопичувачів.

Комп'ютери VAX можуть об'єднуватися в кластер також за допомогою локальної мережі Ethernet, використовуючи NI - Network Interconnect (так називані локальні VAX-кластери), однак продуктивність таких систем порівняно низька через необхідність ділити пропускну здатність мережі Ethernet між комп'ютерами кластера й інших клієнтів мережі.

На початку 1992 року компанія DEC анонсувала підтримку побудови кластера на основі шини DSSI (Digital Storage System Interconnect). На шині DSSI можуть поєднуватися до чотирьох комп'ютерів VAX нижнього й середнього класу. Кожен комп'ютер може підтримувати кілька адаптерів DSSI. Окрема шина DSSI працює зі швидкістю 4 Мбайт/с (32 Мбіт/с) і допускає приєднання до 8 пристроїв. Підтримуються наступні типи пристроїв: системний адаптер DSSI, дисковий контролер серії RF і стрічковий контролер серії TF. DSSI обмежує відстань між вузлами в кластері 25 метрами.

В усьому світі налічувалося більше 20000 установок VAX-кластерів. Майже всі з них побудовані з використанням шинного інтерфейсу CI.

Системне програмне забезпечення VAX-кластерів

Для гарантії правильної взаємодії процесорів один з одним при звертаннях до загальних ресурсів, таким, наприклад, як диски, компанія DEC використовує розподілений менеджер блокувань DLM (Distributed Lock Manager). Дуже важливою функцією DLM є забезпечення когерентного стану дискових кешів для операцій вводу/виводу операційної системи й прикладних програм. Наприклад, у додатках реляційних СУБД DLM відповідає за підтримку погодженого стану між буферами бази даних на різних комп'ютерах кластера.

Задача підтримки когерентності кеш-пам'яті вводу/виводу між процесорами в кластері подібні задачі підтримки когерентності кеш-пам'яті в сильно пов'язаній багатопроцесорній системі, побудованій на базі деякої шини. Блоки даних можуть одночасно з'являтися в декількох кешах і якщо один процесор модифікує одну із цих копій, інші існуючі копії вже не відображають поточний стан блоку даних. Концепція захоплення блоку (володіння блоком) є одним зі способів керування такими ситуаціями. Перш ніж блок може бути модифікований повинне бути забезпечене володіння блоком.

Робота з DLM зв'язана зі значними накладними витратами. Накладні витрати в середовищі VAX/VMS можуть бути великими, такими що вимагають передачі до шести повідомлень по шині CI для однієї операції вводу/виводу. Накладні витрати можуть досягати величини 20% для кожного процесора в кластері. Постачальники баз даних при використанні двохпроцесорного VAX-кластера звичайно розраховують одержати збільшення пропускної здатності в 1.8 рази для транзакцій вибору й в 1.3 рази для транзакцій відновлення бази даних.

Критерії оцінки кластерів Gartner Group

Різні групи промислових аналітиків вважають VAX-кластери зразком, по якому повинні реалізовуватися інші кластерні системи, і прикладом властивостей, якими вони повинні володіти. VAX-кластери є дуже надійними й високопродуктивними обчислювальними системами, заснованими на мінікомп’ютерах. Хоча вони базуються на патентованому операційному середовищі (VMS), досвід їхньої експлуатації показав, що основні властивості, якими вони володіють дуже добре відповідають потребам комерційних установ.

У цей час на зміну VAX-кластерам приходять UNIX-кластери. При цьому VAX-кластери пропонують перевірений набір рішень, що встановлює критерії для оцінки подібних систем. Одна з відомих аналітичних груп (Gartner Group) опублікувала модель для порівняння, що одержала назву «Критерії оцінки кластерів» (MCS Research Note T, November 22, 1993). Ця модель базується на наборі властивостей VAX-кластера й використовується для порівняння UNIX-кластерів. Критерії цієї моделі представлені в табл. 11.1.

Таблиця 11.1

Архітектурна модель

VAX-кластер

Масштабованість
Масштабованість (>6 вузлів)
Змішаний розмір
Змішані покоління
Єдине представлення даних
Балансування навантаження
Загальний планувальник робіт
Загальний менеджер систем
Надійність на рівні кластера
Готовність
Придушення одиночної відмови або збою
Симетричний резерв апаратних засобів
Симетричний резерв програмних засобів
Автоматична реконфігурація
Автоматичне відновлення клієнта
Розміщення на декількох площадках


так
так
так
так
так
так
так
так
так
так
так
так
так
так

У цей час UNIX-кластери усе ще відстають від VAX-кластерів по функціональних можливостях. Одна з найбільших відмінностей пов'язана з реалізацією відновлення клієнтів у випадку відмови. В VAX-кластерах таке відновлення здійснюється засобами програмного забезпечення самого VAX-кластера. В UNIX-кластерах ці можливості звичайно реалізуються окремим рівнем програмного забезпечення, називаним монітором транзакцій. В UNIX-кластерах монітори транзакцій крім того використовуються також для цілей балансування навантаження, у той час як VAX-кластери мають вбудовану в програмне забезпечення утиліту балансування завантаження.

Кластери Alpha/OSF компанії DEC

Стратегічна лінія нових продуктів компанії DEC заснована на новій апаратній платформі Alpha AXP, що підтримує кілька операційних систем (у їхньому числі OpenVMS, DEC OSF/1 й Windows NT). Компанія оголосила про створення UNIX-кластерів на своїй новій платформі Alpha/OSF в 1993 році. Головним завданням при цьому вважається досягнення тих же функціональних можливостей, якими володіли VAX/VMS-кластери.

В основу нового кластерного рішення покладений високошвидкісний комутатор

GigaSwitch, максимальна пропускна здатність якого досягає 3.6 Гбайт/с.

GigaSwitch являє собою протокольно незалежний пристрій комутації пакетів, що може мати 36 портів і підтримувати протоколи Ethernet, FDDI й ATM. Підтримка різних протоколів реалізована за допомогою набору спеціальних змінних карт. Передбачається, що до GigaSwitch крім робочих станцій Alpha зможуть підключатися й UNIX-станції інших виробників.

У квітні 1994 року компанія DEC анонсувала продукт за назвою Integrated Cluster Server, що по своїх функціональних характеристиках повинен відповідати стандарту VAX/VMS-кластерів. Основу цього рішення становить нова технологія так називаної рефлективної пам'яті, наявної в кожному вузлі кластера. Пристрою рефлективної пам'яті різних вузлів кластера поєднуються за допомогою високошвидкісних каналів на основі інтерфейсу PCI. Обмін інформацією між вузлами типу «пам'ять-пам'ять» по цих каналах може вироблятися зі швидкістю 100 Мбайт/с, що на порядок перевищує швидкість обміну по звичайних каналах вводу/виводу.

Компанія DEC випускає RAID масиви StorageWorks, які підтримують RAID рівнів 0, 1 й 5 і забезпечують заміну компонентів без вимикання живлення. У стійковій конфігурації підтримується до 70 накопичувачів і додаткові джерела живлення. Вони можуть виконувати до 400 операцій вводу/виводу в секунду й підключаються до основних комп'ютерів через інтерфейс Differential Fast SCSI-2. Швидкість інтерфейсу становить 10 Мбайт/с, максимальна довжина зв'язку - 25 м.

UNIX-кластери компанії IBM

Компанія IBM пропонує кілька типів слабко зв'язаних систем на базі RS/6000, об'єднаних у кластери й працюючих під керуванням програмного продукту High-Availability Clastered Multiprocessor/6000 (HACMP/6000). У цих системах підтримуються три режими автоматичного відновлення системи після відмови:

Режим 1 - у конфігурації із двома системами, одна йз яких є основною, а інша перебуває в гарячому резерві, у випадку відмови забезпечує автоматичне перемикання з основної системи на резервну.

Режим 2 - у тій же двухмашиній конфігурації дозволяє резервному процесору обробляти некритичні додатки, виконання яких у випадку відмови основної системи можна або припинити зовсім, або продовжувати їхню обробку в режимі деградації.

Режим 3 - можна дійсно назвати кластерним рішенням, оскільки системи в цьому режимі працюють паралельно, розділяючи доступ до логічних і фізичних ресурсів користуючись можливостями менеджера блокувань, що входить до складу HACMP/6000.

Починаючи з оголошення в 1991 році продукт HACMP/6000 постійно розвивався. У його склад були включені паралельний менеджер ресурсів, розподілений менеджер блокувань і паралельний менеджер логічних томів, причому останній забезпечив можливість балансування завантаження на рівні всього кластера. Максимальна кількість вузлів у кластері зросла до восьми. У цей час у складі кластера з'явилися вузли із симетричною багатопроцесорною обробкою, побудовані за технологією Data Crossbar Switch, що забезпечує лінійний ріст продуктивності зі збільшенням числа процесорів.

Спочатку обов'язковою вимогою режиму 3 було використання високопродуктивної дискової підсистеми IBM 9333, що використовувала послідовний дисковий інтерфейс із підтримкою 17.6 Гбайт дискового простору, а також дискової підсистеми IBM 9334 з інтерфейсом SCSI, що забезпечує дисковий простір в 8.2 Гбайт. У серпні 1993 року була анонсована перша підсистема RAID: дві моделі 7135 RAIDiant Array можуть підтримувати до 768 Гбайт дискового простору в стійковій конструкції серії 900 й 96 Гбайт у підлогових тумбових конструкціях, при цьому реалізують RAID рівнів 1, 3 й 5.

Кластери RS/6000 будуються на базі локальних мереж Ethernet, Token Ring або FDDI і можуть бути сконфігуровані різними способами з погляду забезпечення підвищеної надійності:

Гарячий резерв або простої перемикання у випадку відмови. У цьому режимі активний вузол виконує прикладні завдання, а резервний може виконувати некритичні завдання, які можуть бути зупинені якщо буде потреба перемикання при відмові активного вузла.

Симетричний резерв. Аналогічний гарячому резерву, але ролі головного й резервного вузлів не фіксовані.

Взаємне підхоплення або режим з розподілом навантаження. У цьому режимі кожен вузол у кластері може «підхоплювати» завдання, які виконуються на будь-якому іншому вузлі кластера.

Кластери AT&T GIS

Відділення GIS (Global Information Systems) утворилося після покупки AT&T компанії NCR, що успішно працювала в напрямку створення систем із симетричної багатопроцесорної обробки (SMP) і систем з масовим паралелізмом (MPP) на базі мікропроцесорів Intel. В 1993 році NCR анонсувала програмне забезпечення для підтримки високої готовності, що одержало назву LifeKeeper FRS (Fault Recilient Systems) Clastering Software, що разом з дисковими масивами NCR дозволяло будувати високонадійні кластерные рішення. До складу кластерів NCR можуть входити багатопроцесорні системи серій 3400 й 3500, кожна з яких включає від 1 до 8 процесорів 486DX2 або Pentium.

Disk Array Subsystem 6298 включає до 20 дискових накопичувачів ємністю 1 Гбайт і підтримує RAID рівнів 0, 1, 3 й 5 у будь-якій комбінації. Підсистема забезпечує заміну дискових накопичувачів, вентиляторів і джерел харчування в режимі on-line, тобто без припинення роботи системи. У ній передбачено три порти й можлива поставка з надлишковими контролерами.

Програмне забезпечення LifeKeeper допускає побудову кластерів високої готовності із чотирма вузлами, причому кожний з вузлів кластера може слугувати в якості резервного для інших вузлів. Плановий час простою для інсталяції програмного забезпечення може бути значно знижено, оскільки перемикання на резерв можна ініціювати вручну, потім модифікувати програмне забезпечення й зробити зворотне перемикання з резерву. LifeKeeper забезпечує також відновлення системи після виявлення помилок у системних, прикладних програмах і периферійному устаткуванні. Він забезпечує автоматичне перемикання при виявленні відмови й ініційоване оператором зворотне перемикання. Всі зв'язки вузлів кластера за допомогою Ethernet, Token Ring й FDDI дубльовані, а дискові підсистеми, як ми вже відзначали, можуть підключатися відразу до декількох вузлів кластера. Все це забезпечує побудову системи, стійкої до одиночних відмов, причому програмне забезпечення виконує автоматичне виявлення відмов і відновлення системи.

При використанні Oracle Parallel Server розподілений менеджер блокувань, що входить до складу LifeKeeper, дозволяє паралельній базі даних працювати із системою високої готовності.

Кластери Sequent Computer Systems

Sequent була, очевидно, другою після IBM компанією, що здійснила поставки UNIX-кластерів баз даних у середині 1993 року. Вона пропонує рішення, що відповідають середньому й високому рівню готовності своїх систем. Спочатку Sequent Hi-Av Systems забезпечували дублювання систем, які розділяли спільні диски. Користувачі могли вибирати ручний або автоматичний режим перемикання на резерв у випадку відмови. Програмний продукт ptx/CLASTERS, що може використовуватися разом із продуктом Hi-Av Systems, включає ядро, відмовостійкий розподілений менеджер блокувань, що забезпечує розподіл даних між додатками. Продукт ptx/NQS призначений для балансування пакетних завдань між вузлами кластера, а ptx/LAT розширює можливості керування користувальницькими додатками в режимі on-line. Продукт ptx/ARGUS забезпечує централізоване керування вузлами кластера, а ptx/SVM (розподілений менеджер томів) являє собою інструментальний засіб керування зовнішньою пам'яттю системи. Hi-Av Systems забезпечує також гаряче резервування IP адрес і дозволяє кластеру, до складу якого входять до чотирьох вузлів, мати єдина мережна адреса.

Компанія Sequent одною з перших освоїла технологію Fast-Wide SCSI, що дозволило їй домогтися значного збільшення продуктивності систем при обробці транзакцій. Компанія підтримує дискові підсистеми RAID рівнів 1, 3 й 5. Крім того вона пропонує як розділюваний ресурс стрічкові накопичувачі SCSI. Модель SE90 підтримує кластери, до складу яких можуть входити два, три або чотири вузли, що представляють собою багатопроцесорні системи Symmetry 2000 або Symmetry 5000 у будь-якій комбінації. Це досить потужні системи. Наприклад, Sequent Symmetry 5000 Series 790 може мати від 2 до 30 процесорів Pentium 66 Мгц, оперативну пам'ять ємністю до 2 Гбайт і дискову пам'ять ємністю до 840 Гбайт.

При роботі з Oracle Parallel Server всі вузли кластера працюють із єдиною копією бази даних, розташованої на загальних розділюваних дисках.

Системи високої готовності Hewlett-Packard

Продукти високої готовності HP включають дискові масиви, програмне забезпечення Switchover/UX й SharePlex, а також замовлені послуги з організації систем, стійких до стихійних лих. HP дотепер не підтримує Oracle Parallel Server, хоча є плани по організації такої підтримки. Схема «слабко зв'язаного» кластера HP включає до 8 серверів HP 9000 Series 800, причому сім з них є основними системами, а восьма перебуває в гарячому резерві й готова замінити кожну з основних систем у випадку відмови. Для цього в нормальному режимі роботи основні системи посилають резервній повідомлення (так званий «пульс»), що підтверджують їхній працездатний стан. Якщо резервна система виявляє втрату «пульсу» у якої-небудь основної системи, вона припиняє виконання своїх процесів, бере на себе керування дисками системи, що відмовила, здійснює перезавантаження, перемикає на себе мережеві адреса системи, що відмовила, і потім перезапускає додатки. Весь процес перемикання може займати від 10 до 20 або більше хвилин залежно від додатка.

Продукти Switchover й Shareplex можуть використатися спільно. При цьому Switchover забезпечує високу готовність, а Shareplex розширює можливості кластерної системи, надаючи підтримку загального керування системами, відмовостійкості при стихійних лихах і розділюваному доступі до розподілених ресурсів систем.

Продукти HP відомі своєю високою надійністю й гарними показниками наробітку на відмову. Дискові масиви HP-FL підтримують RAID рівнів 0, 3 й 5, а також заміну без вимикання живлення. У цей час у системах HP використаються пристрої Fast/Wide SCSI Disk Array, що підтримують RAID рівнів 0, 1, 3 й 5 з 50 Гбайтами спільного дискового простору. На відміну від пристроїв HP-FL, приєднання яких здійснювалося за допомогою оптоволоконного кабелю, SCSI Disk Array підключається за допомогою звичайних мідних кабелів, довжина яких може досягати 25 метрів.

Нова версія ОС Version 10.0 HP-UX забезпечує журнализацию файлів і розподілене керування блокуваннями, що дозволяє HP активно конкурувати із продукцією високої готовності інших постачальників.

Кластерні рішення Sun Microsystems

Sun Microsystems пропонує кластерні рішення на основі свого продукту SPARCclaster PDB Server, у якому як вузли використаються багатопроцесорні SMP-сервери SPARCserver 1000 й SPARCcenter 2000. Максимально до складу SPARCserver 1000 можуть входити до восьми процесорів, а в SPARCcenter 2000 до 20 процесорів SuperSPARC. У комплект базової поставки входять наступні компоненти: два кластерних вузли на основі SPARCserver 1000/1000E або SPARCcenter 2000/2000E, два дискових масиви SPARCstorage Array, а також пакет засобів для побудови кластера, що включає дубльоване обладнання для здійснення зв'язку, консоль керування кластером Claster Management Console, програмне забезпечення SPARCclaster PDB Software і пакет сервісної підтримки кластера.

Для забезпечення високої продуктивності й готовності комунікацій кластер підтримує повне дублювання всіх магістралей даних. Вузли кластера поєднуються за допомогою каналів SunFastEthernet із пропускною здатністю 100 Мбіт/с. Для підключення дискових підсистем використовується оптоволоконний інтерфейс Fibre Channel із пропускною здатністю 25 Мбіт/с, що допускає видалення накопичувачів і вузлів один від одного на відстань до 2 км. Всі зв'язки між вузлами, вузлами й дисковими підсистемами дубльовані на апаратному рівні. Апаратні, програмні й мережеві засоби кластера забезпечують відсутність такого місця в системі, одиночна відмова або збій якого виводив би всю систему з ладу.

SPARCclaster PDB Server підтримує повністю автоматичне виявлення відмов, їхню ізоляцію й відновлення після відмови, причому виявлення й ізоляція відмови виконуються на різних рівнях залежно від компонента, що відмовив (системи зв'язку між вузлами, дискової підсистеми, мережевого підключення або цілком вузла). При цьому процес відновлення здійснюється досить швидко, оскільки у випадку подібних відмов не потрібно повного перезавантаження системи.

До складу програмного забезпечення кластера входять чотири основних компоненти: відмовостійкий розподілений менеджер блокувань, розподілений менеджер томів, програмні засоби керування виявленням відмов і керування відновленням, програмне забезпечення керування кластером.

Sun Microsystems випускає дискові масиви, що забезпечують RAID рівнів 0 й 1. Очікується поява підтримки RAID рівня 5. Максимальна ємність дискового масиву для SPARCserver 1000 становить 63 Гбайт при використанні SPARCstorage Array Model 100 й 324 Гбайт при використанні SPARCstorage Array Model 200. Для SPARCcenter 2000 ці цифри становлять відповідно 105 Гбайт й 324 Гбайт.

Відмовостійкі рішення Data General

Лінія продуктів високої готовності компанії Data General включає системи, основними властивостями яких є: цілком автоматичне відновлення без втрати даних, конфігуровані дискові й стрічкові масиви й засоби підтримки високої готовності, вбудовані в системне програмне забезпечення.

Data General поставляє багатопроцесорні SMP-сервери серій AV 5500, AV 8500 й AV 9500. Ці сервери підтримують роботу з відмовостійкими дисковими й стрічковими підсистемами CLARiiON, засоби автоматичної діагностики AV/Alert, ініційовані оператором або автоматично засоби перемикання на резервну систему, керування зовнішньою пам'яттю в режимі on-line, керування вводом/виводом і швидке відновлення файлів.

При виявленні відмови процесора, пам'яті або компоненти вводу/виводу система автоматично починає процес вимикання й потім здійснює власне перезавантаження з виключенням компонентів, що відмовили. Стандартним засобом зазначених систем є наявність надлишкових джерел живлення.

Максимальний ступінь готовності досягається при підключенні двох серверів до високонадійного дискового масиву CLARiiON. Дискові масиви CLARiiON Series C2000 Disk Array забезпечують RAID рівнів 0, 1, 3 й 5 у будь-яких сполученнях, до 20 накопичувачів в одному шасі загальною ємністю до 80 Гбайт і можливість заміни накопичувача без вимикання живлення. У конструкції дискового масиву використовуються надлишкові інтелектуальні контролери з дубльованими зв'язками, що забезпечують відмовостійкість. Стрічковий масив CLARiiON Series 4000 підтримує відмовостійке резервне копіювання й відновлення. У складі масиву використається спеціальний процесор, що реалізує схему розщеплення даних, подібну RAID рівня 5. Стрічковий масив забезпечує не тільки високу пропускну здатність, але й реалізує захист від відмов носія й накопичувача. У дійсності, навіть при відмові накопичувача або картриджа, операції по резервному копіюванню або відновленню даних тривають без втрати даних. У масив можна встановлювати 3, 5 або 7 накопичувачів. При двухкратній компресії даних загальна ємність стрічкового масиву може досягати 48 Гбайт.

Висновок

При підвищенні відмовостійкості важливе пророблення рішення на кожній стадії й кожному рівні переміщення, розміщення й зберігання даних. Не завжди найдорожчий варіант забезпечує рішення насущних проблем, іноді він ще й додає нові. Будь-який керівник служби ІТ ставить перед собою головну мету - побудувати високопродуктивну обчислювальну систему з високим ступенем відмовостійкості й при цьому знизити як закупівельну, так й експлуатаційну вартість, тобто вартість володіння. У ході проектування й побудови правильно збалансованого комплексу, залучення компаній з досвідом інтеграційних рішень можна уникнути зайвих витрат і грошей і часу. Компроміс між простотою рішення, продуктивністю й відмовостійкістю необхідно відшукувати на стадії проектування й розробки, постійно коректувати дії виходячи з вартості володіння й показників продуктивності.

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

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

Але ціль конфігурацій високої готовності полягає в тому, щоб допомогти компаніям швидко відновити роботу після збою, що не годиться для підтримки відмовостійкості (або постійної готовності), ціль якої - звести до нуля час відновлення. Тут необхідно домогтися майже миттєвого «підхоплення» додатків. «Існує якісне й кількісне розходження між цими двома підходами», - помітила Джина Бозман, що ведучий аналітик International Data Corp.

«Засоби відмовостійкості дозволяють скоротити час простою до п'яти хвилин у рік або навіть менше. З підтримкою високої готовності час відновлення після збою, як підкреслила Бозман, може значно змінюватися залежно від конфігурації. « Відмовостійкість забезпечується надлишковістю на фізичному рівні, де в кожному з компонентів може виникнути збій і ніхто цього не помітить», - відзначила вона.

У підсумку всі системи в відмовостійкої конфігурації відрізняються високим рівнем апаратної надлишковості, обслуговуваності й можливостей віддаленого керування. Всі основні апаратні елементи, такі як процесори, пам'ять і диски, дублюються. Всі надлишкові компоненти виконують будь-який процес всі разом.

Репліцировані компоненти виконують ті самі команди одночасно, тому навіть якщо на одному з компонентів виникне помилка, додаток буде працювати без змін. У результаті адміністратори можуть нарощувати систему, здійснювати повсякденну підтримку й видаляти компоненти, на яких виник збій, без відключення всієї системи.

У серверах використовується концепція, що одержала назву «пари процесів». Суть її в тім, що основний процес і резервний процес виконуються на різних вузлах. Резервний процес дзеркалює всю інформацію з основного вузла й здатний у будь-який момент «підмінити» основний процес у випадку виникнення в ньому помилки.

Надмірність доповнюють високонадійні операційні системи, вбудовані інструментальні засоби діагностики й різноманітне програмне забезпечення керування потоками робіт.

Крім усього іншого, таке відмовостійке програмне забезпечення покликане запобігти втраті даних у випадку виникнення збою й управляти виконанням таких завдань, як примусове перемикання із системи, де виник збій. Ціль полягає в тому, щоб виявити апаратні проблеми, які можуть призвести до відключення системи, і швидко перерозподілити робоче навантаження на інші системи.

Використані джерела

Byte Magazine Online – Отказоустойчивые серверы ftServer, Андрей Борзенко. Computerworld, #47/2000; Отказоустойчивые ситемы, Джайкумар Виджаян. Украинская Банерная Ссеть, Сервер Информационных Технологий : Системы высокой готовности и отказоустойчивые системы. LAN №7/2004, Отказоустойчивые системы хранения, Андрей Узварик.

Поданий до розгляду 16.11.2005