Метрики репликации

Сервис metrics_manager предоставляет метрики для мониторинга состояния репликации на контроллере домена Эллес.

Все метрики репликации объединены в едином контейнере CN=Replication,CN=Monitoring.

Иерархия метрик имеет несколько уровней:

  • уровень 1 (CN=Replication,CN=Monitoring) — агрегированные метрики всей репликационной инфраструктуры: количество партиций, соединений, успешных/неудачных операций, статус ISTG;

  • уровень 2 разделен на подуровни:

    • CN=<имя_партиции>,CN=Partitions,CN=Replication,CN=Monitoring — метрики по каждой партиции каталога;

    • CN=<имя партнера>,CN=Replication,CN=Monitoring — ошибки при создании и проверке соединений (аналогично repadmin /failcache);

    • CN=<имя соединения>,CN=Connections,CN=Replication,CN=Monitoring — метрики по соединениям репликации между контроллерами домена;

  • уровень 3 (CN=<имя партнера>,CN=<имя партиции>,CN=Partitions,CN=Replication,CN=Monitoring) — детализированные метрики входящей репликации для каждого партнера и партиции: задержки, USN, очереди, статистика по последним попыткам.

Все метрики доступны через LDAP-запросы к контейнеру CN=Replication,CN=Monitoring и его дочерним объектам.

Уровень 1: агрегированные метрики репликации

Объект CN=Replication,CN=Monitoring содержит общие показатели состояния репликации на уровне контроллера домена.

Пример запроса и фрагмента вывода с требуемой записью:

ldbsearch -H ldap://localhost:3070 -s base -b "CN=Replication,CN=Monitoring"
# record 1
dn: CN=Replication,CN=Monitoring
failedInboundPartitions: 0
failedOutboundPartitions: 0
istgHolder: 0
successInboundPartitions: 5
successOutboundPartitions: 5
partitions: 5
inboundConnections: 1
outboundConnections: 1
istgElectionTotal: 1
istgLastElectionTime: 20260604145041
istgKeepAliveStatus: 7004.000000
connectionObjects: 5
connectionObjectsAutoGenerated: 3
connectionObjectsFailed: 1
distinguishedName: CN=Replication,CN=Monitoring

# returned 1 records
# 1 entries
# 0 referrals

Описание метрик:

Метрика Тип Пример значения Описание

partitions

Gauge

6

Количество партиций каталога (Naming Context, NC), которые реплицируются на данный контроллер домена

inboundConnections

Gauge

2

Количество уникальных источников (DSA) для входящей репликации

outboundConnections

Gauge

2

Количество уникальных получателей (DSA) для исходящей репликации

successInboundPartitions

Gauge

10

Количество успешных попыток входящей репликации (по всем соединениям и партициям) за последний цикл сбора метрик

failedInboundPartitions

Gauge

0

Количество неуспешных попыток входящей репликации (по всем соединениям и партициям) за последний цикл сбора метрик

successOutboundPartitions

Gauge

10

Количество успешных попыток исходящей репликации (по всем соединениям и партициям) за последний цикл сбора метрик

failedOutboundPartitions

Gauge

0

Количество неуспешных попыток исходящей репликации (по всем соединениям и партициям) за последний цикл сбора метрик

istgHolder

Gauge

1

Флаг, указывающий, является ли данный контроллер носителем роли Intersite Topology Generator (ISTG) в своем сайте. Возможные значения:

  • 1 — контроллер является текущим носителем ISTG;

  • 0 — контроллер не является носителем ISTG

istgElectionTotal

Counter

1

Общее количество смен носителя роли ISTG в сайте, зафиксированных на данном контроллере домена.

Увеличивается на 1 при каждом изменении DN текущего носителя роли ISTG в атрибуте interSiteTopologyGenerator объекта CN=NTDS Site Settings,CN=<имя сайта>,CN=Sites,CN=Configuration,DC=<домен>

istgLastElectionTime

Gauge (GeneralizedTime)

20260520143000

Время последнего изменения атрибута interSiteTopologyGenerator в объекте CN=NTDS Site Settings, зафиксированного данным контроллером домена. Формат: YYYYMMDDHHMMSS (UTC).

Атрибут interSiteTopologyGenerator содержит DN текущего носителя роли ISTG

istgKeepAliveStatus

Gauge

6674

Оставшееся время (в секундах) до возможного автоматического перехвата роли ISTG, вычисленное по формуле:

interSiteTopologyFailover * 60 – (текущее_время_UTC – whenChanged).

Интерпретация:

  • > 0 — текущий носитель сохранит роль как минимум столько секунд;

  • ≤ 0 — роль должна быть перехвачена другим контроллером (если доступен).

Атрибут interSiteTopologyFailover в объекте CN=NTDS Site Settings определяет время (в минутах), в течение которого текущий носитель роли ISTG должен обновлять свое присутствие. Если обновление не происходит в течение этого интервала (по умолчанию — 120 минут), другой контроллер домена в том же сайте автоматически перехватывает роль ISTG

connectionObjects

Gauge

5

