wiki.getshifting.com

--- Sjoerd Hooft's InFormation Technology ---

User Tools

Site Tools


start

SHIFT-WIKI - Sjoerd Hooft's InFormation Technology

This WIKI is my personal documentation blog. Please enjoy it and feel free to reach out through blue sky if you have a question, remark, improvement or observation. See below for the latest additions, or use the search or tags to browse for content.


openDS LDAP Restore

Summary: How to do a restore in openDs.
Date: Around 2012
Refactor: 8 March 2025: Checked links and formatting.

This is a restore from LDAP data created in Script: Bash: TDS LDAP Backup.

→ Read more...

2025/06/01 11:59

OpenDS Memory Configuration

Summary: How to confgure memory usage for OpenDS.
Date: Around 2012
Refactor: 8 March 2025: Checked links and formatting.

By default openDS only gets a minimum of 128 MB and a maximum of 256 MB memory assigned ( -Xms128m -Xmx256m ). That is a bit low in large environments. You can check current settings like this:

sjoerd@ldapsrv:/opt/OpenDS-2.2.0/config>ps -ef | grep Open
    root 4063566       1 316   Mar 11      - 141937:27 /usr/java5/jre/bin/java -server -Xms128m -Xmx256m -Dorg.opends.server.scriptName=start-ds org.opends.server.core.DirectoryServer --configClass org.opends.server.extensions.ConfigFileHandler --configFile /opt/OpenDS-2.2.0/config/config.ldif

Settings can be adjusted in /opt/OpenDS-2.2.0/config: Original settings:

overwrite-env-java-home=false
overwrite-env-java-args=false

default.java-home=/usr/java5/jre

backup.offline.java-args=-server -Xms128m -Xmx256m
encode-password.java-args=-server -Xms128m -Xmx256m
export-ldif.offline.java-args=-server -Xms128m -Xmx256m
import-ldif.offline.java-args=-server -Xms128m -Xmx256m
ldif-diff.java-args=-server -Xms128m -Xmx256m
ldifmodify.java-args=-server -Xms128m -Xmx256m
ldifsearch.java-args=-server -Xms128m -Xmx256m
make-ldif.java-args=-server -Xms128m -Xmx256m
rebuild-index.java-args=-server -Xms128m -Xmx256m
restore.offline.java-args=-server -Xms128m -Xmx256m
start-ds.java-args=-server -Xms128m -Xmx256m
upgrade.java-args=-server -Xms128m -Xmx256m
verify-index.java-args=-server -Xms128m -Xmx256m
dbtest.java-args=-server -Xms128m -Xmx256m
backup.online.java-args=-client -Xms8m
base64.java-args=-client -Xms8m
create-rc-script.java-args=-client -Xms8m
dsconfig.java-args=-client -Xms8m
dsreplication.java-args=-client -Xms8m
dsframework.java-args=-client -Xms8m
export-ldif.online.java-args=-client -Xms8m
import-ldif.online.java-args=-client -Xms8m
ldapcompare.java-args=-client -Xms8m
ldapdelete.java-args=-client -Xms8m
ldapmodify.java-args=-client -Xms8m
ldappasswordmodify.java-args=-client -Xms8m
ldapsearch.java-args=-client -Xms8m
list-backends.java-args=-client -Xms8m
manage-account.java-args=-client -Xms8m
manage-tasks.java-args=-client -Xms8m
restore.online.java-args=-client -Xms8m
stop-ds.java-args=-client -Xms8m
status.java-args=-client -Xms8m
control-panel.java-args=-client -Xms8m
uninstall.java-args=-client -Xms8m
setup.java-args=-client -Xms8m

New settings:

overwrite-env-java-home=false
overwrite-env-java-args=true

default.java-home=/usr/java5/jre

manage-account.java-args=-client -Xms8m
import-ldif.offline.java-args=-server -Xms128m -Xmx256m
status.java-args=-client -Xms8m
rebuild-index.java-args=-server -Xms2g -Xmx2g
backup.online.java-args=-client -Xms8m
base64.java-args=-client -Xms8m
verify-index.java-args=-server -Xms2g -Xmx2g
export-ldif.offline.java-args=-server -Xms128m -Xmx256m
ldif-diff.java-args=-server -Xms128m -Xmx256m
list-backends.java-args=-client -Xms8m
import-ldif.online.java-args=-client -Xms8m
encode-password.java-args=-server -Xms128m -Xmx256m
ldapdelete.java-args=-client -Xms8m
backup.offline.java-args=-server -Xms128m -Xmx256m
ldapcompare.java-args=-client -Xms8m
uninstall.java-args=-client -Xms8m
control-panel.java-args=-client -Xms8m
restore.offline.java-args=-server -Xms128m -Xmx256m
ldappasswordmodify.java-args=-client -Xms8m
dsframework.java-args=-client -Xms8m
restore.online.java-args=-client -Xms8m
ldifsearch.java-args=-server -Xms128m -Xmx256m
create-rc-script.java-args=-client -Xms8m
stop-ds.java-args=-client -Xms8m
dsreplication.java-args=-client -Xms8m
ldapsearch.java-args=-client -Xms8m
ldapmodify.java-args=-client -Xms8m
start-ds.java-args=-server -Xms2g -Xmx2g
setup.java-args=-client -Xms8m
dbtest.java-args=-server -Xms128m -Xmx256m
make-ldif.java-args=-server -Xms128m -Xmx256m
upgrade.java-args=-server -Xms128m -Xmx256m
manage-tasks.java-args=-client -Xms8m
dsconfig.java-args=-client -Xms8m
export-ldif.online.java-args=-client -Xms8m
ldifmodify.java-args=-server -Xms128m -Xmx256m

