cyrus-murder: backend and frontend/proxy on the same machine?

2007-12-21 Thread Ingo Steuwer
Hi

I'm evaluating cyrus-murder with cyrus 2.2 (sources from debian etch) using 
the documentation from http://cyrusimap.web.cmu.edu/imapd/install-murder.html 
and the twiki. Thanks to the good documentation the setup of some basic 
functionality was straight forward.

I'd like to have two servers both as backend and frontend server. Th clients 
shold connect to server which holds the users backend and see also shared 
folders from the other server.

Is this scenario possible? The documentation describes an installation of 
frontend-servers without a local backend, but on the other hand it doesn't 
say that it is impossible.

Regards
Ingo Steuwer

-- 
Ingo Steuwer   Projektmanagement[EMAIL PROTECTED]
Univention GmbHLinux for your Business  fon: +49 421 22 232-43
Mary-Somerville-Str.1  28359 Bremen fax: +49 421 22 232-99
   http://www.univention.de

Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: cyrus-murder: backend and frontend/proxy on the same machine?

2007-12-21 Thread Michael Menge
Hi,

i don't know if it's possible with Cyrus 2.2, but it is with 2.3,
look for unified murder

Quoting Ingo Steuwer <[EMAIL PROTECTED]>:

> Hi
>
> I'm evaluating cyrus-murder with cyrus 2.2 (sources from debian etch) using
> the documentation from http://cyrusimap.web.cmu.edu/imapd/install-murder.html
> and the twiki. Thanks to the good documentation the setup of some basic
> functionality was straight forward.
>
> I'd like to have two servers both as backend and frontend server. Th clients
> shold connect to server which holds the users backend and see also shared
> folders from the other server.
>
> Is this scenario possible? The documentation describes an installation of
> frontend-servers without a local backend, but on the other hand it doesn't
> say that it is impossible.
>
> Regards
> Ingo Steuwer
>
> --
> Ingo Steuwer   Projektmanagement[EMAIL PROTECTED]
> Univention GmbHLinux for your Business  fon: +49 421 22 232-43
> Mary-Somerville-Str.1  28359 Bremen fax: +49 421 22 232-99
>http://www.univention.de
> 
> Cyrus Home Page: http://cyrusimap.web.cmu.edu/
> Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
> List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
>




M.Menge Tel.: (49) 7071/29-70316
Universitaet Tuebingen  Fax.: (49) 7071/29-5912
Zentrum fuer Datenverarbeitung  mail:  
[EMAIL PROTECTED]
Waechterstrasse 76
72074 Tuebingen


Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: cyrus-murder: backend and frontend/proxy on the same machine?

2008-01-03 Thread Janne Peltonen
On Fri, Dec 21, 2007 at 02:04:26PM +0100, Michael Menge wrote:
> Hi,
> 
> i don't know if it's possible with Cyrus 2.2, but it is with 2.3,
> look for unified murder

It is also very much possible to run two separate instances of Cyrus on
one server, with different imapd.confs and cyrus.confs and spool
directories and configuration directories and what-have-you... sieve
directories, which typically reside within the configuration tree. Look
for the -C option for - well, every cyrus executable :)

I've had a system running multiple Cyrus instances, frontends and
backends, on same physical servers at the same time in production for
half a year now. Works perfectly.

The unified murder works less than perfectly, or at least did in version
2.3.8. For instance, copying messages from a folder in the mailstore you were
connected to a remote folder was impossible, as was copying messages
the other way round. (Copying messages between local folders or between
remote folders did work.)


--Janne Peltonen
University of Helsinki

> 
> Quoting Ingo Steuwer <[EMAIL PROTECTED]>:
> 
> > Hi
> >
> > I'm evaluating cyrus-murder with cyrus 2.2 (sources from debian etch) using
> > the documentation from 
> > http://cyrusimap.web.cmu.edu/imapd/install-murder.html
> > and the twiki. Thanks to the good documentation the setup of some basic
> > functionality was straight forward.
> >
> > I'd like to have two servers both as backend and frontend server. Th clients
> > shold connect to server which holds the users backend and see also shared
> > folders from the other server.
> >
> > Is this scenario possible? The documentation describes an installation of
> > frontend-servers without a local backend, but on the other hand it doesn't
> > say that it is impossible.
> >
> > Regards
> > Ingo Steuwer
> >
> > --
> > Ingo Steuwer   Projektmanagement[EMAIL PROTECTED]
> > Univention GmbHLinux for your Business  fon: +49 421 22 232-43
> > Mary-Somerville-Str.1  28359 Bremen fax: +49 421 22 232-99
> >http://www.univention.de
> > 
> > Cyrus Home Page: http://cyrusimap.web.cmu.edu/
> > Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
> > List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
> >
> 
> 
> 
> 
> M.Menge Tel.: (49) 7071/29-70316
> Universitaet Tuebingen  Fax.: (49) 7071/29-5912
> Zentrum fuer Datenverarbeitung  mail:  
> [EMAIL PROTECTED]
> Waechterstrasse 76
> 72074 Tuebingen
> 
> 
> Cyrus Home Page: http://cyrusimap.web.cmu.edu/
> Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
> List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
> 