Общее количество объектов соединений репликации (NTDS Connection objects) в контейнере CN=NTDS Settings,CN=<DSA Server>,CN=Servers,CN=<Site Name>,CN=Sites,CN=Configuration,DC=<Domain>,DC=<Suffix>.

Подсчитывается при каждом обновлении метрики путем поиска всех объектов класса nTDSConnection

connectionObjectsAutoGenerated

Gauge

3

Количество объектов соединений репликации, созданных автоматически KCC (Knowledge Consistency Checker).

Соединение считается автоматическим, если в атрибуте options объекта nTDSConnection установлен бит 0 (флаг NTDSCONN_OPT_IS_GENERATED = 0x00000001).

Ручное редактирование соединения сбрасывает этот флаг, переводя его в ручной режим. KCC больше не управляет такими соединениями

connectionObjectsFailed

Gauge

1

Количество объектов соединений репликации, для которых в кэше KCC зафиксированы ошибки подключения (KCC Connection Errors).

Соединение включается в метрику, если хотя бы один из разделов, реплицируемых в рамках соединения с партнером по репликации (DSA), имеет количество последовательных ошибок больше нуля

Уровень 2.1: метрики по партициям каталога

Объект CN=<имя_партиции>,CN=Partitions,CN=Replication,CN=Monitoring содержит метрики, отражающие состояние репликации по отдельной партиции.

Пример запроса:

ldbsearch -H ldap://localhost:3070 -s base -b "CN=ELLES,CN=Partitions,CN=Replication,CN=Monitoring"
# record 1
dn: CN=elles,CN=Partitions,CN=Replication,CN=Monitoring
bridgeheadHolder: 0
manualOutboundConnections: 0
inboundDsa: 1
inboundAvailDsa: 1
outboundDsa: 2
outboundAvailDsa: 2
automaticInboundConnections: 1
maxTotalLatency: 363
replicateTotal: 11
replicateDuration: 31
replicationAttemptsTotal: 13
newConnectionsInPeriod: 0
bytesPerPeriod: 1392
distinguishedName: CN=elles,CN=Partitions,CN=Replication,CN=Monitoring

# returned 1 records
# 1 entries
# 0 referrals

Описание метрик:

Метрика Тип Пример значения Описание

inboundDsa

Gauge

2

Общее количество партнеров (контроллеров домена), с которыми настроен входящий канал репликации по данной партиции

inboundAvailDsa

Gauge

2

Количество доступных партнеров для входящей репликации по данной партиции

outboundDsa

Gauge

1

Общее количество партнеров (контроллеров домена), с которыми настроен исходящий канал репликации по данной партиции

outboundAvailDsa

Gauge

1

Количество доступных партнеров (контроллеров домена) для исходящей репликации по данной партиции

bridgeheadHolder

Gauge

0

Флаг, указывающий, является ли данный контроллер мостовым сервером (bridgehead) для данной партиции. Возможные значения:

  • 1 — контроллер является bridgehead-сервером для партиции;

  • 0 — контроллер не является bridgehead-сервером

automaticInboundConnections

Gauge

1

Количество автоматически созданных входящих соединений репликации для данной партиции

manualOutboundConnections

Gauge

0

Количество вручную созданных исходящих соединений репликации для данной партиции

newConnectionsInPeriod

Counter

0

Количество новых соединений репликации, созданных за последний интервал сбора метрик

replicationAttemptsTotal

Counter

13

Общее количество попыток репликации (включая успешные и неудачные) с момента запуска Эллес для данной партиции

maxTotalLatency

Gauge

363

Максимальная задержка (в микросекундах) между последним обновлением и репликацией для данной партиции

bytesPerPeriod

Counter

1392

Объем данных (в байтах), переданных в рамках репликации за последний интервал сбора метрик

replicateTotal

Summary

11

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

replicateDuration

31

Суммарное время выполнения успешных транзакций репликации для данной партиции с момента запуска Эллес в миллисекундах

Уровень 2.2: метрики по партнеру и всем партициям

Объекты вида CN=<имя партнера>,CN=Replication,CN=Monitoring содержат метрики ошибок, фиксируемые KCC при попытках создания и проверки соединений репликации. Эти данные аналогичны выводу команды repadmin /failcache <DC_Name> на контроллерах домена на базе Windows Server.

Пример запроса:

ldbsearch -H ldap://localhost:3070 -b "CN=DC01,CN=Replication,CN=Monitoring"
# record 1
dn: CN=DC01,CN=Replication,CN=Monitoring
failedConnectionsTotal: 5
failedConnectionsLastError: 8453
failedConnectionsSince: 172800
failedLinksTotal: 2
failedLinksLastError: 8453
failedLinksSince: 86400
distinguishedName: CN=DC01,CN=Replication,CN=Monitoring

# returned 1 records
# 1 entries
# 0 referrals

Описание метрик:

Метрика Тип Пример значения Описание

Метрики группы Failed Connections

failedConnectionsTotal

Gauge

5

Общее количество сбоев при попытке создать соединение репликации с определенным контроллером домена (партнером по репликации).

