[Kolab-devel] On the road to Kolab 3.0
Jeroen van Meeuwen (Kolab Systems)
vanmeeuwen at kolabsys.com
Mon Dec 12 12:01:20 CET 2011
On 2011-12-12 10:02, Del wrote:
> Thanks for you comprehensive answer.
>
Hi Del,
> On Monday, December 12, 2011 10:10:04 AM Georg C. F. Greve wrote:
>> As to the two components you were talking about, they are obviously
>> unrelated, so need to be viewed separately. The web admin is
>> hard-coded
>> against a whole set of assumptions, including a particular LDAP
>> layout &
>> schema which makes it very hard to use this in the future.
>
> Indeed. There are some patches to include Samba functionality, but
> that only
> underlines the point. I am pretty sure easy and flexible set-up og
> LDAP, if
> attained, will be a major selling point for Kolab. Low threshold
> admin tools
> for LDAP is missing in general.
>
My target is to have Kolab completely "not care" what kind of LDAP tree
you use. Whether it's OpenLDAP or something Netscape-based like Sun
Directory Server or 389 / Red Hat Directory Server, Kolab really should
not care at all.
That is to say, naturally there's parts of Kolab that do care, but it
should primarily be positioned so that it consumes the directory tree,
and only consumes it (i.e. perhaps extending to Kolab itself not even
having any write-permissions).
This would allow Kolab not only to better integrate with existing
infrastructures, but also allow Kolab to better integrate with solutions
such as GoSA, which themselves ship a web interface for user/group and
other administrative tasks. In addition, this level of agnosticity will
allow Kolab to have the LDAP tree layout (or, better yet, the
authentication and authorization database technology and model) be
defined for any use-case (think, for example, "hosted").
In order to achieve this, two things have happened or are happening as
we speak, both of which allow for great opportunity for people to
contribute;
1) I have developed pykolab[1], which already includes a Kolab daemon
to synchronize between one or more LDAP servers and one or more IMAP
servers in a manner that is compatible with a Cyrus IMAP Discrete
Murder. One of the next steps is to throw this daemon at a 2.3 Kolab
server's LDAP tree. This could be a great opportunity for people to
contribute, in code review, testing, documentation as well as
development. Part of said documentation is in the form of a draft,
informational KEP I'm trying to spend some time on every once in a
while[2].
It also includes an SASL authentication daemon, primarily for
multi-domain setups, where multi-domain is to be interpreted as multiple
"hosted" domains more so then a domain example.net corresponding with
the same LDAP tree in use for example.org (which I consider a 'domain
alias', and not so much a 'separate domain' if you know what I mean).
Furthermore, a tool-chain is provided
2) The Kolab Web Administration Panel is going to be split in two major
parts, one of which can be made available to a Kolab Groupware
deployment separately from the other. These parts are the client-facing
web interface ("clickydiclick"), which is "optional", and an API[3].
These two components are subject to the full flux of design and
development today, and could also be a great opportunity for people to
contribute, again in code review[4], testing, documentation[4] as well
as development.
A third topic is popping up on the horizon as well. Its title is
configuration management. I want to re-think the template-based
mechanism, and I want us to consider a series of scalable, secure
configuration management suites out there, like Puppet, Chef, CFEngine,
and others. I myself am strictly (biased towards) Puppet, but I also
want to explore opportunities to make it so that a simple, small,
single-server Kolab deployment does not immediately require one to get
familiar with the nitty and gritty details of a fully featured
configuration management suite. This too is a topic in full flux right
now, and help in designing, developing, testing and documenting one or
more solutions could again be great opportunity for people to
contribute.
Kind regards,
Jeroen van Meeuwen
[1] http://git.kolab.org/pykolab
[2] http://wiki.kolab.org/User:Kanarip/Draft:Kolab_Account_Types
[3]
http://wiki.kolab.org/index.php?title=User:Bruederli/Draft:Kolab_Webadmin_API
[4] (temporary location) http://git.klab.cc/vanmeeuwen/kolab-wap/
[5]
http://hosted.kolabsys.com/~vanmeeuwen/kolab-docs/en-US/Kolab_Groupware/2.4/html/Architecture_and_Design/sect-Architecture_and_Design-Administration_Panel-Web_Administration_Panel_API.html
--
Senior Engineer, Kolab Systems AG
e: vanmeeuwen at kolabsys.com
t: +44 144 340 9500
m: +44 74 2516 3817
w: http://www.kolabsys.com
pgp: 9342 BF08
More information about the devel
mailing list