Archive for June, 2008

OpenLDAP Replication

June 19th, 2008

花了点时间测试了一下OpenLDAP的主辅库同步,记录一下配置文件。

0,假设两台机器分别为:ldap-master.extmail.org  ldap-slave1.extmail.org

1,首先要做的是把主库上的数据和配置文件全部拷贝一份到辅库上去,并放到对应的目录下,包含如下文件

/var/db/openldap-data/*

/usr/local/etc/openldap/*

然后重启一下slapd,再进行下面的配置

2,主库上配置slapd.conf类似如下内容,主要是增加了replogfile和replica,前者是指定了同步日志的位置,slurpd会读取这个日志文件,后者则指定了辅库的hostname和binddn,这个binddn需要和辅库上的updatedn一致,表示从这个节点开始同步。

include         /usr/local/etc/openldap/schema/core.schema
include         /usr/local/etc/openldap/schema/cosine.schema
include         /usr/local/etc/openldap/schema/nis.schema
include         /usr/local/etc/openldap/schema/extmail.schema
pidfile         /var/run/openldap/slapd.pid
argsfile        /var/run/openldap/slapd.args
modulepath      /usr/local/libexec/openldap
moduleload      back_bdb
database        bdb
suffix          “dc=extmail.org”
rootdn          “cn=Manager,dc=extmail.org”
rootpw          secret
replogfile      /var/db/openldap-data/replog
replica host=ldap-slave1.extmail.org:389
binddn=”cn=Manager,dc=extmail.org”
bindmethod=simple credentials=secret
directory       /var/db/openldap-data
index   objectClass     eq
index   mail,active,virtualDomain,mailLocalAddress         eq,pres

3,辅库的配置,只多了一个updatedn命令

include         /usr/local/etc/openldap/schema/core.schema
include         /usr/local/etc/openldap/schema/cosine.schema
include         /usr/local/etc/openldap/schema/nis.schema
include         /usr/local/etc/openldap/schema/extmail.schema
pidfile         /var/run/openldap/slapd.pid
argsfile        /var/run/openldap/slapd.args
modulepath      /usr/local/libexec/openldap
moduleload      back_bdb
database        bdb
suffix          “dc=extmail.org”
rootdn          “cn=Manager,dc=extmail.org”
rootpw          secret
updatedn        “cn=Manager,dc=extmail.org”
directory       /var/db/openldap-data
index   objectClass     eq
index   mail,active,virtualDomain,mailLocalAddress         eq,pres

4,重启slapd,slurpd。然后在主库上更新一条记录,查看是否同步过来。

master: /var/db/openldap-slurp/replica/slurpd.replog

slave: /var/log/debug.log

得到了Firefox3的下载证书

June 18th, 2008