Настройка блокировки входящей репликации при превышении tombstoneLifetime

«Эллес» предоставляет механизм автоматического обнаружения и блокировки входящей репликации с источниками, с которыми локальный контроллер домена не выполнял репликацию дольше установленного в лесу периода хранения объектов в состоянии tombstone (tombstoneLifetime).

Автоматическое обнаружение входящей репликации при превышении tombstoneLifetime

При каждой попытке входящей репликации «Эллес» проверяет время последней успешной репликации с каждым источником, указанным в записи repsFrom в базе данных. Если разница между текущим временем и временем последней успешной репликации превышает значение атрибута tombstoneLifetime, установленное в лесу, и параметр dreplsrv:allow_replication_with_divergent_dc отключен, репликация немедленно прерывается.

В этом случае в логе фиксируется событие с кодом 2042, содержащее следующую информацию:

  • DNS-имя источника репликации;

  • DN реплицируемого раздела (NC);

  • установленный период tombstoneLifetime в днях;

  • время последней успешной репликации.

См. подробнее об атрибуте tombstoneLifetime в разделе «Управление периодами хранения и очисткой объектов после удаления».

Настройка параметра dreplsrv:allow_replication_with_divergent_dc

Параметр dreplsrv:allow_replication_with_divergent_dc задается в конфигурационном файле smb.conf в секции [global]. Он управляет поведением репликации при превышении срока tombstoneLifetime:

  • dreplsrv:allow_replication_with_divergent_dc = 0 (по умолчанию) — запрещает входящую репликацию с источниками, с которыми репликация не выполнялась дольше tombstoneLifetime; репликация прерывается, фиксируется событие 2042, и запись repsFrom удаляется из базы данных;

  • dreplsrv:allow_replication_with_divergent_dc = 1 — разрешает входящую репликацию при превышении tombstoneLifetime; проверка срока жизни объектов отключается.

Пример настройки в smb.conf:

[global]
    dreplsrv:allow_replication_with_divergent_dc = 1

Изменения вступают в силу после перезапуска службы «Эллес»:

sudo systemctl restart inno-samba

Логирование событий

Событие 2042 регистрируется в логах «Эллес» в рамках класса отладки drs_repl с уровнем логирования 0 и выше.

Пример настройки логирования в smb.conf:

log level = 1 drs_repl:3

Событие сопровождается сообщением:

  • исходный текст:

    EventId 2042: It has been too long since this machine replicated. It has been too long since this machine last replicated with the named source machine <source DSA DNS>, partition <partition DN>. The time between replications with this source has exceeded the tombstone lifetime <tombstone_lifetime_days> days. Replication has been stopped with this source. Time of last successful replication: <last_success_time>.
  • перевод:

    EventId 2042: С момента последней репликации прошло слишком много времени. Последняя успешная репликация с указанным источником <DNS источника>, раздел <DN раздела>, произошла более <tombstone_lifetime_days> дней назад. Время между репликациями с этим источником превысило срок жизни tombstone-объектов. Репликация с этим источником остановлена. Время последней успешной репликации: <last_success_time>.

Обновлено: