5.10. Добавление кластерной службы

Ниже рассматривается порядок настройки кластерной службы.
  1. Добавление службы:
    ccs -h хост --addservice служба [параметры]
    

    Примечание

    Рекомендуется указать информативное имя для облегчения идентификации службы.
    При добавлении службы в конфигурацию кластера потребуется настроить несколько атрибутов:
    • autostart — значение 1 разрешает автоматический запуск службы при запуске кластера, а 0 отключает эту возможность. По умолчанию равен 1.
    • domain — резервный домен (дополнительно).
    • exclusive — запрещает запуск службы, если на узле уже работают другие службы.
    • recovery — определяет политику восстановления работы службы. Возможные варианты включают перенос, перезапуск, отключение или повторный запуск с отключением в случае неудачи. При выборе Restart система попытается перезапустить сбойную службу до ее переноса на другой узел. Relocate подразумевает перезапуск службы на другом узле, Disable отключит группу ресурсов при сбое ее компонентов, а Restart-Disable попытается заново запустить службу, но в случае неудачи она будет отключена.
      При выборе Restart или Restart-Disable дополнительно можно указать максимальное число попыток перезапуска и время ожидания, по истечении которого попытки будут прекращены.
    Ниже приведен пример добавления службы example_apache в файл конфигурации на node-01.example.com с использованием политики relocate и резервного домена example_pri.
    ccs -h node-01.example.com --addservice example_apache domain=example_pri recovery=relocate
    
    Дополнительно ccs позволяет получить полный список доступных в кластере служб и их параметров (см. Раздел 5.11, «Получение списка доступных служб» ).
  2. Добавление ресурсов для службы:
    ccs -h хост --addsubservice служба ресурс [параметры]
    
    Допускается добавление глобальных или специализированных ресурсов. Параметр --addsubservice отвечает за добавление глобальных ресурсов. Так, ниже приведен пример добавления ресурса web_fs в файл конфигурации на узле node-01.example.com.
    ccs -h node01.example.com --addsubservice example_apache fs ref=web_fs
    
    При добавлении специализированного ресурса потребуется определить все параметры. Например, если web_fs предварительно не была объявлена как глобальная служба, для ее добавления в качестве специализированного ресурса необходимо выполнить:
    ccs -h node01.example.com --addsubservice example_apache fs name=web_fs device=/dev/sdd2 mountpoint=/var/www fstype=ext3
    
  3. Параметр --addsubservice также позволяет определить подчиненные службы.
    Этот параметр может содержать целую иерархию служб. При этом службы в списке разделяются двоеточием, а службы одного типа идентифицируются номером в квадратных скобках следом за их именем. Так, ниже приведен пример добавления третьей подчиненной службы nfsclient для nfsclient, которая является подчиненной по отношению к service_a.
    ccs -h node01.example.com --addsubservice service_a nfsclient[1]:nfsclient[2]:nfsclient
    

    Примечание

    Ресурсы Samba не могут быть подчиненными — они должны добавляться напрямую.

Примечание

Чтобы проверить наличие ресурса IP-службы, используемого кластерной службой, на узле кластера можно выполнить /sbin/ip addr show вместо устаревшей команды ifconfig. Ниже приведен пример вывода:
1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP> mtu 1356 qdisc pfifo_fast qlen 1000
    link/ether 00:05:5d:9a:d8:91 brd ff:ff:ff:ff:ff:ff
    inet 10.11.4.31/22 brd 10.11.7.255 scope global eth0
    inet6 fe80::205:5dff:fe9a:d891/64 scope link
    inet 10.11.4.240/22 scope global secondary eth0
       valid_lft forever preferred_lft forever
Удаление службы, включая подчиненные:
ccs -h хост --rmservice служба
Удаление подчиненной службы:
ccs -h хост --rmsubservice служба подчиненная [параметры]
После завершения настройки структуры кластера надо выполнить синхронизацию файла конфигурации на всех узлах (см. Раздел 5.15, «Синхронизация файла конфигурации»).