-- 
Janne Peltonen <[EMAIL PROTECTED]>

Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html


Re: cyrus-murder: backend and frontend/proxy on the same machine?

2008-01-23 Thread Alexey Lobanov
Hi all

02.01.2008 11:58, Janne Peltonen пишет:

> On Fri, Dec 21, 2007 at 02:04:26PM +0100, Michael Menge wrote:

>> Hi,
>>
>> i don't know if it's possible with Cyrus 2.2, but it is with 2.3,
>> look for unified murder

I met the following fatal problem with "unified" mode: "ctl_mboxlist -m"
is not able to distinguish local and imported mailboxes at the
slave+backend server, and every time pushes everything back to the
Master. As the result, the Master database is duplicated with every
slave resyncing and is wasted with "multistage" mailbox locations like
"obolon.kiev.rct-int!obolon.kiev.rct-int!imap.office.rct-int!default aal".

Well, I believe that it is possible to use ctl_mboxlist only once in
life, upon the murder initial assembling - but this way seems to be just
unreliable.

> 
> It is also very much possible to run two separate instances of Cyrus on
> one server, with different imapd.confs and cyrus.confs and spool
> directories and configuration directories and what-have-you... sieve
> directories, which typically reside within the configuration tree. Look
> for the -C option for - well, every cyrus executable :)

Right now I am testing this mode, and it seems to be much better.

# pushing the real backend database to the Master
mupdatepush cmd="/usr/local/cyrus/bin/ctl_mboxlist -m -a -C /etc/imapd.conf"

# backend is available from LAN/VPN only
imap cmd="imapd -p 2" listen="10.0.3.1:imap" prefork=2 maxchild=200

# frontend mupdate communicates with master via VPN
# and uses own configdirectory
mupdate cmd="mupdate  -C /etc/imap_frontend.conf" listen=10.0.3.1:3905
prefork=1

# frontend imap is visible from Internet via SSL and
# proxies connections to required internal servers
imaps cmd="proxyd -s  -C /etc/imap_frontend.conf" listen="imaps"
prefork=0 maxchild=100

See also http://www-user.tu-chemnitz.de/~fri/cyrus-imapd-patches/ for
gateway mode for frontends.

Alexey


Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html

Re: cyrus-murder: backend and frontend/proxy on the same machine?

2008-02-12 Thread Alexey Lobanov
Hello all.

I must conclude that all "combined" configurations of Cyrus Murder
servers do not work. Or, more exactly, I did not manage to make them
work despite of many hours of tests and meditation.

"frontend+backend" combination (aka "config: unified") seems to be
completely broken. It is really unable to distinguish local and remote
mailboxes in the single combined database and pushes everything back to
master, with endless database growth. I wrote about it few weeks ago in
same thread.

"frontend+master" combination behaves much better. Nearly all things
work fine: folder access, folder renaming, sieve access. The only broken
thing is subfolder mailbox creation; any user-level "Create" command at
a frontend is not forwarded to a backend but is denied instantly with
"Invalid partition" diagnostics. Basic debugging shows that the
partition is really invalid because proxyd tries to interpret a
networked "server!partition" path as a local partition name and to find
this name in local imapd.conf.

Feb 11 12:58:05 mail imap[18506]: Partition pharmacy.office.rct-int!default

Feb 11 12:58:05 mail imap[18506]: IOERROR: creating directory (null):
Permission denied

So, it looks like that the only working solution is based on "-C" option
and virtual interfaces or other tricks. If we really need to combine
functions in one box, we should use different "imapd*.conf" and
different "configdirectory:" for all three instances - frontend, backend
and master. After that everything works fine.

My setup:

Master+Frontend: two indepentent mupdate instances, one imapd.

SERVICES {
mupdate_master cmd="/usr/local/cyrus/bin/mupdate -m -C
/etc/imap_master.conf" listen=10.0.0.2:3905 prefork=1
mupdate   cmd="/usr/local/cyrus/bin/mupdate -C
/etc/imap_frontend.conf" listen=10.0.0.4:3905 prefork=1
imapcmd="/usr/local/cyrus/bin/proxyd -s -C
/etc/imap_frontend.conf" listen="imaps" prefork=2
sieve   cmd="timsieved -C /etc/imap_frontend.conf"
listen="10.0.0.4:sieve" prefork=0 maxchild=100
}

Frontend+backend: two independent imapd instances, one mupdate.

SERVICES {
imapcmd="imapd -p 2" listen="10.0.4.1:imap"
prefork=3 maxchild=200
imaps   cmd="proxyd -s -C /etc/imap_frontend.conf"
listen="imaps" prefork=1 maxchild=100
mupdate   cmd="mupdate -C /etc/imap_frontend.conf"
listen=10.0.4.1:3905 prefork=1
lmtpcmd="lmtpd -a" listen="10.0.4.1:24" prefork=0
maxchild=20
}


Tested with Thunderbird and Squirrelmail clients.

NB: In this specific setup lmtp does not use murder capabilities because
MTA always knows exact backend from LDAP directory. And the whole
purpose of Murder is to join shared folders from different servers and
locations into one list in one IMAP account. No any "load balance", etc.

Alexey



Cyrus Home Page: http://cyrusimap.web.cmu.edu/
Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html