Кластеры высокой готовности, или отказоустойчивые кластеры, рассчитаны на обеспечение бесперебойной работы.

Недоступные базы данных или службы Web, прерванные интерактивные заказы, расстроенные клиенты в авиакассах — список последствий отказов критичных для предприятий приложений можно продолжать долго. Даже недолговременный сбой может заметно повлиять на работу предприятия. Готовность информационных технологий на уровне 98% означает, что важные деловые процессы оказываются недоступны более семи дней в году. При этом благодаря интеллектуальным решениям ИТ время отказов критичных систем может быть сведено к минимуму или даже к нулю.

Кластер кластеру рознь. То, что кажется общим местом, может иметь очень значительные технические следствия. Поэтому стоит начать с определения: под понятием «кластер» понимается объединение нескольких серверов в единую систему. Это могут быть системы двух типов: в высокопроизводительном кластере множество задач распределяется между как минимум двумя, а чаще заметно большим числом серверов (узлов). Кластеры высокой готовности, или отказоустойчивые кластеры, рассчитаны на обеспечение бесперебойной работы. Простейшая подобная система состоит из двух серверов: если первый узел (первичная система) выходит из строя, то второй (вторичный, или резервный, сервер) берет на себя выполнение его задач.

Самым рудиментарным и все еще иногда встречающимся вариантом является так называемый «самоходный кластер», когда наготове стоит лишь одна запасная машина, которую администратор в случае отказа рабочей системы должен запустить вручную. Однако эта концепция подразумевает постоянное присутствие хорошо обученного персонала. Кроме того, неизбежным следствием ее применения является относительно длительный период простоя.

В современных отказоустойчивых кластерах, напротив, оба узла постоянно обмениваются между собой сообщениями о статусе (тактовыми импульсами). Если первичная система становится недоступной, то вторичная немедленно и — что важно! — автоматически берет на себя решение ее задач. Таким образом предотвращаются критичные для предприятия простои и заметно снижаются затраты на персонал.

В то время как в случае «самоходного кластера» проблемы, возникающие по ночам или по выходным, замечаются лишь на следующий день, в современных отказоустойчивых системах полной остановки не происходит вовсе. Кроме того, поскольку второй сервер работает, администратор может быть оповещен о неполадках на первом сервере по электронной почте и SMS. Еще одно преимущество заключается в том, что система всегда остается доступной: на время обслуживания и расширения всю работу берет на себя другая машина.

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

ОБЛАСТИ ПРИМЕНЕНИЯ ОТКАЗОУСТОЙЧИВЫХ КЛАСТЕРОВ

Базовая структура отказоустойчивого кластера практически во всех случаях одинакова: два сервера обращаются к общему накопителю (разделяемое хранилище) и при помощи тактовых импульсов обмениваются между собой информацией о статусе. Таким образом, каждая машина всегда «знает», какие запросы обрабатывает в данный момент другая, и при сбое может продолжить процесс. В случае так называемых активно-пассивных кластеров (см. Рисунок 1) один узел активен и обрабатывает запросы. Другой сервер хотя и пассивен, но следит за активным и при отказе включается автоматически. Правда, в таком решении постоянно используется лишь часть аппаратного обеспечения, поскольку другой узел становится активным только при наступлении отказа.

Когда применяются активно-активные кластеры (см. Рисунок 2), напротив, все машины постоянно активны и могут параллельно принимать и обрабатывать запросы. Лишь во время отказа функционирующий сервер берет на себя задачи второго. Преимущество такого подхода заключается в более эффективном использовании имеющихся ресурсов. Если предприятием уже приобретен современный сервер, то его можно включить в отказоустойчивый кластер. Таким образом, нужен всего лишь еще один узел. Однако отказоустойчивые кластеры могут не ограничиваться двумя узлами. В зависимости от реализации они способны к чрезвычайно широкому масштабированию и расширению за счет подключения дополнительных серверов.

Независимо от типа отказоустойчивого кластера необходимо следить за тем, чтобы вся система была отказоустойчивой и не содержала недублируемых точек отказа. Поэтому избыточными должны быть не только серверы, но и питание, сеть, решение хранения. Лишь так можно обеспечить высокую готовность кластера. Дополнительную безопасность предлагает пространственное разнесение узлов. Таким образом, даже в случае пожара или затопления система остается доступной.

ПРИЛОЖЕНИЯ ДЛЯ ИСПОЛЬЗОВАНИЯ НА ОТКАЗОУСТОЙЧИВЫХ КЛАСТЕРАХ

Хотя все приложения для таких операционных систем, как Windows, Linux и производные UNIX, способны работать на серверах, включенных в кластер, не каждое из них может в полной мере использовать возможности этой архитектуры. Такое не оптимизированное для применения в кластере программное обеспечение воспринимает узел кластера как обычный сервер. А оптимизированные для работы в кластере приложения, напротив, задействуют функциональность переключения (failover) и поэтому при отказе обеспечивают высокую степень готовности. Условием для этого является выбор в качестве сетевого протокола ТСР/IP и способность обмениваться информацией о статусе. Кроме того, очень важна возможность свободного определения места хранения данных. Подобной функциональностью обладают чаще всего базы данных, приложения файловых служб и серверов печати, а также программное обеспечение коллективного пользования. Для распространенных приложений, как SAP компания HP, к примеру, в виде ServiceGuard для сервера ProLiant предлагает инструменты для простой интеграции программного обеспечения в кластеры высокой готовности.

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

РЕАЛИЗАЦИЯ И СИСТЕМНОЕ УПРАВЛЕНИЕ

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

ЗАКЛЮЧЕНИЕ

Несмотря на свою простую структуру, отказоустойчивые кластеры обеспечивают высокую надежность и масштабируемость. Кроме того, предприятиям не нужны серверы старшего класса, поскольку они могут реализовывать решения высокой степени готовности на базе недорогих узлов. Благодаря зрелым инструментам управления, предприятия выигрывают и вследствие упрощения администрирования. Поэтому отказоустойчивые системы могут использоваться не только в крупных, но и в небольших компаниях.

Карин Бек — менеджер по стандартным отраслевым серверам в HP. С ней можно связаться по адресу: jos@lanline.awi.de.


? AWi Verlag