[fedfs-utils] [PATCH] FedFS - simple setup howto
Ian Kent
raven at themaw.net
Mon Sep 24 19:05:47 PDT 2012
On Mon, 2012-09-24 at 13:40 -0400, Chuck Lever wrote:
> Hi-
>
> On Aug 27, 2012, at 5:28 AM, Ian Kent wrote:
>
> > +Setup an NSDB (NameSpace DataBase)
> > +==================================
> > +
> > +1. Set parameters for NSDB connections:
> > + # nsdbparams(8) is used to set NSDB connection parameters
> > + nsdbparams update -e "dc=fedfs,dc=org" \
> > + -D "cn=Manager,dc=fedfs,dc=org" \
> > + zeus.fedfs.org
> > +
> > +2. Setup an OpenLDAP instance for fedfs.org:
> > + service slapd stop
> > +or
> > + systemctl stop slapd.service
> > +
> > +Create /etc/openldap/slapd.conf as:
> > + include /etc/openldap/schema/core.schema
> > + include /etc/openldap/schema/cosine.schema
> > + include /etc/openldap/schema/inetorgperson.schema
> > + include /etc/openldap/schema/nis.schema
> > + # Get this from the FedFS distribution
> > + include /etc/openldap/schema/fedfs.schema
> > +
> > + pidfile /var/run/openldap/slapd.pid
> > + argsfile /var/run/openldap/slapd.args
> > +
> > + database bdb
> > + suffix "dc=fedfs,dc=org"
> > + rootdn "cn=Manager,dc=fedfs,dc=org"
> > + rootpw secret
> > + directory /var/lib/ldap
> > +
> > + index objectClass eq,pres
> > + index ou,cn,mail,surname,givenname eq,pres,sub
> > + index uidNumber,gidNumber,loginShell eq,pres
> > + index uid,memberUid eq,pres,sub
> > + index nisMapName,nisMapEntry eq,pres,sub
> > +
> > +Create fedfs.org-naming-context.ldif as:
> > + dn: dc=fedfs,dc=org
> > + objectClass: domain
> > + dc: fedfs
> > + description: naming context
> > +
> > +Create an OpenLDAP instance for fedfs.org:
> > + # Ensure that /etc/openldap/ldap.conf is setup to use fedfs.org
> > + # by commenting out any other URI and BASE directives and then
> > + # add definitions to the end of the configuration.
> > + echo "URI ldap://zeus.fedfs.org/" >> /etc/openldap/ldap.conf
> > + echo "BASE dc=fedfs,dc=org" >> /etc/openldap/ldap.conf
> > +
> > + # Setup OpenLDAP for fedfs.org
> > + cd /etc/openldap
> > + restorecon -v slapd.conf
> > +
> > + rm -f /var/lib/ldap/*
> > + # supress warnings that this file does not exist
> > + touch /var/lib/ldap/DB_CONFIG
> > +
> > + rm -rf slapd.d
> > + slaptest -F slapd.d -f slapd.conf
> > + # I think this will restore the correct ownership
> > + # of the configuration directory tree but it may
> > + # be necessary to chmod -R ldap.ldap slapd.d also.
> > + restorecon -R -v slapd.d
> > +
> > + slapadd -l fedfs.org-naming-context.ldif
> > + chown ldap.ldap /var/lib/ldap/*
> > + restorecon -v /var/lib/ldap/*
> > +
> > + service slapd start
> > +or
> > + systemctl start slapd.service
> > +
> > +4. Add NCI (NSDB Container information) attributes to the
> > + naming context LDAP entry:
> > + nsdb-update-nci -l zeus.fedfs.org \
> > + -D "cn=Manager,dc=fedfs,dc=org" \
> > + -e "dc=fedfs,dc=org"
>
> I'm new to OpenLDAP, but you have inspired me to try it out as an NSDB.
> I used your instructions.
>
> It looks like OpenLDAP is in the middle of a major conversion from the
> old-school slapd.conf way of configuration to a new "OnLine Config"
> thingie. I think our instructions and tools should take advantage of
> the new method.
Yep, and has been for quite a while.
>
> We can build some simple tools that operate against a generic OpenLDAP
> install:
>
> 1. Add the FedFS schema via an ldapmodify command
I think I also had an example of that in one of the two things I wrote.
>
> 2. Set up either an "o=fedfs" suffix and database, or add an
> "ou=fedfs" domain entry
Yeah, if you want to define a new suffix and database for an example
LDAP database I found it less problematic to blow away the existing
database and recreate the directory based configuration from a
slapd.conf. You can use ldapadd (offline add) or ldapmodify (online add)
to make changes as you wish.
Adding an additional domain to an existing tree with ldapmodify should
work fine too.
>
> 3. We already have the nsdb-update-nci tool that can take it from
> there
Yep.
>
> That might make all of this a lot easier. 1. and 2. would reside under
> the contrib/ directory in the fedfs-utils source tree.
Yep, it would be good to capture this in the source tree.
>
> What do you think?
It all sound good to me.
I've got a bit of work on for a while now so the FedFS documentation
task hasn't reached the top of the push down task stack quite yet.
Ian
More information about the fedfs-utils-devel
mailing list