Symas OpenLDAP Knowledge Base

Avoid Worst Practices

Too Much MMR

You need (at most) two active servers in a multi-master replication (MMR) cluster. More than that will increase the replication traffic, eventually making replication the primary load on the cluster. Yes, we’ve seen it too often! A third server should be a replica of the masters, set up to become an active MMR master in a Disaster, and the procedure to make the relevant changes to replace a failed server.

Just Enough MMR

Unsafe Database Loads

Many people see the -q option on slapadd, the database load utility. The documentation says it can speed up the loading of data. If you use -q, any errors in the input file will be loaded. All checking is off. That guarantees operational problems in production. Nobody needs operational problems. Don’t use -q on anything but a backup file from a “known-good” server.

Unindexed Attributes

Only attributes used to look up entries need to be indexed. Indexes take up space and slow down updates as they too must be updated. But when an attribute is not indexed and a query uses it in a search filter, the query will take much more processing and elapsed time. A periodic scan of the slapd.log file(s) looking for “not indexed” in a line will help you find this problem. Symas’s Log Analysis tools provide that information along with other valuable insights.

Presence Indexing

Don’t bother. Indexing takes time and the performance improvements aren’t generally worth the database space.

Failing to Put a Password on cn=config

Even though you may be using static configuration (slapd.conf file), OpenLDAP is building a dynamic configuration database when it starts up. If you don’t explicitly put a rootpw into the cn=conf database definition, you will have to stop slapd, change slapd.conf, and restart slapd to do simple things like changing the log level for a minute or two to study a problem. Your changes will be lost next time you stop slapd. You may never use it. But if you run into a problem, it avoids unneeded outages when Symas is trying to help sort things out.