Страница 1 из 2

Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-02 13:05:34
Dr.Yu.
Коллеги, приветствую.
Написал статью по настройке кластера OpenLDAP под FreeBSD.
Если интересно - оцените, посмотрите неточности.
ссылка вот : http://www.lissyara.su/?id=1876

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-03 9:37:30
princeps
Как-то у тебя листинги оформлены не по стандарту.
Самбу не пробовал прикрутить к этому?

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-03 10:23:08
Dr.Yu.
Самбу PDC+BDC прикрутил, а еще прикрутил клаcтер dhcp и dns. Когда дооформлю - выложу отдельной статьей.

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-12 11:59:51
akela2008
В конфиге первого ldap-сервера ошибка
serverID 001
syncrepl rid=000
provider=ldaps://as02.int.sample.ru
type=refreshAndPersist
retry="5 10 300 +"
searchbase="dc=int,dc=sample,dc=ru"
attrs="*,+"
bindmethod=simple
binddn="uid=ldapsync_service,ou=systemusers,dc=int,dc=sample,dc=ru"
credentials=SUPERPASSWORD
tls_cert=/var/db/certs/as01_ldap.crt
tls_key=/var/db/certs/keys/as01_ldap.key
tls_cacert=/var/db/certs/ca.crt

надо as02_ldap.crt и as02_ldap.key

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-13 9:08:44
akela2008
Dr.Yu кады статья про самбу dhcp и dns будет
жду с нетерпением
особенно интересно как dhcp реализовано
не через dhcp2ldap случайно?

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-14 9:42:56
Dr.Yu.
akela2008 писал(а):В конфиге первого ldap-сервера ошибка
serverID 001
syncrepl rid=000
provider=ldaps://as02.int.sample.ru
type=refreshAndPersist
retry="5 10 300 +"
searchbase="dc=int,dc=sample,dc=ru"
attrs="*,+"
bindmethod=simple
binddn="uid=ldapsync_service,ou=systemusers,dc=int,dc=sample,dc=ru"
credentials=SUPERPASSWORD
tls_cert=/var/db/certs/as01_ldap.crt
tls_key=/var/db/certs/keys/as01_ldap.key
tls_cacert=/var/db/certs/ca.crt

надо as02_ldap.crt и as02_ldap.key
Спасибо, поправил.
Только неправильно было указано именно в конфиге второго сервера, т.к. tls_cert и tls_key описывают сертификат и ключ локальной стороны, а не удаленной.

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-14 10:51:56
LHC
Я тут вижу некоторую хмм... неточность что-ли в формулировке. Статья названа "Настройка кластера OpenLDAP". Если углубляться в терминологию, то безусловно конфигурацию, описанную в статье можно некоторым образом отнести к HA-кластеру или кластеру распределения нагрузки, но все-таки основного признака кластера (а именно балансировщика/программного или аппаратного модуля распределения запросов, называйте как хотите) нет. Тут мы имеем дело с обычной в практике службы каталогов master/master-репликацией (и в статье это упомянуто). Поэтому настоятельно рекомендую материал переименовать, дабы не вносит в умы сброд и шатание. По содержанию (за исключением оформления) претензий нет, кроме момента с portsnap-ом (но это так, паранойя, я пользуюсь csup). И наконец могу пожелать автору вопрос DNS поднять именно в этой статье, т.к. для службы каталогов он очень критичен.

P.S. Надеюсь критика была конструктивной.

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-15 0:09:53
Dron
либо дописать о балансировщике ;)

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-15 7:27:43
Andy
Dron писал(а):либо дописать о балансировщике ;)
Ты свою закончи и публикуй.

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-17 12:33:26
cruch
хочу довести до вашего сведения, что OpenLDAP-client 2.4.15 (у меня на 3 серверах) падает в coredump, при любом простейшем запросе, например:
ldapsearch -h localhost -D "cn=root,dc=sample,dc=ru" -W uid='*'
причем запросы не обязательно на локалхост...
почитал, погуглил на эту тему, люди пишут о таких же прроблемах... причем в версиях 2.4.11 или 2.4.14 такого не происходит...

