Comments (3)
@tverhoeven could you please provide the puppet code you are using so that I can try to reproduce?
from puppet-openldap.
Here is the code:
#Variables
if $::fqdn == 'servera01' {
$serverid = '1 ldap://servera01/'
} elsif $::fqdn == 'servera02' {
$serverid = '2 ldap://servera02/'
}
# Setup openldap server and 2 trees
class { 'openldap::server':
databases => {
'dc=tree1' => {
directory => '/var/lib/ldap/tree1',
rootdn => 'cn=Manager,dc=tree1',
rootpw => 'password',
syncrepl => ["rid=001 provider=ldap://servera01:389 binddn=\"cn=Manager,dc=tree1\" bindmethod=simple credentials=password searchbase=\"dc=tree1\" type=refreshAndPersist", "rid=002 provider=ldap://servera02:389 binddn=\"cn=Manager,dc=tree1\" bindmethod=simple credentials=password searchbase=\"dc=tree1\" type=refreshAndPersist"],
initdb => true,
mirrormode => true,
},
'dc=tree2' => {
directory => '/var/lib/ldap/tree2',
rootdn => 'cn=Manager,dc=tree2',
rootpw => 'password',
syncrepl => ["rid=001 provider=ldap://servera01:389 binddn=\"cn=Manager,dc=tree2\" bindmethod=simple credentials=password searchbase=\"dc=tree2\" type=refreshAndPersist", "rid=002 provider=ldap://servera02:389 binddn=\"cn=Manager,dc=tree2\" bindmethod=simple credentials=password searchbase=\"dc=tree2\" type=refreshAndPersist"],
initdb => true,
mirrormode => true,
},
},
}
# Add serverid to global conf for replication
openldap::server::globalconf { 'serverid':
ensure => present,
value => "${serverid}",
}
The variable section is also used for other parameters (e.g. keepalived). I also have some overlay (for the replication) and schema's resources to complete the setup. Let me know if you also would need those.
from puppet-openldap.
I've manage to solve the problem.
I was adding a couple of other globalconf entries, this to setup TLS. And these worked fine. So I thought there is something to the way serverid's handled. But looking at the code this isn't the case.
Then looking again at my manifest I've spotted the problem. The TLS parameters in my manifest were capitalized exactly like they appear in the cn=config. By my serverid entry in my manifest was not. So I changed the capitalization of the ServerID entry in my manifest and then the error disappeared.
So the moral of the story is that the documentation should contain a note that globalconf entries should be capitalized exactly as how they appear in cn=config.
from puppet-openldap.
Related Issues (20)
- openldap::server::overlay does not allow tuples as options HOT 2
- [poll] What to do with the islast parameter of openldap_access?
- openldap::server::database initdb data type should support value false
- `$openldap::server::database::mirrormode` does not enable olcMirrorMode
- openldap::server::overlay incorrectly parses suffix HOT 5
- openldap::server::dbindex is missing documentation HOT 3
- Unable to configure openldap on FreeBSD 13.0-RELEASE HOT 5
- Wrong data type for `$openldap::server::database::limits`
- LDIF mangling is in schema provider does not handle LDIF line wrapping correctly HOT 1
- Data type enforcement for openldap_database security is not idempotent HOT 1
- dc=my-domain,dc=com entry in Database HOT 3
- Inconsistent parameters for `openldap::client`
- Version 6.1.0 breaks disabling nonexistent services HOT 3
- cn=accesslog database: Parameter suffix failed
- Parameter suffix failed, because of too restrictive patterns in openldap/lib/puppet/type/openldap_database.rb HOT 2
- No parameter named 'multiprovider' HOT 4
- no parameter named 'multiprovider' HOT 3
- Cannot ensure: absent on dbindex
- acls with identical access definitions are not implemented correctly
- Unable to configure hashing with the pw-pbkdf2 module
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from puppet-openldap.