Кластеры высокой доступности (High-Availability clusters)

В кластере высокой готовности, обеспечивающем надёжность выполнения предоставляемых сервисов, важным элементом является наличие синхронных копий рабочих данных на всех серверах кластера. Это позволит в случае выхода из строя основного сервера продолжить работу прерванных сервисов на резервном сервере с того момента, на котором они были прерваны, то есть продолжить работу с максимально актуальными данными. Для достижения синхронности данных, существует два наиболее известных подхода:

  • зеркалирование;
  • разделяемое хранилище данных

В технологиях on-line зеркалирования данных в реальном времени, разработанных и предложенных в своё время компанией IBM (IBM High-Availability Linux Project), используется пара синхронизируемых по сети блочных устройств. Фактически это является сетевой реализацией RAID-1. С его помощью оба компьютера в кластере имеют идентичные файловые системы, содержащие данные кластеризуемых сервисов.
К достоинствам этого подхода, разработанного IBM, можно отнести возможность построения недорогого хранилища данных без уязвимых мест, и не требующего дорогих специализированных аппаратных компонентов. Однако в случае использования технологии зеркалирования требования к хранилищу увеличены в два раза, так как требуется хранить по одной копии данных на каждом сервере.

Для многих серьёзных приложений эти неудобства критичны. В таких случаях применяются разделяемые хранилища данных. Это могут быть дисковые массивы RAID с несколькими подключениями, двойные контроллеры RAID (например, IBM ServeRAID), разделяемые диски с оптоволоконным интерфейсом fiber-channel, высокоуровневые хранилища данных класса IBM Enterprise StorageServer, или другие
EMC-решения высокого уровня. Эти системы сравнительно дороги (начиная от пяти тысяч долларов до нескольких миллионов долларов).
Однако они не страдают снижением производительности и необходимостью ресинхронизации.

Но лишь в самых дорогих решениях нет внутренних уязвимых мест.