Чтобы убедиться в правильности настроек кластерного программного обеспечения, воспользуйтесь следующими инструментами, расположенными в каталоге /usr/sbin:
Проверьте общие разделы и убедитесь в их доступности.
Выполните команду /usr/sbin/shutil с параметром -v для проверки доступности общих разделов. Дополнительную информацию вы найдёте в разделе 2.11.1 Проверка общих разделов.
Проверьте работу переключателей питания.
Если в вашей конфигурации кластера используются переключатели питания, запустите на каждом узле clufence, чтобы убедиться, что он может выполнить отключение/включение другого узла. Не запускайте эту команду в работающем кластере. Дополнительную информацию вы найдёте в разделе 2.11.2 Проверка переключателей питания.
Убедитесь в том, что на всех узлах используется программное обеспечение одной версии.
Выполните команды rpm -q clumanager и rpm -q redhat-config-cluster на каждом узле и просмотрите версии установленных RPM-пакетов программного обеспечения кластера.
В следующих разделах эти инструменты рассматриваются более подробно.
Общие разделы на всех узлах должны относиться к одному физическому устройству. Запустите утилиту /usr/sbin/shutil с параметром -v для проверки определения общих разделов и их доступности.
Если команда выполнилась успешно, запустите следующую команду /usr/sbin/shutil -p /cluster/header на всех узлах и просмотрите структуру заголовков в общих разделах. Если выводимые данные отличаются на разных узлах, это означает, что общие разделы на разных узлах указывают на разные устройства. Убедитесь в том, что неформатированные устройства определены и правильно указаны в файле /etc/sysconfig/rawdevices. Обратитесь к разделу 1.4.4.3 Настройка общих разделов кластера за дополнительной информацией.
В следующем примере показано, что на обоих узлах кластера clu1.example.com и clu2.example.com общие разделы ссылаются на одно физическое устройство, исходя из результата команды /usr/sbin/shutil -p /cluster/header:
/cluster/header is 140 bytes long SharedStateHeader { ss_magic = 0x39119fcd ss_timestamp = 0x000000003ecbc215 (14:14:45 May 21 2003) ss_updateHost = clu1.example.com |
Все поля, выводимые командой /usr/sbin/shutil -p /cluster/header, должны совпадать при запуске этой команды на всех узлах кластера. Если результаты команды на всех узлах не совпадают, выполните следующее:
Просмотрите файл /etc/sysconfig/rawdevices на каждом узле и убедитесь в том, что указаны правильные названия неформатированных символьных и блочных устройств для основного и резервного общих разделов. Если это не так, отредактируйте файл и исправьте все ошибки. Затем еще раз запустите Настройку кластера (Cluster Configuration Tool). За дополнительной информацией обратитесь к разделу 2.5 Редактирование файла rawdevices.
Убедитесь в том, что вы создали неформатированные устройства для общих разделов на каждом узле. Обратитесь к разделу 1.4.4.3 Настройка общих разделов кластера за дополнительной информацией.
Определить конфигурацию шины на каждом узле можно, просмотрев сообщения о запуске системы с помощью dmesg |less в момент, когда система опрашивает подсистему SCSI. Убедитесь в том, что все узлы обнаруживают одни и те же устройства общего дискового хранилища и назначают им одинаковые имена.
Убедитесь в том, что узел не пытается подключить файловую систему на общем разделе. Для этого убедитесь в том, что реальное устройство (например, /dev/sdb1) не указано в файле /etc/fstab.
Выполнив эти действия, перезапустите утилиту /usr/sbin/shutil с параметром -p.
Если в вашей конфигурации кластера используются переключатели питания с сетевым или последовательным интерфейсом, проверьте их после установки программного обеспечения кластера, выполнив команду clufence. Выполнив эту команду на каждом узле, убедитесь в том, что он может удалённо отключить/включить другой узел. Если проверка прошла успешно, можно переходить к запуску кластера.
Команда clufence может проверить работу переключателя питания, только при неработающем кластере. Это объясняется тем, что в случае с переключателями, подключенными через последовательный порт, только одна программа в один момент времени может обращаться к этому порту. Программа clufence используется для проверки состояния программного обеспечения кластера. Если кластерное программное обеспечение запущено, программа прерывается и сообщает о необходимости остановить кластер.
Ниже приведены параметры командной строки утилиты clufence:
-d — включить отладку
-f — Заблокировать (выключить) узел
-u — Разблокировать (включить) узел
-r — Перегрузить (отключить/включить) узел
-s — Проверить состояние всех переключателей, управляемых узлом
Проверяя работу переключателей питания, сначала необходимо убедиться, что каждый узел кластера может взаимодействовать с подключенным к нему переключателем питания. Следующий пример выполнения команды clufence демонстрирует, что узел кластера может связаться с переключателем питания:
[27734] info: STONITH: rps10 at /dev/ttyS0, port 0 controls clumember1.example.com [27734] info: STONITH: rps10 at /dev/ttyS0, port 1 controls clumember2.example.com |
В случае ошибки при выполнении clufence, проверьте следующее:
Для переключателей питания, подключаемых через последовательный порт
Проверьте, что в файле конфигурации кластера правильно указан специальный файл устройства, к которому подключен переключатель питания с последовательным интерфейсом (например, /dev/ttyS0); в программе Настройка кластера (Cluster Configuration Tool) вызовите диалоговое окно Контроллер питания (Power Controller) и проверьте значение последовательного порта. Если необходимо, воспользуйтесь пакетом эмуляции терминала, например minicom для проверки, может ли узел кластера обращаться к последовательному порту.
Убедитесь в том, что посторонняя программа (например, getty) не использует порт, предназначенный для подключения переключателя питания. Для этого вы можете воспользоваться командой lsof.
Проверьте правильность подключения кабелей к удалённому переключателю питания. Проверьте, соответствует ли используемый кабель типу переключателя (например, переключатель RPS-10 подключается через нуль-модемный кабель), а также надежность всех соединений.
Проверьте правильность установки физических настроечных (dip) переключателей вашего блока переключения питания.
Для переключателей питания с сетевым интерфейсом:
Убедитесь в наличии сетевого соединения с сетевыми переключателями питания. В большинстве переключателей есть лампочка, показывающая состояние соединения.
Попытайтесь проверить соединение при помощи команды ping; если соединение не устанавливается, возможно, вы неправильно настроили его сетевые параметры.
Убедитесь в том, что в файле конфигурации указаны правильное имя и пароль (в зависимости от переключателя) (для этого запустите Настройку кластера (Cluster Configuration Tool) и просмотрите свойства, указанные в диалоговом окне Контроллер питания (Power Controller)). Также полезной может оказаться проверка соединения с сетевым переключателем при помощи программы telnet с параметрами, указанными в конфигурации кластера.
Проверив соединение с переключателем, попытайтесь отключить/включить другой узел кластера. Предварительно мы рекомендуем вам проверить, что другой узел кластера в этот момент не выполняет какие-либо важные действия (например, его кластерные службы не обслуживают активных клиентов). Команда clufence -f clumember2.example.com выводит после успешного отключения и укрытия узла (то есть, перевода его в состояние, когда он не получит питания от переключателя питания, пока не будет открыт) следующие сообщения:
[7397] info: STONITH: rps10 at /dev/ttyS0, port 0 controls clumember1.example.com [7397] info: STONITH: rps10 at /dev/ttyS0, port 1 controls clumember2.example.com [7397] notice: STONITH: clumember2.example.com has been fenced! |
Убедитесь в том, что на всех узлах кластера работает одна версия Red Hat Cluster Manager.
Просмотреть версию программ Настройка кластера (Cluster Configuration Tool) и Состояние кластера (Cluster Status Tool) можно следующими способами:
Выбрать Справка (Help) => О программе (About). В диалоге О программе (About) показывается номер версии.
Выполнить следующие команды:
rpm -q redhat-config-cluster rpm -q clumanager |
Версию пакета clumanager также можно определить, выполнив команду clustat -v.