Значение соответствует количеству ошибок, отображаемых в секции "KCC Connection Failures" в выводе команды repadmin /failcache

failedConnectionsLastError

Gauge

8453

Код последней ошибки (WERROR), которая возникла при попытке создать соединение репликации с партнером

failedConnectionsSince

Gauge

172800

Количество секунд, прошедших с момента первой ошибки при создании соединения репликации с партнером до момента регистрации метрики

Метрики группы Failed Links

failedLinksTotal

Gauge

2

Общее количество сбоев при проверке соединений репликации с определенным контроллером домена (партнером по репликации).

Значение соответствует количеству ошибок, отображаемых в секции "KCC Link Failures" в выводе команды repadmin /failcache

failedLinksLastError

Gauge

8453

Код последней ошибки при проверке соединения репликации с партнером

failedLinksSince

Gauge

86400

Количество секунд, прошедших с момента первой ошибки при проверке соединения репликации с партнером до момента регистрации метрики

Уровень 2.3: метрики по соединениям

Объекты вида CN=<имя соединения>,CN=Connections,CN=Replication,CN=Monitoring содержат метрики, отражающие состояние и параметры соединений репликации между контроллерами домена.

Пример запроса:

ldbsearch -H ldap://localhost:3070 -b "CN=Connections,CN=Replication,CN=Monitoring"
# record 1
dn: CN=11043410-e027-402d-96cf-f6e76232baa3,CN=Connections,CN=Replication,CN=Monitoring
replicationOptions: 1
distinguishedName: CN=11043410-e027-402d-96cf-f6e76232baa3,CN=Connections,CN=Replication,CN=Monitoring

# record 2
dn: CN=24c9dde9-ff3f-4fdf-92f0-56e0088db196,CN=Connections,CN=Replication,CN=Monitoring
replicationOptions: 5
distinguishedName: CN=24c9dde9-ff3f-4fdf-92f0-56e0088db196,CN=Connections,CN=Replication,CN=Monitoring

# returned 2 records
# 2 entries
# 0 referrals

Описание метрик:

Метрика Тип Пример значения Описание

replicationOptions

Gauge

1

Битовая маска опций репликации, извлеченная из атрибута options объекта nTDSConnection. Показывает конфигурационные параметры, управляющие поведением репликации между контроллерами домена (DSA)

Уровень 3: метрики по партиции и партнеру

Объекты вида CN=<имя партнера>,CN=<имя партиции>,CN=Partitions,CN=Replication,CN=Monitoring содержат детализированную информацию о состоянии входящей репликации для каждого партнера и партиции.

Пример запроса:

ldbsearch -H ldap://localhost:3070 -b "CN=DC02,CN=Schema,CN=Partitions,CN=Replication,CN=Monitoring"
# record 1
dn: CN=DC02,CN=Schema,CN=Partitions,CN=Replication,CN=Monitoring
inboundFailureTotal: 0
lastSuccessDelta: 0
lastAttempt: 134247827310000000
lastSuccess: 134247827310000000
usn: 225283
maxTotalLatency: 370
queueLengthIncoming: 0
queueLengthOutgoing: 0
replicationLatencyTotal: 125
replicationLatencyDuration: 2500
replicationInterval: 60
distinguishedName: CN=DC02,CN=Schema,CN=Partitions,CN=Replication,CN=Monitoring

# returned 1 records
# 1 entries
# 0 referrals

Описание метрик:

Метрика Тип Пример значения Описание

inboundFailureTotal

Gauge

0

Количество последовательных неуспешных попыток входящей репликации с момента последней успешной репликации с данным партнером по данной партиции

lastSuccessDelta

Gauge

0

Разница (в секундах) между временем последней успешной репликации и временем последней попытки репликации с данным партнером по данной партиции

lastAttempt

Gauge

133935114560000000

Время последней попытки входящей репликации с данным партнером по данной партиции, выраженное в формате Windows FILETIME (100-наносекундные интервалы с 1 января 1601 г. UTC)

lastSuccess

Gauge

133935114560000000

Время завершения последней успешной репликации с данным партнером по данной партиции, выраженное в формате Windows FILETIME (100-наносекундные интервалы с 1 января 1601 г. UTC)

usn

Gauge

225283

Последний обновленный USN (Update Sequence Number) для данной партиции на этом партнере

maxTotalLatency

Gauge

370

Максимальная задержка (в микросекундах) между последним обновлением и репликацией для данного партнера по данной партиции

queueLengthIncoming

Gauge

0

Текущая длина очереди входящих сообщений репликации от данного партнера

queueLengthOutgoing

Gauge

0

Текущая длина очереди исходящих сообщений репликации этому партнеру

replicationLatencyTotal

Summary

125

Общее количество успешных транзакций репликации для данного партнера и партиции с момента запуска Эллес

replicationLatencyDuration

2500

Суммарное время выполнения успешных транзакций репликации для данного партнера и партиции с момента запуска Эллес в миллисекундах

replicationInterval

Gauge

60

Интервал репликации (в минутах), установленный для данного соединения