как продвинуть реплику ldap к мастеру


У меня есть главный сервер LDAP (openldap), работающий на узле, который должен быть выведен из эксплуатации. У меня есть несколько потребительских узлов делать syncrepl к нему. Я назначил другой узел (один из потребителей), чтобы стать новым мастером, чтобы я мог декоммиссировать старого мастера.

Я обновил всех других потребителей до syncrepl от этого второго мастера.

Эвристически, каков процесс "продвижения" этого нового сервера от потребителя (ведомого) к хозяину?

Строка конфигурации похоже на это у потребителей.

olcSyncrepl: {0}rid=312 provider="ldaps://<new master>/" type=refreshAndPersist interval="00:00:01:00" retry="60 30 300 +" searchbase="<base of tree>" bindmethod=sasl saslmech=gssapi keepalive=3540:10:3

В новом мастере это та же самая строка, за исключением значения провайдера-старого мастера. Это просто случай удаления этой линии? И если да, то могу ли я сделать это, просто остановив slapd и удалив эту линию из hdb.ldif-файл и перезапуск. или мне нужно сделать ldapmodify на RDN?

2 5

2 ответа:

Хорошо, я нашел ответ. Из документации syncrepl следует следующее

Потребитель также сохраняет свое состояние реплики, которое является состоянием поставщика. contextCSN, полученный как файл cookie синхронизации, в файле contextCSN атрибут записи суффикса. Состояние реплики, поддерживаемое a потребительский сервер используется в качестве индикатора состояния синхронизации, когда он выполняет последующую инкрементную синхронизацию с поставщиком сервер. Он также используется в качестве состояние синхронизации на стороне поставщика индикатор, когда он функционирует в качестве сервера вторичного поставщика в конфигурация каскадной репликации. Так как потребитель и поставщик информация о состоянии хранится в одном и том же месте в пределах их соответствующие базы данных, любой потребитель может быть повышен до поставщика (и наоборот) без каких-либо специальных действий.

Таким образом, просто отбросив синхронизацию к исходному поставщику, этот узел может стать новым главным поставщиком. а это может быть подтверждено путем сравнения атрибутов contextCSN на каждом DIT на каждом узле для проверки.

Я не знаю, Может ли это быть полезно для вас, но вы можете принять во внимание эту главу о репликации RHEL Identity Management Guide (a.k.a. as FreeIpa). У них внутри тоже есть LDAP.