Назначение хозяина относительных идентификаторов

1. Общая информация

Один из контроллеров домена Avanpost DS (по умолчанию первый установленный) имеет роль хозяина относительных идентификаторов (RID master). Этот сервер выдает массивы уникальных идентификаторов контроллерам домена, для создания объектов с уникальными атрибутами "uidnumber", "gidnumber" и "sid". Все контроллеры домена получают у RID master пул идентификаторов при добавлении в домен и при исчерпании пула более чем на 50%. В файле конфигурации Avanpost DS можно изменить размер пула и пороговое значение для запроса выдачи нового пула.

Если КД с ролью RID master не доступен, то добавить новый контроллер в репликацию не получится, возникнет ошибка вида:

Nov 25 15:31:23 ds04.avanpost.local ads[88341]: 2024/11/25 15:31:23 Error initing new server: NewUidGidNumberProvider err: rpc error: code = Unknown desc = rid master is not configured

2. Назначение роли RID master другому КД

Если КД с ролью RID master стал недоступен, либо его данные безвозвратно утеряны, то необходимо одному из доступных КД назначить эту роль.

Для этого требуется подключиться на доступный КД, например "ds02.avanpost.local" по SSH и выполнить команду по шаблону:

Шаблон команды
/opt/avanpost/ads/cli/cli change-rid-master --hostname [FQDN] --lastrid [LAST RID] --endpoint [IP]:48910

Заменить [FQDN] на полное доменное имя (FQDN) контроллера домена, которому передаем роль RID master.

Заменить [IP] на IP адрес контроллера домена, которому передаем роль RID master.

Заменить [LAST RID] на последний выданный идентификатор объекта или пула. Если последний выданный ID неизвестен, можно указать большое число (например, 1000000), чтобы избежать конфликтов.

ВАЖНО:

Посмотреть пул идентификаторов можно через утилиту Apache Directory Studio. (По Apache Directory Studio см. инструкцию "5.3. Настройка Apache Directory Studio для работы с Avanpost DS")
Данную процедуру необходимо провести на всех КД. Значение параметра "--lastrid" на новом КД с ролью RID master не должно пересекаться с пулом каждого КД, Лучшим решением будет выставить значение "--lastrid" по верхней границе пула всех КД.

DN: uid=DirectoryService,ou=state,dc=system

Пример команды
/opt/avanpost/ads/cli/cli change-rid-master --hostname ds02.avanpost.local --lastrid 1000000 --endpoint 192.168.10.8:48910

3. Проверка, какой из контроллеров домена имеет роль RID master

Для проверки назначения роли RID master новому КД необходимо выполнить команду по шаблону и по запросу ввести пароль от УЗ, указанной в команде:

Шаблон команды
ldapsearch  -H ldap://[IP]:389 -D cn=[ЛОГИН],ou=users,dc=[Домен2ур],dc=[Домен1ур] -W -b  "uid=ridmaster,dc=system" "(uid=*)"

Заменить [IP] на IP адрес контроллера домена, которому передали роль RID master.

Заменить [Домен1ур] на свой домен первого уровня, а [Домен2ур] — на свой домен второго уровня.

Заменить [ЛОГИН] на логин администратора Avanpost DS.

Пример команды и вывода
$ ldapsearch  -H ldap://192.168.10.8:389 -D cn=Administrator,ou=users,dc=avanpost,dc=local -W -b  "uid=ridmaster,dc=system" "(uid=*)"
Enter LDAP Password: 
...
# ridmaster, system
dn: uid=ridmaster,dc=system
host: 192.168.10.8
uid: 01936e39-1c63-7e0d-8833-fd3529e878c5
...


Обсуждение