Лекция 11: Расширение возможностей группы ресурсов
Зависимости групп ресурсов
Появившееся в HACMP 5.2 понятие зависимости типа "родительский объект/дочерний объект" (parent/child dependency) для групп ресурсов дает администраторам больше контроля над многоуровневыми приложениями (multi-tiered applications), когда одно приложение зависит от успешного запуска другого.
Такие зависимости могут быть полезны в бизнес-конфигурациях, использующих многоуровневые приложения. Например, в среде, в которой база данных должна быть подключена до сервера приложения, в случае отказа базы данных и ее перемещения на другой узел группа ресурсов, содержащая сервер приложения, также должна быть отключена и перемещена на любой из доступных узлов кластера. При неуспешном перемещении родительской группы ресурсов обе группы ресурсов (родительская и дочерняя) переходят в состояние ERROR и остаются отключенными.
Зависимость расположения, добавленная в HACMP 5.3, дает контроль над типом политики распространения группы ресурсов при ее получении и освобождении. Ниже описываются новые понятия, связанные с зависимостями.
- Родительская группа ресурсов. Во время получения группы ресурсов сначала выполняется получение родительской группы ресурсов.
- Дочерняя группа ресурсов. Дочерняя группа ресурсов зависит от родительской и не подключается, если родительская группа ресурсов недоступна. В случае перемещения при сбое или отключения родительской группы ресурсов дочерняя группа ресурсов также отключается и перемещается за родительской группой ресурсов.
- Зависимость дочернего объекта. Зависимость дочернего объекта (child dependency) позволяет связывать группы ресурсов в иерархическую структуру до трех уровней в глубину. Получение и освобождение набора групп ресурсов, составляющих зависимость типа "родительский объект/дочерний объект", всегда происходит совместно. Кроме того, можно также настроить зависимость расположения для управления совместным размещением групп ресурсов.
- Зависимость расположения. Эта опция, впервые появившаяся в HACMP 5.3, представляет собой расширение для управления группами ресурсов, позволяющее задавать политику, определяющую способ распространения групп ресурсов по узлам во время событий получения и перемещения при сбое. Можно установить совместное размещение набора групп ресурсов на одном узле или же их распределение по узлам кластера.
Зависимость дочернего объекта для группы ресурсов
Реализация зависимости дочернего объекта для группы ресурсов повышает гибкость конфигурирования приложений, зависящих друг от друга. Новым сотрудникам, осуществляющим управление кластером или пытающимся понять конфигурацию кластера, всегда следует сообщать об этих зависимостях, так как использование этой функции изменяет режим работы стандартных политик HACMP.
Можно вывести информацию об установленных зависимостях с использованием команды clrgdependency.
Планирование зависимостей дочерних объектов для групп ресурсов
При подготовке к использованию зависимостей групп ресурсов следует учитывать множество различных аспектов конфигурирования.
- Запланируйте, какие группы ресурсов будут содержать те или иные приложения. Убедитесь в том, что приложения, требующие последовательного запуска, расположены в различных группах ресурсов. После разделения приложений можно выполнить создание зависимостей между группами ресурсов.
- Помните о следующих ограничениях:
- зависимости могут иметь не больше трех уровней в глубину;
- нельзя задавать циклические зависимости между группами ресурсов.
- Для всех приложений, которые планируется включить в зависимые группы ресурсов, требуется сконфигурировать серверы приложений и мониторы приложений. В целом мы рекомендуем выполнить конфигурирование монитора, проверяющего работу приложения в дочерней группе ресурсов, а также монитора, проверяющего работу приложения в родительской группе ресурсов. В родительской группе ресурсов также рекомендуется сконфигурировать монитор запуска приложения, чтобы убедиться в успешном выполнении запуска. Это обеспечивает подключение дочерней группы ресурсов после получения родительской группы ресурсов.
- Чтобы свести к минимуму потерю данных в процессе остановки и перезапуска приложений, следует настроить скрипты сервера приложений таким образом, чтобы информация о незавершенных (uncommitted) операциях на время сохранялась на общий диск в процессе остановки приложения и затем заново считывалась в приложение в процессе перезапуска приложения.
Конфигурирование зависимости дочернего объекта для группы ресурсов
Помните о том, что конфигурируемые зависимости:
- определяются явным образом через интерфейс SMIT;
- устанавливаются в масштабе кластера, а не только на локальном узле;
- обязательно учитываются в кластере.
Ниже перечислены действия по конфигурированию зависимости дочернего объекта для группы ресурсов.
- Введите smit hacmp.
- В SMIT выберите Extended Configuration (Расширенное конфигурирование) > HACMP Extended Resource Configuration (Расширенное конфигурирование ресурсов HACMP) > Configure Resource Group Run-Time Policies (Конфигурирование политик времени выполнения для группы ресурсов) > Configure Dependencies between Resource Groups (Конфигурирование зависимостей между группами ресурсов) > Configure Parent/Child Dependency (Конфигурирование зависимости типа "родительский объект/дочерний объект") > Add Parent/Child Dependency between Resource Groups (Добавить зависимость типа "родительский объект/дочерний объект" между группами ресурсов) и нажмите Enter.
- Заполните следующие поля:
- Parent Resource Group (Родительская группа ресурсов). Выберите родительскую группу ресурсов из списка. Во время получения группы ресурсов HACMP получает родительскую группу ресурсов до получения дочерней группы ресурсов.
- Child Resource Group (Дочерняя группа ресурсов). Выберите дочернюю группу ресурсов из списка и нажмите Enter. Во время освобождения HACMP отключает дочернюю группу ресурсов перед родительской группой ресурсов. HACMP не позволяет задать циклическую зависимость.
- Используйте опцию SMIT Verify and Synchronize HACMP Configuration (Верификация и синхронизация конфигурации HACMP), чтобы убедиться в возможности реализации требуемой конфигурации при заданных зависимостях, а также для распространения изменений на другие узлы в кластере.
Зависимость расположения для группы ресурсов
В HACMP 5.3 были реализованы зависимости расположения для групп ресурсов. Их назначение состоит в том, чтобы контролировать расположение подключения зависимых групп ресурсов. Возможные варианты включают размещение всех зависимых ресурсов на одном узле и их размещение на разных узлах. При использовании сайтов можно применить политику совместного размещения групп ресурсов на одном сайте.
Ниже представлены три политики зависимости расположения.
- Online On Same Node (Подключение на одном узле).
- Online On Same Site (Подключение на одном сайте).
- Online On Different Nodes (Подключение на разных узлах).
Возможно совместное использование зависимости дочернего объекта для группы ресурсов и зависимости расположения. При этом можно указать, чтобы набор групп ресурсов всегда подключался на одном узле или чтобы набор групп ресурсов всегда подключался на разных узлах.
Планирование зависимости подключения на одном узле
Для эффективной реализации этой политики нужно помнить следующее:
- Все группы ресурсов, составляющие одну зависимость, должны иметь одинаковый список узлов (содержащий одинаковый порядок участвующих узлов).
- Все группы ресурсов без одновременного доступа, входящие в одну зависимость,
должны иметь одинаковые политики запуска/перемещения при сбое/возврата
после восстановления:
- Не допускается использование политики запуска Online Using Node Distribution (Подключение с использованием распределения узлов).
- При использовании динамического приоритета узлов в качестве политики перемещения при сбое все группы ресурсов в зависимости должны использовать одинаковую политику DNP.
- Если для одного ресурса установлен таймер возврата после восстановления, его действие распространяется на весь набор групп ресурсов в зависимости. Для всех групп ресурсов в наборе должен быть установлен таймер возврата после восстановления.
Конфигурирование зависимости подключения на одном узле
Зависимость расположения на одном узле позволяет установить для набора групп ресурсов получение на одном узле. Конфигурирование этой политики осуществляется следующим образом:
- Введите smit hacmp.
- В SMIT выберите Extended Configuration (Расширенное конфигурирование) > HACMP Extended Resource Configuration (Расширенное конфигурирование ресурсов HACMP) > Configure Resource Group Run-Time Policies (Конфигурирование политик времени выполнения для группы ресурсов) > Configure Dependencies between Resource Groups (Конфигурирование зависимостей между группами ресурсов) > Configure Online on the same node Dependency (Конфигурирование зависимости подключения на одном узле) > Add Online on the same node Dependency between Resource Groups (Добавить зависимость подключения на одном узле между группами ресурсов) и выберите группы ресурсов, которые должны входить в этот набор. Не забудьте убедиться в том, чтобы все списки участвующих узлов в каждой группе ресурсов были одинаковыми; в противном случае эта операция выдаст ошибку и произойдет отказ.
- Для того чтобы распространить изменения по всем узлам кластера, необходимо выполнить верификацию и синхронизацию кластера.
Планирование зависимости подключения на разных узлах
Для эффективной реализации этой политики необходимо помнить о следующих правилах и ограничениях:
- Допускается реализация только одной зависимости Online On Different Nodes (Подключение на разных узлах) в кластере.
- Каждый набор групп ресурсов должен использовать отдельный домашний узел для запуска.
- При использовании этой политики можно устанавливать три различных значения приоритета:
- High (Высокий);
- Intermediate (Средний);
- Low (Низкий). Группы ресурсов с более высоким приоритетом имеют предпочтение перед группами ресурсов с более низким приоритетом при запуске, перемещении при сбое и возврате после восстановления:
- Если на узле подключена группа ресурсов с высоким приоритетом, то на этом узле не сможет подключиться ни одна другая группа ресурсов в другом наборе узлов зависимости.
- Если группа ресурсов в этом наборе подключена, но при этом группа ресурсов с более высоким приоритетом выполняет перемещение при сбое или возврат после восстановления на этот узел, то последняя группа ресурсов будет подключена, а группа ресурсов с более низким приоритетом будет отключена или перемещена на другой узел, если это возможно.
- Группы ресурсов с одинаковым приоритетом не могут быть подключены на одном узле. Приоритет групп ресурсов из одного набора, имеющих одинаковый уровень приоритета, определяется по алфавитному порядку групп.
- Группы ресурсов не могут вызвать перенос групп ресурсов с таким же приоритетом в результате перемещения при сбое или возврата после восстановления.
- Если задана зависимость типа "родительский объект/дочерний объект", дочерняя группа ресурсов не может иметь более высокий приоритет, чем родительская группа ресурсов.
Конфигурирование зависимости подключения на разных узлах
Конфигурирование зависимости расположения такого типа осуществляется следующим образом:
- Введите smit hacmp.
- В SMIT выберите Extended Configuration (Расширенное конфигурирование) > HACMP Extended Resource Configuration (Расширенное конфигурирование ресурсов HACMP) > Configure Resource Group Run-Time Policies (Конфигурирование политик времени выполнения для группы ресурсов) > Configure Dependencies between Resource Groups (Конфигурирование зависимостей между группами ресурсов) > Configure Online on the same node Dependency (Конфигурирование зависимости подключения на одном узле) > Add Online on Different Nodes Dependency between Resource Groups (Добавить зависимость подключения на разных узлах между группами ресурсов) и нажмите Enter.
- Заполните следующие поля (и нажмите Enter):
- High Priority Resource Group(s) (Группы ресурсов с высоким приоритетом). Выберите группы ресурсов в наборе, получение и подключение которых должно происходить перед группами ресурсов с более низким приоритетом. При перемещении при сбое и возврате после восстановления эти группы ресурсов обрабатываются одновременно и подключаются на разных целевых узлах до обработки других групп. Если другие целевые узлы недоступны для перемещения при сбое или возврата после восстановления, эти группы (с одинаковым уровнем приоритета) могут оставаться на одном узле. Наивысший относительный приоритет в этом списке имеет группа, указанная первой (слева) в списке узлов.
- Intermediate Priority Resource Group(s) (Группы ресурсов со средним приоритетом). Выберите группы ресурсов в наборе, получение и подключение которых должно происходить после групп ресурсов с высоким приоритетом и перед группами ресурсов с низким приоритетом. При перемещении при сбое и возврате после восстановления эти группы ресурсов обрабатываются одновременно и подключаются на разных целевых узлах до обработки групп ресурсов с низким приоритетом. Если другие целевые узлы недоступны для перемещения при сбое или возврата после восстановления, эти группы (с одинаковым уровнем приоритета) могут оставаться на одном узле. Наивысший относительный приоритет в этом списке имеет группа, указанная первой (слева) в списке узлов.
- Low Priority Resource Group(s) (Группы ресурсов с низким приоритетом). Выберите группы ресурсов в наборе, получение и подключение которых должно происходить после групп ресурсов с более высоким приоритетом. При перемещении при сбое и возврате после восстановления эти группы ресурсов подключаются на разных целевых узлах после обработки групп ресурсов с более высоким приоритетом. Перемещение групп ресурсов с более высоким приоритетом на узел может вызвать перемещение или отключение этих групп.
- Продолжайте конфигурирование политик времени выполнения для других групп ресурсов либо выполните верификацию и синхронизацию кластера.
Планирование зависимости подключения на одном сайте
При настройке двух или больше групп ресурсов на использование зависимости расположения эти группы ресурсов относятся к набору, связанному с определенной зависимостью. На зависимости сайтов распространяются следующие правила и ограничения:
- Все группы ресурсов в наборе зависимости подключения на одном сайте должны иметь одинаковую политику межсайтового управления (inter-site management policy), однако могут иметь различные политики запуска/перемещения при сбое/возврата после восстановления. Если используются таймеры возврата после восстановления, они должны быть одинаковыми для всех групп ресурсов в наборе.
- Все группы ресурсов в наборе зависимости подключения на одном сайте должны быть сконфигурированы таким образом, чтобы узлы, которые могут владеть группами ресурсов, были назначены в одних основных и дополнительных сайтах. Поддерживается политика Online Using Node Distribution (Подключение с использованием распределения узлов).
- Поддерживается использование групп ресурсов как с одновременным доступом, так и без одновременного доступа. В кластере можно устанавливать несколько зависимостей подключения на одном сайте.
- Все группы ресурсов в наборе зависимости подключения на одном сайте, являющиеся активными (в состоянии ONLINE), должны обязательно быть подключены на одном сайте, даже если некоторые группы ресурсов на том же сайте находятся в состоянии OFFLINE или ERROR.
- При добавлении группы ресурсов из набора зависимости подключения на одном узле в набор зависимости подключения на одном сайте необходимо добавить все остальные группы ресурсов из набора зависимости подключения на одном узле в набор зависимости подключения на одном сайте.
Конфигурирование зависимости подключения на одном сайте
Для того чтобы настроить группы ресурсы на использование зависимости подключения на одном сайте, необходимо выполнить следующие действия:
- Введите smit hacmp.
- В SMIT выберите Extended Configuration (Расширенное конфигурирование) > HACMP Extended Resource Configuration (Расширенное конфигурирование ресурсов HACMP) > Configure Resource Group Run-Time Policies (Конфигурирование политик времени выполнения для группы ресурсов) > Configure Dependencies between Resource Groups (Конфигурирование зависимостей между группами ресурсов) > Configure Online on the same node Dependency (Конфигурирование зависимости подключения на одном узле) > Add Online on the same Site dependency between Resource Groups (Добавить зависимость подключения на одном сайте между группами ресурсов) и нажмите Enter.
- Выберите из списка группы ресурсов, которые следует включить в этот набор. При получении эти группы ресурсов будут подключены на одном сайте в соответствии с политикой запуска сайта и узла, заданной в группе ресурсов. При перемещении при сбое или возврате после восстановления группы ресурсов обрабатываются одновременно и подключаются на одном сайте.
- Выполните верификацию и синхронизацию кластера.