Как настроить репликацию на сервере каталогов apache

У меня есть 2 службы apached, работающие на рабочей станции (Windows 7). Одна из служб работает как служба Windows, а другую я запускаю из файла jar из командной строки, используя

java -jar "C:\Program Files (x86)\ApacheDS - Instance2\lib\apacheds-service-2.0.0-M15.jar"    "C:\Program Files (x86)\ApacheDS - Instance2\instances\instance2" 

Первая установка apached находится в папке C:\Program Files (x86)\ApacheDS и работает на 10389. Вторая служба работает на порту 11389. Используя apache directory studio, я могу подключиться к обоим этим экземплярам/службам, работающим на моей рабочей станции, и там на консоли ошибок нет. Используя следующий файл ldif, я импортировал настройки для экземпляра 1, который будет основным

dn: ads-serverId=ldapServer,ou=servers,ads-directoryServiceId=default,ou=config 
changetype: modify 
add: ads-replReqHandler 
ads-replReqHandler: org.apache.directory.server.ldap.replication.provider.SyncReplRequestHandler

Затем я также импортировал следующий файл ldif в экземпляр 1/мастер -

dn: ads-replConsumerId=1,ou=replConsumers,ads-serverId=ldapServer,ou=servers,ads-directoryServiceId=default,ou=config
changetype: add
ads-replRefreshNPersist: TRUE
ads-replAliasDerefMode: never
ads-replProvPort: 10389
ads-replSearchSizeLimit: 0
ads-replProvHostName: localhost
objectClass: ads-replConsumer
objectClass: ads-base
ads-replUserDn: uid=admin, ou=system
ads-replRefreshInterval: 60000
ads-replUserPassword: secret
ads-replConsumerId: 1
ads-replAttributes: *
ads-replSearchTimeOut: 0
ads-replSearchScope: sub
ads-replSearchFilter: (objectClass=*)
ads-searchBaseDN: ou=system

Я добавил несколько пользователей под ou=users, ou=system на мастере, но на ведомом ничего не реплицируется. На консолях обоих экземпляров нет никаких доказательств того, что эти два экземпляра пытаются общаться, и, следовательно, я думаю, что это неправильная конфигурация или неполная конфигурация, поскольку я не смог найти ничего в документации по Apache, что нужно было бы добавить как часть конфигурация потребителя на Instance2/Slave. Я что-то пропустил ?

Спасибо !


person Aniket    schedule 28.08.2013    source источник


Ответы (1)


В версии apached 2.0 - M15 была некоторая ошибка, связанная с репликацией. Эта ошибка уже исправлена, и исправление будет в M16. Я построил 2 отдельных экземпляра из магистрали svn apached, создал установщики и запустил 2 отдельных экземпляра. Добавлены следующие настройки/конфигурации для провайдера/мастера (работает на порту 10389) –

dn: ads-serverId=ldapServer,ou=servers,ads-directoryServiceId=default,ou=config 
changetype: modify 
add: ads-replReqHandler 
ads-replReqHandler:         org.apache.directory.server.ldap.replication.provider.SyncReplRequestHandler

Добавлена ​​​​следующая конфигурация в экземпляр потребителя / подчиненного (работает на 11389) —

dn: ads-replConsumerId=1,ou=replConsumers,ads-serverId=ldapServer,ou=servers,ads-directoryServiceId=default,ou=config
changetype: add
ads-replRefreshNPersist: TRUE
ads-replAliasDerefMode: never
ads-replProvPort: 10389
ads-replSearchSizeLimit: 0
ads-replProvHostName: localhost
objectClass: ads-replConsumer
objectClass: ads-base
ads-replUserDn: uid=admin, ou=system
ads-replRefreshInterval: 60000
ads-replUserPassword: secret
ads-replConsumerId: 1
ads-replAttributes: *
ads-replSearchTimeOut: 0
ads-replSearchScope: sub
ads-replSearchFilter: (objectClass=*)
ads-searchBaseDN: ou=system

Перезапустил оба экземпляра и попытался добавить запись в разделе Provider и Wow! это было воспроизведено потребителю.

Хотя конфигурация, которую я разместил в вопросе, неверна, к этой конфигурации привели несколько запутанных вещей.

  1. Отсутствие четкой документации на сайте apacheds.
  2. Студия Apache ds. Когда вы создаете соединение в студии apache ds для подключения к службе apached, вы можете щелкнуть правой кнопкой мыши соединение и открыть его конфигурацию (которая хранится в ou=config. По сути, это графический интерфейс для ou=config). При нажатии на последнюю вкладку «Репликация». Заголовок гласит «Все потребители репликации» с кнопкой «Добавить» справа. Это вводит в заблуждение, поскольку создает у пользователя впечатление, что здесь нужно добавить сведения о потребителе/ведомом устройстве, и эта конфигурация должна лежать на стороне мастера/поставщика.
person Aniket    schedule 03.09.2013
comment
Я абсолютно обманулся вашим пунктом № 2, все из-за пункта № 1. Мне очень нравится ApacheDS, но у него явно не очень хорошая документация. - person hashbang; 16.01.2019