┌──────────┐ ┌──────────┐ │OpenLDAP 1号 ├<─>┤OpenLDAP 2号 │ │(sso-1.end0tknr.com)│ │(sso-2.end0tknr.com)│ └──────────┘ └──────────┘
上のようにするには、以下の通り
1号機側
$ vi replica_ldap_1to2.ldif
# replace ServerID
dn: cn=config
changetype: modify
replace: olcServerID
olcServerID: 1
# mirror mode setup
dn: olcDatabase={2}bdb,cn=config
changetype: modify
add: olcSyncRepl
olcSyncRepl: rid=001 provider=ldap://sso-2.end0tknr.com searchbase="dc=sso,dc=end0tknr,dc=com" schemachecking=on bindmethod=simple binddn="cn=Manager,dc=sso,dc=end0tknr,dc=com" credentials=ldapパスワード type=refreshAndPersist retry="60 +"
-
add: olcMirrorMode
olcMirrorMode: TRUE
$ ldapadd -x -w ldapパスワード -D cn=config -f replica_ldap_1.ldif.ldif
2号機側
$ vi replica_ldap_2to1.ldif
# replace ServerID
dn: cn=config
changetype: modify
replace: olcServerID
olcServerID: 2
# mirror mode setup
dn: olcDatabase={2}bdb,cn=config
changetype: modify
add: olcSyncRepl
olcSyncRepl: rid=001 provider=ldap://sso-1.end0tknr.com searchbase="dc=sso,dc=end0tknr,dc=com" schemachecking=on bindmethod=simple binddn="cn=Manager,dc=sso,dc=end0tknr,dc=com" credentials=ldapパスワード type=refreshAndPersist retry="60 +"
-
add: olcMirrorMode
olcMirrorMode: TRUE
$ ldapadd -x -w ldapパスワード -D cn=config -f replica_ldap_1to2.ldif
オマケ - 同期されるdata store作成
上記までにreplicaされているので、 以下は1 or 2号機のいずれかでのみ、実行すれば、OK
$ vi make_datastore.ldif
dn: dc=sso,dc=end0tknr,dc=com
objectclass: dcObject
objectclass: organization
o: end0tknr
dc: sso
dn: cn=Manager,dc=sso,dc=end0tknr,dc=com
objectclass: organizationalRole
cn: Manager
dn: ou=People,dc=sso,dc=end0tknr,dc=com
objectClass: organizationalUnit
ou: People
dn: ou=Groups,dc=sso,dc=end0tknr,dc=com
objectClass: organizationalUnit
ou: Groups
dn: cn=sidNext,dc=sso,dc=end0tknr,dc=com
cn: sidNext
uidNumber: 1
objectClass: uidNext
dn: cn=defaultpolicy,dc=sso,dc=end0tknr,dc=com
objectClass: top
objectClass: device
objectClass: pwdPolicyChecker
objectClass: pwdPolicy
cn: defaultpolicy
pwdAttribute: userPassword
dn: cn=HelpDesk,dc=sso,dc=end0tknr,dc=com
objectclass: organizationalRole
cn: HelpDesk
dn: cn=SpcHelpDesk,cn=HelpDesk,dc=sso,dc=end0tknr,dc=com
objectClass: person
cn: SpcHelpDesk
sn: SpcHelpDesk
userPassword: {SSHA}<ないしょ>Zwf+WO1aXKzXTfrV
# ldapadd -x -w ldapパスワード -D cn=Manager,dc=sso,dc=end0tknr,dc=com \
-f make_datastore.ldif