After changing the file you can activate the settings using the command dsjavaproperties:

sjoerd@ldapsrv:/opt/OpenDS-2.2.0/bin>sudo ./dsjavaproperties
The operation was successful.  The server commands will use the java arguments and java home specified in the properties file located in /opt/OpenDS-2.2.0/config/java.properties

To see that openDS is actually running with the new settings openDS needs a restart:

/opt/OpenDS-2.2.0/bin/stop-ds -D cn=manager -w <secret>
/opt/OpenDS-2.2.0/bin/start-ds

→ Read more...

2025/06/01 11:59

OpenDS LDIF Export

Summary: How to do a openDs LDIF export.
Date: Around 2012
Refactor: 8 March 2025: Checked links and formatting.

This script will create a ldif export from a running OpenDS installation.

#!/bin/bash
# set -x
# Created by s.hooft, 22-03-2011, sjoerd_warmetal.nl

### Script Variables
WHATAMI=`basename $0`

### LDAP Variables
DUMPDIR=/var/backup/ldif
MANAGER=cn=manager
PASSWD=xxxxxxxx
HOSTNAME=`hostname`
HOSTNAME_SHORT=`hostname -s`
LDAPBASE="o=company.local"

### Offsitecopy Variables
GZIP=/usr/bin/gzip
. "/opt/scripts/mail.txt"
. "/opt/scripts/offsitecopy.func"
TOUSER="repluser"
TOHOST="syncsrv.company.local"
TODIR="/srv/syncdata/LDAP"
LDIFFILE=${DUMPDIR}/${HOSTNAME_SHORT}-LDAP_`date +%Y%m%d%H%M`.ldif
BACKUPFILE="$LDIFFILE.gz"
LOGFILE=${DUMPDIR}/ldapbackup.log
DOCOPY="1"

### Create new logfile
echo "Creating ldif backup $LDIFFILE using $MANAGER on $LDAPBASE" > $LOGFILE

mailFunction() {
   if [ "$1" == "LDIF" ]; then
      echo "LDIF backup was not created succesfully, consult $LOGFILE on ${HOSTNAME}" | mail -s "Failed $1 Backup" $MAILTOFAIL
   fi
   if [ "$1" == "GZIP" ]; then
      echo "Tar or zip was not created succesfully, consult $LOGFILE on ${HOSTNAME}" | mail -s "Failed $1 Backup" $MAILTOFAIL
   fi
   exit
}

backupFunction () {
   /opt/OpenDS-2.2.0/bin/export-ldif --bindDN "$MANAGER" --bindPassword "$PASSWD" --backendID userRoot --trustAll --excludeAttribute entryUUID --ldifFile $LDIFFILE >> $LOGFILE
   LDIFRESULT=$?
   if [ ! "$LDIFRESULT" == "0" ]; then
      mailFunction LDIF
   fi
   $GZIP $LDIFFILE >> $LOGFILE
   GZIPRESULT=$?
   if [ ! "$GZIPRESULT" == "0" ]; then
      mailFunction GZIP
   fi
   copyFunction
}

copyFunction() {
   if [ "$DOCOPY" == "1" ]; then
      offsitecopy "${BACKUPFILE}" "$TOUSER" "$TOHOST" "$TODIR" "$LOGFILE" "$WHATAMI" "$HOSTNAME" "$MAILTOSUCCESS" "$MAILTOFAIL"
   else
      echo >> $LOGFILE
      echo "Copy to offsite location is not enabled." >> $LOGFILE
      echo "Modify the script under Offsitecopy Variables to enable offsitecopy" >> $LOGFILE
      echo >> $LOGFILE
   fi
}

backupFunction

exit

The offsitecopy.func and mail.txt can be found here.

2025/06/01 11:59

OpenDS Installation

Summary: This post describes the installation and configuration of the OpenDS 2.2.0 directory server on AIX..
Date: Around 2012
Refactor: 8 March 2025: Checked links and formatting.

→ Read more...

2025/06/01 11:59

<< Newer entries | Older entries >>

This wiki has been made possible by:

start.txt · Last modified: by sjoerd