Кластер (група комп'ютерів) - це

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

Один з перших архітекторів кластерної технології Грегорі Пфістер дав кластеру наступне визначення: «Кластер - це різновид паралельної або розподіленої системи, яка:

  1. складається з декількох пов'язаних між собою комп'ютерів;
  2. використовується як єдиний, уніфікований комп'ютерний ресурс ».

Зазвичай розрізняють наступні основні види кластерів:

  1. відмовостійкі кластери (High-availability clusters, HA, кластери високої доступності)
  2. кластери з балансуванням навантаження (Load balancing clusters)
  3. обчислювальні кластери (High perfomance computing clusters)
  4. Грід-обчислення

Класифікація кластерів

Кластери високої доступності

Позначаються абревіатурою HA (англ. High Availability - висока доступність). Створюються для забезпечення високої доступності сервісу, що надається кластером. Надмірне число вузлів, що входять в кластер, гарантує надання сервісу в разі відмови одного або декількох серверів. Типове число вузлів - два, це мінімальна кількість, що приводить до підвищення доступності. Створено безліч програмних рішень для побудови такого роду кластерів.

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

  • з холодним резервом або активний / пасивний. Активний вузол виконує запити, а пасивний чекає його відмови і включається в роботу, коли такий відбудеться. Приклад - резервні мережеві з'єднання, зокрема, Алгоритм сполучного дерева. Наприклад зв'язка DRBD і HeartBeat.
  • з гарячим резервом або активний / активний. Всі вузли виконують запити, в разі відмови одного навантаження перерозподіляється між рештою. Тобто кластер розподілу навантаження з підтримкою перерозподілу запитів при відмові. Приклади - практично всі кластерні технології, наприклад, Microsoft Cluster Server. OpenSource проект OpenMosix.
  • з модульної надмірністю. Застосовується тільки в разі, коли простій системи абсолютно неприпустимий. Всі вузли одночасно виконують один і той же запит (або частини його, але так, що результат можна досягти і при відмові будь-якого вузла), з результатів береться будь-хто. Необхідно гарантувати, що результати різних вузлів завжди будуть однакові (або відмінності гарантовано не вплинуть на подальшу роботу). Приклади - RAID і Triple modular redundancy.

Конкретна технологія може поєднувати дані принципи в будь-якій комбінації. Наприклад, Linux-HA підтримує режим взаємної поглинає конфігурації (англ. Takeover), в якому критичні запити виконуються всіма вузлами разом, інші ж рівномірно розподіляються між ними. [1]

Кластери розподілу навантаження

Принцип їх дії будується на розподілі запитів через один або кілька вхідних вузлів, які перенаправляють їх на обробку в інші, обчислювальні вузли. Початкова мета такого кластера - продуктивність, однак, в них часто використовуються також і методи, що підвищують надійність. Подібні конструкції називаються серверними фермами. Програмне забезпечення (ПО) може бути як комерційним (OpenVMS. MOSIX. Platform LSF HPC, Solaris Cluster. Moab Cluster Suite, Maui Cluster Scheduler), так і безкоштовним (OpenMosix. Sun Grid Engine. Linux Virtual Server).

обчислювальні кластери

Кластери використовуються в обчислювальних цілях, зокрема в наукових дослідженнях. Для обчислювальних кластерів істотними показниками є висока продуктивність процесора в операціях над числами з плаваючою точкою (flops) і низька латентність об'єднує мережі, і менш істотними - швидкість операцій введення-виведення, яка більшою мірою важлива для баз даних і web-сервісів. Обчислювальні кластери дозволяють зменшити час розрахунків, у порівнянні з одиночним комп'ютером, розбиваючи завдання на паралельно виконуються гілки, які обмінюються даними по зв'язує мережі. Одна з типових конфігурацій - набір комп'ютерів, зібраних із загальнодоступних компонентів, з встановленої на них операційною системою Linux, і пов'язаних мережею Ethernet. Myrinet. InfiniBand або іншими відносно недорогими мережами. Таку систему прийнято називати кластером Beowulf. Спеціально виділяють високопродуктивні кластери (Позначаються англ. Абревіатурою HPC Cluster - High-performance computing cluster). Список найпотужніших високопродуктивних комп'ютерів (також може позначатися англ. Абревіатурою HPC) можна знайти в світовому рейтингу TOP500. ВУкаіни ведеться рейтинг найпотужніших комп'ютерів СНД. [1]

Системи розподілених обчислень (grid)

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

Кластер серверів, організованих програмно

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

На відміну від апаратного кластера комп'ютерів, кластери організовувані програмно, вимагають:

  • наявності спеціального програмного модуля (Cluster Manager), основною функцією якого є підтримка взаємодії між усіма серверами - членами кластеру:
    • синхронізації даних між усіма серверами - членами кластеру;
    • розподіл навантаження (клієнтських запитів) між серверами - членами кластеру;
  • від уміння клієнтського програмного забезпечення розпізнавати сервер, який представляє собою кластер серверів, і відповідним чином обробляти команди від Cluster Manager;
    • якщо клієнтська програма не вміє розпізнавати кластер, вона буде працювати тільки з тим сервером, до якого звернулася спочатку, а при спробі Cluster Manager перерозподілити запит на інші сервери, клієнтська програма може взагалі позбутися доступу до цього сервера (результат залежить від конкретної реалізації кластера).
Приклади програмних кластерних рішень
  • IBM Lotus Notes
  • HP MC / ServiceGuard

застосування

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

Однак, принцип організації кластера серверів (на рівні програмного протоколу) дозволяє виконувати по кілька програмних серверів на одному апаратній. Таке використання може бути затребуване:

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

Найпродуктивніші кластери

Найбільший кластер, що належить приватній особі (з 1000 процесорів), був побудований Джоном Коза (John Koza).

Історія створення кластерів нерозривно пов'язана з ранніми розробками в області комп'ютерних мереж. Однією з причин для появи швидкісного зв'язку між комп'ютерами стали надії на об'єднання обчислювальних ресурсів. На початку 1970-х рр. групою розробників протоколу TCP / IP і лабораторією Xerox PARC були закріплені стандарти мережевої взаємодії. З'явилася і операційна система Hydra ( «Гідра») для комп'ютерів PDP-11 виробництва DEC. створений на цій основі кластер був названий C.mpp (Піттсбург. шт. Пенсільванія. США, 1971). Проте, тільки близько 1983 р були створені механізми, що дозволяють з легкістю користуватися розподілом завдань і файлів через мережу, здебільшого це були розробки в SunOS (операційній системі на основі BSD від компанії Sun Microsystems).

Першим комерційним проектом кластера став ARCNet. створений компанією Datapoint в 1977 р Прибутковим він не став, і тому будівництво кластерів не розвивалося до 1984 р коли DEC побудувала свій VAXcluster на основі операційної системи VAX / VMS. ARCNet і VAXcluster були розраховані не тільки на спільні обчислення, але і спільне використання файлової системи і периферії з урахуванням збереження цілісності і однозначності даних. VAXCluster (званий тепер VMSCluster) - є невід'ємною компонентою операційної системи HP OpenVMS. використовують процесори Alpha і Itanium.

Історія створення кластерів з звичайних персональних комп'ютерів багато в чому зобов'язана проекту Parallel Virtual Machine. У 1989 р це ПО для об'єднання комп'ютерів у віртуальний суперкомп'ютер відкрило можливість миттєвого створення кластерів. В результаті сумарна продуктивність усіх створених тоді дешевих кластерів обігнала по продуктивності суму потужностей «серйозних» комерційних систем.

програмні засоби

Широко поширеним засобом для організації межсерверного взаємодії є бібліотека MPI. підтримуюча мови C і Fortran. Вона використовується, наприклад, в програмі моделювання погоди MM5.

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

Серед користувачів GNU / Linux популярні кілька програм:

  • distcc. MPICH і ін. - спеціалізовані засоби для розпаралелювання роботи програм. distcc допускає паралельну компіляцію в GNU Compiler Collection.
  • Linux Virtual Server. Linux-HA - вузлове ПО для розподілу запитів між обчислювальними серверами.
  • MOSIX. openMosix. Kerrighed, OpenSSI - повнофункціональні кластерні середовища, вбудовані в ядро, автоматично розподіляють завдання між однорідними вузлами. OpenSSI, openMosix і Kerrighed створюють середовище єдиної операційної системи між вузлами.

Примітки

Дивитися що таке "Кластер (група комп'ютерів)" в інших словниках:

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

Кластер (комп'ютери) - Кластер група комп'ютерів, об'єднаних високошвидкісними каналами зв'язку, що представляє з точки зору користувача єдину машину. Один з перших архітекторів кластерної технології Грегорі Пфістер (Gregory F. Pfister) дав кластеру наступне ... ... Вікіпедія

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

кластер - Група комп'ютерів, об'єднаних високошвидкісними каналами зв'язку і представляє з точки зору користувача єдиний апаратний ресурс. [Вікіпедія] Тематики автоматизовані системи EN cluster ... Довідник технічного перекладача

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

Кластер - в обчислювальній техніці група комп'ютерів, об'єднаних високошвидкісними каналами зв'язку і представляє з точки зору користувача одну многопроцессорную обчислювальну машину. За англійськи: Cluster Див. Також: Мультипроцессорная обробка ... ... Фінансовий словник

кластер - I (англ. cluster гроно, скупчення), скупчення однотипних об'єктів (наприклад, зоряне скупчення, атомний кластер). На основі атомних і молекулярних кластерів створені так звані кластерні матеріали (напівпровідники, надпровідники, ... ... Енциклопедичний словник

кластер - Термін кластер Термін англійською cluster Синоніми суператом Абревіатури Пов'язані терміни магічні кластери, наночастинок, фулерен, ендоедральних, матрична ізоляція Визначення (від англ. cluster рій, скупчення) компактна група пов'язаних ... ... Енциклопедичний словник нанотехнологій

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

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

Схожі статті