Настройка обработки связанных атрибутов
Начиная с версии 1.10.0 в Эллес реализована процедура обработки связанных атрибутов (сервис lacheck).
Общие сведения
Объекты в службе каталогов могут быть связаны между собой. Например, группы связаны с объектами, являющимися их участниками. Такие связи реализуются в виде пары атрибутов (связанные атрибуты, linked attributes), содержащих перекрестные ссылки на связанные объекты. Первый атрибут (прямая ссылка, forward link) ссылается на другой объект, создавая связь, а второй (обратная ссылка, back link) — автоматически поддерживает связь на основе значения первого атрибута. Например, атрибут member группы ссылается на включенные в нее объекты, а атрибут memberOf объекта указывает, в каких группах он состоит.
При изменении связи между объектами обновляется значение прямой ссылки; при этом значение обратной ссылки пересчитывается службой каталогов автоматически.
Прямые и обратные ссылки возможны как на объекты внутри одного домена, так и между объектами разных доменов леса.
Для обеспечения корректного заполнения связанных атрибутов при вводе контроллера Эллес в домен и далее с определенной периодичностью запускается процедура, которая обрабатывает все объекты со ссылками на другие объекты, обновляя связанные атрибуты в соответствии с изменениями в статусах и значениях DN объектов.
Выделение аппаратных ресурсов
При планировании развертывания Эллес рекомендуется выделить ресурсы для процесса lacheck — одно ядро CPU и определенный объем оперативной памяти.
Планирование запусков процедуры обработки связанных атрибутов
Процедура обработки связанных линков запускается:
-
безусловно в конце операции ввода контроллера в домен (
join); -
периодически через временной интервал в минутах, заданный в конфигурационном параметре
lacheck:periodic_interval:-
первый запуск планируется при старте сервиса на время через
lacheck:periodic_intervalминут от текущего времени; -
каждый последующий запуск планируется после окончания работы текущего запуска на время через
lacheck:periodic_intervalот текущего времени.
-
Такой подход к планированию запусков исключает риск возникновения конфликта из-за наличия двух параллельно работающих процессов lacheck.
Настройка периодичности запусков процедуры обработки связанных атрибутов
По умолчанию интервал запуска процедуры составляет 20 минут. В текущей реализации это минимальное возможное значение.
Изменять значение по умолчанию не рекомендуется.
Оно обеспечивает восстановление консистентности данных в соответствии со спецификациями Microsoft для Active Directory. Например, согласно [MS-ADTS]: Active Directory Technical Specification, 3.1.1.6.2 Reference Update максимальная допустимая задержка актуализации кросс-доменной ссылки составляет 2880 минут (двое суток). При этом, как показывают результаты тестирования, время работы сервиса lacheck, например, при обслуживании 150 тысяч пользователей, 35 тысяч групп с 1,17 млн вхождений пользователей в группы, 10 группами на пользователя в среднем и 32 членами в группе в среднем составляет 8 минут. Таким образом, интервал между окончанием работы сервиса и следующим его запуском может быть 2872 минуты, что заведомо больше рекомендованного значения по умолчанию.
Если по какой-либо причине возникает необходимость в изменении рекомендованного интервала запуска, укажите требуемое значение в минутах с помощью параметра lacheck:periodic_interval в разделе [global] файла /app/inno-samba/etc/smb.conf.
Например:
[global]
...
lacheck:periodic_interval = 30
...
Если указанное значение меньше 20 минут, оно игнорируется — вместо него используется значение по умолчанию.
Принудительный запуск процедуры обработки связанных атрибутов
В некоторых случаях (например, для целей тестирования) может возникнуть необходимость в запуске процедуры обработки связанных атрибутов до истечения установленного интервала.
Чтобы запустить процедуру принудительно, достаточно создать специальный атрибут runLACheck в корне дерева данных каталога (объект rootDSE).
Для этого выполните следующие действия от имени учетной записи с правами на внесение изменений в БД LDAP домена:
-
Сформируйте ldif-файл для создания атрибута
runLACheckс любым значением в корне дерева.
Например:cat /tmp/run_lacheck.ldif dn: changetype: modify add: runLACheck runLACheck: true
-
Внесите изменения, например, с помощью утилиты
ldbmodify(полный путь к утилите после установки пакета inno-samba — /app/inno-samba/bin/ldbmodify):ldbmodify -H ldap://dc1 -U Administrator /tmp/run_lacheck.ldif Password for [ELLES\Administrator]: Modified 1 records successfully
После принудительного запуска расписание периодического запуска корректируется соответствующим образом: следующий запуск произойдет через заданный в конфигурации интервал относительно момента принудительного запуска.
Записи о принудительном запуске процедуры фиксируются в логах при установке уровня логирования 5 или выше для класса отладки lacheck.
|
Влияние сервиса lacheck на работу команды samba-tool dbcheck
Полную проверку базы данных Эллес для исправления ошибок с помощью команды samba-tool dbcheck рекомендуется выполнять на остановленном контроллере домена. Таким образом, влияние сервиса lacheck в этом случае на работу команды исключено.
При регулярных проверках базы данных Эллес с использованием фильтров без опции --fix влияние работы сервиса lacheck аналогично изменению объектов каталога любым другим процессом. Оно может быть исключено повторным запуском проверки (см. подробнее в разделе
«Проверка базы данных каталога»).