I have cc'd the sparks-discuss alias so others can participate in this 
discussion as well.

As I read this thread, this is a request to extend naming services to provide a
configurable on-disk cache of naming service data.

I say configurable, because we have had a couple of requests for an on-disk 
cache to
provide better response to naming data when the network services are down, but 
this is
the first we have seen of a request to potentially download an entire LDAP DIT
for mobile caching and to enable disconnected activity of this sort.

This request of course has the potential of caching & managing (literally) 
gigabytes of data
and 100,000's of entries (at least in large configurations that we are aware 
of) on a mobile
box.

With the delivery of the sparks project, we now have the potential in naming 
services
to deliver an on disk cache but we have not scoped out the effort at this time.

Beyond the basics of caching the contents of obvious name lookup data there are
the login amd pam considerations that are not easily addressed.

In sparks per-user mode, pam_krb is required, implying the need to have an 
active
kerberos kdc etc. in order to login, and potentially that kdc might require a
directory server.

Likewise, if pam_ldap is deployed login authentication is done in the directory 
server
not on the client, so no amount of caching of the directory data will enable a 
login
in a disconnected environment, unless the mobile environment is, for instance, 
running
the directory server in a zone on the box.

Running a local directory server may be more suitable for your needs and it 
requires
no additional modification of Solaris (Nevada or s10u4) today.

I current have a toshiba m5 running SNV_65 on my desk that is configured with:

the global zone running in a files only mode, using NWAM & punchin to
allow me to switch between my wireless or LAN connection & run either
on my home LAN or on Sun's internal VPN.

I also have:

1 zone running a JES DS 6.0 DS server that I can boot as needed
1 zone setup as an LDAP client used for testing various LDAP environments
and I create/destroy other zones for NIS, NIS+ or other testing as needed.

Currently my DS 6.0 server has a minimal testing DIT, but it could if I chose
(and IT agreed) :) be configured to be a replica of a much larger environment.

IE in theory I could configure the DS to replicate the entire Sun naming service
DIT or some subtree needed for mobile use downloading the entire naming
environment or some subportion as desired.

When needed, I either boot the needed zones for LDAP usage and/or potentially
I could configure  global zone to use the local DS for naming lookups.

Since JES DS has a pretty sophisticated replication environment, I'm sure it can
be configured to synchronize with the DS master when the mobile unit decides to 
do
a pull type operation (by manual intervention) or at some periodic interval 
when a
connection to the master can be made.

The machines LDAP configuration could be set up to either use the master DS as 
the
primary and the local DS as the fallback or the reverse depending on the 
desires of the
situation.  Thereby making the local DS either a secondary service or a local 
cache.

I defer the to TX team about how/if such a configuration could be enabled when
TX is enabled, because I know zones in TX are behaviorally different than zones
out of TX, but I suspect with some thought and potentially a whole lot less 
work,
this solution might deliver what is needed today, versus at some point in the 
future
when we might be able to complete an on-disk DB cache solution in naming.

I hope that helps,
Doug.
 
 
This message posted from opensolaris.org

Reply via email to