Initial support for slave databases in ldap::server::database.

This commit is contained in:
Timo Mkinen 2012-04-17 13:12:00 +03:00
parent ddf17b4ec6
commit 5aded5e39f
2 changed files with 27 additions and 1 deletions

View file

@ -523,11 +523,18 @@ class ldap::server {
# $aclsource: # $aclsource:
# Source file for custom ACL's. Default is to use template. # Source file for custom ACL's. Default is to use template.
# #
# $master:
# Master LDAP server URI when creating slave database.
#
# $syncpw:
# Password for uid=replicator,cn=config,${name} user on master.
# Only needed for slave databases.
#
# === Sample usage # === Sample usage
# #
# ldap::server::database { "dc=example,dc=com": } # ldap::server::database { "dc=example,dc=com": }
# #
define ldap::server::database($aclsource = "") { define ldap::server::database($aclsource = "", $master = "", $syncpw = "") {
include ldap::server include ldap::server

View file

@ -24,6 +24,25 @@ syncprov-sessionlog 100
# Mode 700 recommended. # Mode 700 recommended.
directory /srv/ldap/<%= name %> directory /srv/ldap/<%= name %>
<% if master != "" -%>
# replication
syncrepl rid=2
provider=<%= master %>
type=refreshAndPersist
retry="10 10 60 +"
searchbase="<%= ldap_basedn %>"
filter="(objectClass=*)"
scope="sub"
sizelimit=500000
timelimit=360000
schemachecking="off"
bindmethod="simple"
tls_reqcert="never"
binddn="uid=replicator,cn=config,<%= ldap_basedn %>"
credentials="<%= syncpw %>"
updateref <%= master %>
<% end -%>
# include acl and index configs # include acl and index configs
include <%= scope.lookupvar('ldap::server::config') %>/slapd.conf.d/acl.<%= name %>.conf include <%= scope.lookupvar('ldap::server::config') %>/slapd.conf.d/acl.<%= name %>.conf
include <%= scope.lookupvar('ldap::server::config') %>/slapd.conf.d/index.<%= name %>.conf include <%= scope.lookupvar('ldap::server::config') %>/slapd.conf.d/index.<%= name %>.conf