Если у кого то есть такая же проблема, просьба сообщить в этой теме...

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-17 21:41:59
Rupreht
http://www.openldap.org/its/index.cgi?findid=6005

Код: Выделить всё

...
%ldapsearch -x -w xxxxxxx -h mail -b "ou=transport,dc=test,dc=ru" -D 
"cn=replic,dc=test,dc=ru"
Ok

%ldapsearch -Wx -h mail -b "ou=transport,dc=test,dc=ru" -D 
"cn=replic,dc=test,dc=ru"
Enter LDAP Password:
# extended LDIF
#
# LDAPv3
.....
# search result
search: 2
result: 0 Success

# numResponses: 5
# numEntries: 4
Segmentation fault
...
Проблема озвучена разработчикам... пароль пока нужно передавать в строке...

P.s.
Есть один вопрос: В чем функциональное отличие?

Код: Выделить всё

olcDbIndex: objectClass,entryCSN,entryUUID eq
и

Код: Выделить всё

olcDbIndex: objectClass eq
olcDbIndex: entryCSN eq
olcDbIndex: entryUUID eq

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-17 23:18:30
Dr.Yu.
LHC писал(а):Я тут вижу некоторую хмм... неточность что-ли в формулировке. Статья названа "Настройка кластера OpenLDAP". Если углубляться в терминологию, то безусловно конфигурацию, описанную в статье можно некоторым образом отнести к HA-кластеру или кластеру распределения нагрузки, но все-таки основного признака кластера (а именно балансировщика/программного или аппаратного модуля распределения запросов, называйте как хотите) нет. Тут мы имеем дело с обычной в практике службы каталогов master/master-репликацией (и в статье это упомянуто). Поэтому настоятельно рекомендую материал переименовать, дабы не вносит в умы сброд и шатание. По содержанию (за исключением оформления) претензий нет,
ИМХО можно долго спорить о вопросах терминов. Можно и не кластером назвать, а "отказоустойчивой связкой" или что-то в этом роде. Но многие кластеры (например вебкластеры на апаче) работают именно по такой схеме, а балансировщик используется отдельный, например аппаратный.
LHC писал(а): кроме момента с portsnap-ом (но это так, паранойя, я пользуюсь csup).
Каждый выбирает для себя...
LHC писал(а): И наконец могу пожелать автору вопрос DNS поднять именно в этой статье, т.к. для службы каталогов он очень критичен.
P.S. Надеюсь критика была конструктивной.
Все никак не дойдут руки описать подобную связку для DHCP - DNS. Драфт давно готов, но завал на работе мешает.

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-17 23:21:45
Dr.Yu.
akela2008 писал(а):Dr.Yu кады статья про самбу dhcp и dns будет
жду с нетерпением
особенно интересно как dhcp реализовано
не через dhcp2ldap случайно?
Скоро будет. Завал на работе, времени не хватает.
Через dhcp2ldap, увы. на редкость кривая софтина, поддерживает только один диапазон IP, да еще и работает только с /16 маской. Но на сайте разработчика патча для bind, обеспечивающего работу с ldap четко сказано, что ldap поддерживается только в режиме чтения, по этому о полноценном DDNS пока можно забыть.

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-17 23:27:43
Dr.Yu.
Rupreht писал(а): Есть один вопрос: В чем функциональное отличие?

Код: Выделить всё

olcDbIndex: objectClass,entryCSN,entryUUID eq
и

Код: Выделить всё

olcDbIndex: objectClass eq
olcDbIndex: entryCSN eq
olcDbIndex: entryUUID eq
Ни в чем, первый вариант используется для большей простоты конфига. подробно можно посмотреть тут - http://www.zytrax.com/books/ldap/ch6/bdb.html#index
но результат первого и вторго примеров будет одинаков.

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-18 7:46:37
Rupreht
По поводу DNS + LDAP рекомендую DLZ драйвер, он есть в src BIND.
help - http://bind-dlz.sourceforge.net/ldap_perf.html
Только нужно кое что поправить в исходниках:

Код: Выделить всё

