Введение

Решение для кластеризации высокой доступности на основе свободного программного обеспечения

Проект Linux HA (High Availability Linux) предоставляет решение для обеспечения высокой доступности (кластеризации) для Linux, FreeBSD, OpenBSD, Solaris и Mac OS X, повышающее надёжность, доступность и ремонтопригодность (RAS). Основным программным продуктом проекта является Heartbeat – переносимая программа управления кластерами с лицензией GPL, предназначенная для организации кластеров высокой доступности. Его ключевые особенности:

отсутствие фиксированного максимального количества узлов – Heartbeat можно использовать для создания как крупных, так и очень простых кластеров;
мониторинг ресурсов: ресурсы могут автоматически перезапускаться или перемещаться на другой узел в случае сбоя;
механизм исключения неисправных узлов из кластера (fencing);
сложное управление ресурсами на основе политик, взаимозависимостей и ограничений ресурсов;
возможность применения различных политик в зависимости от времени благодаря временным правилам;
включены несколько скриптов ресурсов (для Apache, IBM Db2, Oracle, PostgreSQL и др.);
графический интерфейс для настройки, управления и мониторинга ресурсов и узлов.

История

Проект возник из почтового списка, запущенного в ноябре 1997 года. Впоследствии Харальд Милц написал необычное руководство Linux HA HOWTO. В отличие от большинства HOWTO, оно не описывало, как настраивать или использовать существующее программное обеспечение, а представляло собой сборник техник обеспечения высокой доступности, которые можно было бы использовать при разработке программного обеспечения HA для Linux. Алан Робертсон, вдохновленный этим описанием, подумал, что мог бы написать часть программного обеспечения для проекта, чтобы послужить своего рода начальным ядром для ускорения его развития. Ему удалось запустить это первоначальное программное обеспечение 18 марта 1998 года. Он создал первый веб-сайт проекта 19 октября 1998 года, а первая версия программного обеспечения была выпущена 15 ноября 1998 года. Первым производственным заказчиком программного обеспечения стал Руди Пауль из ISO NE. Веб-сайт ISO NE был запущен во второй половине 1999 года. На тот момент проект был ограничен двумя узлами и очень простой логикой переключения, а также отсутствовал мониторинг ресурсов. Этот релиз стал еще одной важной вехой, поскольку это была первая версия, в которой значительный вклад (по объему кода) был внесен широким сообществом Linux HA. Эта серия релизов позволила проекту достичь уровня функционального паритета или даже превзойти коммерческое программное обеспечение для обеспечения высокой доступности. После версии 2.1.4 компонент менеджера ресурсов кластера (отвечающий за запуск и остановку ресурсов, а также за мониторинг ресурсов и сбоев узлов) был выделен в отдельный проект под названием Pacemaker, а агенты ресурсов и другая вспомогательная инфраструктура были перемещены в отдельные пакеты. Таким образом, начиная с версии 3, название Heartbeat следует использовать только для обозначения уровня обмена сообщениями в кластере.