UPDATE (post-publish), 20100806: Though this post was originally tested entirely on 32-bit Opensuse 11.1, thanks to the prompt by Philip (see comments below), I have set up and tested this config on 64-bit Opensuse 11.3 with the 64-bit eDirectory 8.8sp5. I can confirm that it works well. Now back to the original post…
A little while ago, I had to get a quick lab up with two redundant LDAP servers for application testing. I had some Opensuse 11.1 32-bit VM images lying around, and I chose eDirectory, for ease of administration and setup in my short time available. This is a quick way to get a high-quality, fault-tolerant free directory server on a free OS…
Of course, I happened to take notes (as I usually do), and thought I’d post them here for anyone who might be interested in doing the same.
In the following example environment, the two servers are “node1” (192.168.6.11) and “node2” (192.168.6.12), in the eDirectory tree called “NODETREE”. The rest should be obvious…
First, install the required supporting library:
zypper in libstdc++33
Get the eDirectory files from Novell:
…and unzip it, and run setup:
cd /tmp/eDirectory/setup ./nds-install
Ignore this “unsupported” warning. If we could enter “Of course!”, we would, but we can’t. Just enter “y”….
%%% Warning: This is not a supported platform for eDirectory 8.8.5. Please refer to NOVELL Documentation for information on supported platforms. Do you want to Continue '[y/n/q] ? '
You are prompted to agree to the license… …yes, you agree to the license…. 😉
q” to quit viewing, and “
y” to agree.
You are prompted to “
Select the components you wish to install..”
1 to install the server (or
1,2 for all). It will install needed packages.
Now edit the eDirectry “hosts” config file, since it is a closed environment. I’m starting on node2 for some strange reason, so I add that as the address of the tree here:
…and create the following entry:
If you’re not using DNS in your lab, you might want to make sure all eDir servers are in the hosts file. Either way, just make sure they are resolvable:
…and create the following entries:
node1 192.168.6.11 node2 192.168.6.12
ndsconfig with the required parameters. Here is my example to build a new tree with the first of two servers (again, mine happens to use node2 first, but either server is fine to build the tree):
/opt/novell/eDirectory/bin/ndsconfig new -t nodetree -n ou=Services.o=CORP -a cn=admin.o=CORP -i -S node2 -B 192.168.6.12
…and you will be asked for the new Admin password and the NDS (whoops, eDirectory) instance and DIB location.
Add the other server to that previously-created tree (after repeating the install procedures on the second server):
/opt/novell/eDirectory/bin/ndsconfig add -S node1 -t nodetree -n ou=Services.o=CORP -a cn=admin.o=CORP -B 192.168.6.11 -p 192.168.6.12
…and that’s it! You’re up and running, and ready for LDAP requests. Of course, you might want to create an OU for users (perhaps ou=users,o=CORP), and some users, etc., etc., etc…