Product SiteDocumentation Site

Поведение ресурсов высокой доступности

В данном приложении описано общее поведение ресурсов высокой доступности. Основное назначение приложения - предоставить информацию, которая может оказаться полезной при настройке сервисов высокой доступности. Настраивать параметры можно при помощи Luci, system-config-cluster или непосредственного редактирования файла etc/cluster/cluster.conf. Описание параметров ресурсов высокой доступности приведено в приложении C, Параметры ресурса высокой доступности. Понять детали функционирования агентов ресурсов можно, просмотрев сценарии в каталоге /usr/share/cluster любого узла кластера.

Замечание

Для того, чтобы усвоить приведенную в данном приложении информацию в полном объеме, потребуется понимание деталей функционирования агентов ресурсов и конфигурационного файла /etc/cluster/cluster.conf.
Сервис высокой доступности представляет собой группу кластерных ресурсов, настроенных в качестве единой сущности, которая, в свою очередь, предоставляет клиентам специализированные сервисы. В конфигурационном файле /etc/cluster/cluster.conf сервис высокой доступности представлен в виде дерева ресурсов. В конфигурационном файле кластера каждое дерево ресурса - XML-представление, описывающее каждый ресурс, его атрибуты и отношения с другими ресурсами в дереве (родительские, дочерние, отношения между ресурсами одного уровня).

Замечание

Поскольку сервис высокой доступности состоит из ресурсов, организованных в виде иерархического дерева, сервис, также, часто называют деревом ресурсов или группой ресурсов. Обе приведенные фразы являются синонимами сервиса высокой доступности.
Вершиной каждого дерева ресурсов является специальный тип ресурса — сервис (Service). Прочие типы ресурсов, составляющих сервис, определяют его характеристики. Процесс настройки сервиса высокой доступности состоит из создания ресурса сервиса, создания подчиненных ресурсов кластера и организации их в объект, соответствующий иерархическим огрничениям сервиса.
Данное приложение состоит из следующих разделов:

Замечание

Фрагменты файла конфигурации /etc/cluster/cluster.conf в следующем разделе приведены только для наглядной демонстрации.

Отношения между ресурсами - родительские, дочерние, а также отношения между ресурсами одного уровня

Кластерный сервис представляет собой интегрированный объект, работающий под управлением rgmanager. Все ресурсы сервиса работают на одном и том же узле. С позиции rgmanager кластерный сервис является единым объектом, который можно запустить, остановить или переместить. Тем не менее, иерархия ресурсов в сервисе определяет порядок запуска или остановки каждого ресурса. Определены следующие уровни иерархии - родительский, дочерний и родственный (определяет отношения между объектами одного уровня).
В примере D.1, “Иерархия ресурсов сервиса foo”, показано простое дерево ресурсов сервиса foo. В этом примере отношения между ресурсами следующие:
  • Ресурсы fs:myfs (<fs name="myfs" ...>) и ip:10.1.1.2 (<ip address="10.1.1.2 .../>) являются родственными.
  • Ресурс fs:myfs (<fs name="myfs" ...>) является родительским для script:script_child (<script name="script_child"/>).
  • Ресурс script:script_child (<script name="script_child"/>) является дочерним для fs:myfs (<fs name="myfs" ...>).
<service name="foo" ...>
    <fs name="myfs" ...>
        <script name="script_child"/>
    </fs>
    <ip address="10.1.1.2" .../>
</service>
Пример D.1. Иерархия ресурсов сервиса foo

Для родительских/дочерних отношений в дереве ресурсов применяются следующие правила:
  • Родительские ресурсы запускаются перед дочерними.
  • Все дочерние ресурсы должны буть корректно остановлены перед остановкой родительского ресурса.
  • При вынесении решения о состоянии ресурса учитывается состояние всех его дочерних ресурсов.