/ ldap

openldap主从配置

在公司服务器上搭建了一个LDAP服务,为了避免出现单点,需要给LDAP做主从。在网上查了一下,基本上都是在sldap.conf里使用replica配置。但是在重启ldap服务时提示:

keyword is obsolete (ignored)
keyword is obsolete (ignored)

说明这两个配置已经是被废弃的了,于是上openldap官网上查了一下openldap的复制功能

openldap支持5种复制方式,分别是

Syncrepl:slave服务器从master上拉取数据,缺点是拉取的最小粒度是单条记录
Delta-syncrepl:与上一条相似,但拉取的最小粒度是属性
N-Way Multi-Master:多主,支持2个及以上的master
MirrorMode:双主镜像,不支持3个及以上的master,但可以有slave
Syncrepl Proxy:代理模式

按目前的需求只要配置成MirrorMode即可,编辑/etc/openldap/sldap.conf,

找到“moduleload syncprov.la”,将前面的#号去掉。

在最后加入

index entryCSN,entryUUID eq overlay syncprov syncprov-checkpoint 100 10 syncprov-sessionlog 100 serverID 1 syncrepl rid=123 provider=ldap://node2:389 type=refreshAndPersist searchbase="dc=example,dc=com" schemachecking=off bindmethod=simple binddn="cn=Manager,dc=example,dc=com" credentials=secret retry="60 +" mirrormode on

其中serverID是节点ID,唯一。rid是复制ID,两台服务器必须一致。

修改完毕之后将两个服务器上的ldap都重启下即可。

参考:http://www.ttlsa.com/database/openldap-mirrormode-cluster/