--- sdlz_helper.c.orig  2009-02-13 17:24:42.000000000 +0500
+++ contrib/dlz/drivers/sdlz_helper.c   2009-02-13 17:24:48.000000000 +0500
@@ -171,7 +171,7 @@
                 */
                tseg->sql = isc_mem_strdup(mctx,
                                           isc_string_separate(&right_str,
-                                                              "%"));
+                                                              "$"));
                if (tseg->sql == NULL) {
                        /* no memory, clean everything up. */
                        result = ISC_R_NOMEMORY;
и в named.conf соответственно пишим не % а $. вот.

Код: Выделить всё

dlz "ldap zone" {
 database "ldap 10 v3 simple {cn=Manager,o=bind-dlz} {secret} { 127.0.0.1:9110 10.0.0.1:389 }
 ldap:///dlzZoneName=$zone$,ou=dns,o=bind-dlz??sub?objectclass=dlzZone
 ldap:///dlzHostName=$record$,dlzZoneName=$zone$,ou=dns,o=bind-dlz?dlzTTL,dlzType,dlzPreference,dlzData,dlzIPAddr,dlzPrimaryNS,dlzAdminEmail,dlzSerial,dlzRefresh,dlzRetry,dlzExpire,dlzMinimum?sub?objectclass=dlzAbstractRecord";
};
если что есть порт bind96 с пачем ftp://ftp.olympus.ru/unix/freebsd/ports ... dap.tar.gz

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-19 7:51:07
akela2008
Dr.Yu. писал(а):Через dhcp2ldap, увы. на редкость кривая софтина, поддерживает только один диапазон IP, да еще и работает только с /16 маской.
вот здесь http://www.lissyara.su/?id=1487 насчет маски исправление
"И еще надо будет подправить строку ~ 172 и 174:
меняем там $fourth.$third на $fourth."

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-03-24 8:45:32
cruch
Кстати у меня сейчас работает OpenLDAP 2.4.15 + Samba PDC + DNS
У меня еще и постфикс конфиги есть для openldap но мне чтото mysql нравится больше.
хотя когда все в одном месте, удобней получается.
Если Dr.Yu интересно могу показать свои конфиги.

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-04-07 13:05:43
Morty
кто-нибудь с таким сталкивался ?
в логи сыпет

Код: Выделить всё

do_syncrep2: rid=000 got search entry without Sync State control
зы: чего ему не хватает ?

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-09-04 13:47:08
tester
Добрый день.
кто-нибудь с таким сталкивался ?
куда копать, как лечить ?

------------------------------------------------------------------------
openLdap 2.4.16 /17 . попытка настроить кластер.
получаю
\# /etc/init.d/ldap restart
Shutting down ldap-server done
Starting ldap-serverstartproc: signal catched /usr/local/libexec/slapd: Segmentation fault
failed

linux slapd[18049]: .../slapd.conf: line 187: Error: Malformed
"syncrepl" line in slapd config file, missing provider searchbase.
Sep 4 14:03:36 slapd[18049]: failed to add syncinfo

в конфиге секция репликации :
---------------------

ServerID 002

# database section

database bdb

#
rootdn "cn=Administrator,dc=company,dc=com"

##
access to *
by dn.base="cn=Administrator,ou=Groups,dc=company,dc=com" read
by * break

syncrepl rid=001

provider=ldap://192.168.100.100:389
type=refreshAndPersist
retry="5 5 300 +"
searchbase="cn=Administrator,dc=company,dc=com"
attrs="*,+"
bindmethod=simple
binddn="cn=Administrator,dc=company,dc=com"
credentials=1234
----------------------------------------------------------------------------------------------

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-09-06 23:27:34
server801
оформляйте по человечески! :evil:

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-09-23 8:51:04
kron
tester Может ты удасужишься прочитать статью, прежде чем спрашивать, вопросы наводящие Где у тебя суффикс базы, какого у тебя вместо базы в случаях

Код: Выделить всё

by dn.base="cn=Administrator,ou=Groups,dc=company,dc=com" read
И

Код: Выделить всё

searchbase="cn=Administrator,dc=company,dc=com"
Стоит учетка админская.

Отсюда и результат, так как такой базы нет на лдап сервере и синхро тебя посылает

У меня другая проблема, все поднялось и все работает, даже хорошо, за одним недостатком, через определенное время база валится, в логах такое

Код: Выделить всё

Sep 24 11:40:36 c-es slapd[10504]: conn=29 op=33 SEARCH RESULT tag=101 err=0 nentries=1 text=  
Как я понимаю, проблема с какой-то записью в базе, вот только понять не могу с какой, никто не в курсе как посмотреть по этим данным к чему именно идет запрос?

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-09-25 16:28:04
kron
Частично разобрался, только проблему не решил, понял что slapd вываливается когда к нему от самбы приходят запросы, при запуске 1С или Консультанта, и то и другое лежит на файлсервере управляемым Самбой, но самый интересный вопрос в том, что раньше он справлялся, когда была база lbdm, а сейчас bdb и он отваливается, ума не преложу в чем дело((( И при этом, если спамить постоянный старт slapd оно все загружается и работает, вечером когда остается десяток пользователей 1С тоже грузиться нормально, но днем когда порядка 50 пользователей с чем-либо работают, возникают такие грабли. Кто-нибудь сталкивался с таким?

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-09-27 12:07:39
kron
Господа долго разбирался со всем и при помощи atrium решил проблему, версии ldap 2.3 не работают(полнофункционально) в связке master-master, собственно master-slave тоже, при включении их в synclrepl они впадают в режим read only и на этом все.

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-11-12 15:26:55
urusha
Здравствуйте. Настроил репликацию по статье, прикрутил самбы и тп. Но, пока проводил тесты, заметил, что при длительном отключении из сети (ethernet, без выключения 220V и соответственно slapd) одного из серверов, после последующего включения обратно в сеть, сервер не реплицируется со своими "соседями" (provider) в плане информации измененной на его соседе во время, пока он был отключен, однако, с новыми изменениями на любом из серверов - все в порядке, репликация идет. Исправляет положение только перегруз slapd на отключенном сервере после его включения обратно в сеть.
Отключал примерно на час, ждал синхронизации после включения тоже около часа, которая по идее должна была случиться по конфигу (retry="5 10 300 +") максимум через 300 секунд. Все это проделывал несколько раз - один эффект - 0. Вопрос важный, ведь при определенных условия рассинхронизация может быть очень значительной и опасной. А ведь здесь http://www.openldap.org/doc/admin24/replication.html, вроде как, обещают стабильную работу в таких ситуациях при mirrormode.
Пробовал играть с параметрами syncprov-sessionlog <size>, секцией syncrepl, индексировать все подряд... Не помогает. Знаю, есть cron и sh, но это слишком жестко и тоже может привести к сбоям.
Вопрос: есть ли у кого-нибудь такая проблема и как она была решена, если есть? Спасибо.
openldap-2.4.16 (с пакаджей), freebsd 7.2 x86.

Re: Статья: кластер OpenLDAP 2.4 под FreeBSD 7.1

Добавлено: 2009-11-21 17:16:25
patcha
Люд чесной.. не синхронизируется.. кто сталкивался с таким.. в логах валит вот это:

Код: Выделить всё

Nov 22 01:32:25 pdc slapd[910]: slap_client_connect: URI=ldaps://bdc.polyana DN="uid=ldapsync_service,ou=systemusers,dc=polyana" ldap_sasl_bind_s failed (-1)
Nov 22 01:32:25 pdc slapd[910]: do_syncrepl: rid=000 rc -1 retrying (9 retries left)
Nov 22 01:32:30 pdc slapd[910]: slap_client_connect: URI=ldaps://bdc.polyana DN="uid=ldapsync_service,ou=systemusers,dc=polyana" ldap_sasl_bind_s failed (-1)
Nov 22 01:32:30 pdc slapd[910]: do_syncrepl: rid=000 rc -1 retrying (8 retries left)
На основном контролере учётка есть, при помощи которой синх происходит, на доп контроллере нет..
по инструкции нет такого, но думаю что требется учётка и там и там одинаковая.. или я ошибаюсь?