- •3.1.2. Малые компьютеры Лекция 3
- •3.1.3. Микрокомпьютеры
- •3.1.4. Персональные компьютеры
- •3.2. Многомашинные и многопроцессорные вс
- •3.2.1. Суперкомпьютеры и особенности их архитектуры
- •3 .2.2. Кластерные суперкомпьютеры
- •Кластеры распределения нагрузки
- •Системы распределенных вычислений (grid)
- •Самые производительные
- •1.4. Функции программного обеспечения
3 .2.2. Кластерные суперкомпьютеры
Как уже упоминалось выше, в настоящее время развивается технология построения больших и суперкомпьютеров на базе кластерных решений. По мнению многих специалистов, на смену отдельным, независимым суперкомпьютерам должны прийти группы высокопроизводительных серверов, объединяемых в кластер.
Удобство построения кластерных ВС заключается в том, что можно гибко регулировать необходимую производительность системы, подключая к кластеру с помощью специальных аппаратных и программных интерфейсов обычные серийные серверы до тех пор, пока не будет получен суперкомпьютер требуемой мощности. Кластеризация позволяет манипулировать группой серверов как одной системой, упрощая управление и повышая надежность.
Важной особенностью кластеров является обеспечение доступа любого сервера к любому блоку как оперативной, так и дисковой памяти. Эта проблема решаетсяобъединением систем SMP-архитектуры на базе автономных серверов для организации общего поля оперативной памяти и использованием дисковых систем RAID для памяти внешней (SMP — Shared Memory multiprocessing, технология мульти-процессирования с разделением памяти). Программное обеспечение для кластерных систем уже выпускается. Примером может служить компонент Cluster Server операционной системы MS Windows NT/2000 Enterprise. Этот компонент, более известный как Wolfpack, обеспечивает функции управления кластером и диагностирования сбоев и восстановления.
Стоимости кластерных систем ниже аналогичных суперкомпьютеров.
Кластер (группа серверов) обладает большей надежностью или производительностью, чем один сервер.
Принцип работы
Объединение серверов в один ресурс происходит на уровне программных протоколов.
В отличие от аппаратного кластера, кластеры, организуемые программно:
- требуют наличия специального программного модуля (Cluster Manager), основной функцией которого является поддержание взаимодействия между всеми серверами — членами кластера:
- синхронизации данных между всеми серверами — членами кластера;
- распределение нагрузки (клиентских запросов) между серверами — членами кластера;
- требуют от клиентского программного обеспечения умения распознавать сервер, представляющий собой кластер серверов, и соответствующим образом обрабатывать команды от Cluster Manager;
- если клиентская программа не умеет распознавать кластер, она будет работать только с тем сервером, к которому обратилась изначально, а при попытке Cluster Manager перераспределить запрос на другие серверы, клиентская программа может вообще лишится доступа к этому серверу.
Применение
В большинстве случаев, кластеры серверов функционируют на раздельных компьютерах. Это позволяет повышать производительность за счёт распределения нагрузки на аппаратные ресурсы и обеспечивает отказоустойчивость на аппаратном уровне.
Однако, принцип организации кластера серверов (на уровне программного протокола) позволяет исполнять по нескольку программных серверов на одном аппаратном. Такое использование может быть востребовано:
- при разработке и тестировании кластерных решений;
- при необходимости обеспечить доступность кластера только с учётом частых изменений конфигурации серверов — членов кластера, требующих их перезагрузки (перезагрузка производится поочерёдно) в условиях ограниченных по аппаратных ресурсов.
Кластер (группа компьютеров) — это разновидность параллельной или распределенной системы, которая:
- состоит из нескольких связанных между собой компьютеров;
- используется как единый, унифицированный компьютерный ресурс.
Т.е. это несколько объединенных компьютеров, управляемых и используемых как единое целое. Они называются узлами и могут быть одно- или мультипроцессорными. В классической схеме при работе с приложениями все узлы разделяют внешнюю память на массиве жестких дисков, используя внутренние дисковые накопители для специальных функций (например, системных).
Обычно различают следующие основные виды кластеров:
отказоустойчивые кластеры (High-availability clusters, HA)
кластеры с балансировкой нагрузки (Load balancing clusters)
высокопроизводительные кластеры (High-performance clusters, HPC)
grid-системы
Классификация кластеров
