Re: [Dovecot] remote hot site, IMAP replication or cluster over WAN

2010-11-03 Thread Stan Hoeppner
Stefan G. Weichinger put forth on 11/2/2010 1:15 PM:

 A bit off-topic, sorry ... I want to set up a hot backup dovecot in a
 VM, aside the physical server, so I am very interested in the best
 practise to do so ...

There isn't one.  If there was Timo would have pointed you to the wiki.

Doing server fail over is inherently problematic for a large number of
reasons.  The easiest way to implement it is to literally turn on the
backup server (power on) when the primary fails.  The backup comes up
with the same hostname and IP address as the primary and mounts the same
physical storage.

The storage must be either a SAN LUN, NFS directories, or a local disk
that has been mirrored over the network during normal operations.  But,
you can't have the same hostname and IP if the machine is running
allowing the mirroring to take place.

Thus, for a standby server, it must be powered off and take ownership
of the storage when powered on.  You _can_ do realtime mirroring to the
standby while it's running, but then you have some really complex issues
to deal with as far as hostname and IP assignments when the primary host
dies and you have to take over the name and IP on the spare server.
This can be done with a reboot and using alternate config files, and
might actually work better in a virtual environment than with a physical
machine as VM guests tend to boot faster than physical hosts due to
things like long pauses caused by hardware BIOS routines.

The key to all of the above is proper identification of primary host
failure.  The biggest problem with this setup is the two brains issue.
 There are a number of network scenarios that can cause your backup
server or monitoring software to think the primary host is offline when
it's really not.  The secondary thus comes up, and now you have two
hosts of the same name and IP address on the network.  This situation
can cause a number of serious problems


IMO, the best way to do high availability is to use an active/active
cluster of any number of nodes you see fit to meet your performance and
reliability needs.  All hosts are live all the time and share he load.
When one goes down client performance may simply drops a bit, but that's
about the extent of the downside.

It's inherently more straight forward to setup than the previous
scenario, especially if you're using NFS storage.  In this case, you'd
build two identical Dovecot servers and have each mount the same NFS
mail directory.  Read the list archives for ways to mitigate the index
file issue.  Timo wrote a new director specifically to meet this need.

Two other options for the shared storage are a fiber channel or iSCSI
SAN, or using DRBD to mirror disks (or logical devices--RAID) over the
network.  Both of these solutions require using a cluster filesystem
such as GFS2.  These can be quite a bit more difficult to setup and get
working properly than the NFS method, especially for less experienced
sysadmins.  They can also be more difficult to troubleshoot, especially
for sysadmins lacking sufficient knowledge or aptitude with regard to
storage hardware and low level Linux device drivers.

Hope this helps you a bit.  You probably won't find a how to document
that spoon feeds you the steps for an exact build/setup of this.  If you
choose the DRBD route you might be able to get Eric to write you up a
step-by-step of how he did his two node DRBD Dovecot cluster.  Maybe
he's already written one. :)

-- 
Stan


Re: [Dovecot] remote hot site, IMAP replication or cluster over WAN

2010-11-03 Thread Brandon Davidson
Stan,

On 11/1/10 7:30 PM, Stan Hoeppner s...@hardwarefreak.com wrote:
 1.  How many of you have a remote site hot backup Dovecot IMAP server?

+1
 
 2.  How are you replicating mailbox data to the hot backup system?
 C.  Other

Netapp Fabric MetroCluster, active IMAP/POP3 nodes at both sites mounting
storage over NFS, and active/standby hardware load balancers in front.

Probably more than most folks can afford, but it's pretty bulletproof.

-Brad



Re: [Dovecot] remote hot site, IMAP replication or cluster over WAN

2010-11-03 Thread Stefan G. Weichinger
Am 03.11.2010 07:17, schrieb Stan Hoeppner:

 Hope this helps you a bit. 

Thanks a lot, Stan, for this explanation ... !

Stefan


Re: [Dovecot] remote hot site, IMAP replication or cluster over WAN

2010-11-03 Thread Johan Hendriks

Op 3-11-2010 7:17, Stan Hoeppner schreef:

Stefan G. Weichinger put forth on 11/2/2010 1:15 PM:


A bit off-topic, sorry ... I want to set up a hot backup dovecot in a
VM, aside the physical server, so I am very interested in the best
practise to do so ...

There isn't one.  If there was Timo would have pointed you to the wiki.

Doing server fail over is inherently problematic for a large number of
reasons.  The easiest way to implement it is to literally turn on the
backup server (power on) when the primary fails.  The backup comes up
with the same hostname and IP address as the primary and mounts the same
physical storage.

The storage must be either a SAN LUN, NFS directories, or a local disk
that has been mirrored over the network during normal operations.  But,
you can't have the same hostname and IP if the machine is running
allowing the mirroring to take place.

Thus, for a standby server, it must be powered off and take ownership
of the storage when powered on.  You _can_ do realtime mirroring to the
standby while it's running, but then you have some really complex issues
to deal with as far as hostname and IP assignments when the primary host
dies and you have to take over the name and IP on the spare server.
This can be done with a reboot and using alternate config files, and
might actually work better in a virtual environment than with a physical
machine as VM guests tend to boot faster than physical hosts due to
things like long pauses caused by hardware BIOS routines.

The key to all of the above is proper identification of primary host
failure.  The biggest problem with this setup is the two brains issue.
  There are a number of network scenarios that can cause your backup
server or monitoring software to think the primary host is offline when
it's really not.  The secondary thus comes up, and now you have two
hosts of the same name and IP address on the network.  This situation
can cause a number of serious problems


IMO, the best way to do high availability is to use an active/active
cluster of any number of nodes you see fit to meet your performance and
reliability needs.  All hosts are live all the time and share he load.
When one goes down client performance may simply drops a bit, but that's
about the extent of the downside.

It's inherently more straight forward to setup than the previous
scenario, especially if you're using NFS storage.  In this case, you'd
build two identical Dovecot servers and have each mount the same NFS
mail directory.  Read the list archives for ways to mitigate the index
file issue.  Timo wrote a new director specifically to meet this need.

Two other options for the shared storage are a fiber channel or iSCSI
SAN, or using DRBD to mirror disks (or logical devices--RAID) over the
network.  Both of these solutions require using a cluster filesystem
such as GFS2.  These can be quite a bit more difficult to setup and get
working properly than the NFS method, especially for less experienced
sysadmins.  They can also be more difficult to troubleshoot, especially
for sysadmins lacking sufficient knowledge or aptitude with regard to
storage hardware and low level Linux device drivers.

Hope this helps you a bit.  You probably won't find a how to document
that spoon feeds you the steps for an exact build/setup of this.  If you
choose the DRBD route you might be able to get Eric to write you up a
step-by-step of how he did his two node DRBD Dovecot cluster.  Maybe
he's already written one. :)

Hello, i am working primarly with FreeBSD, and the latest release has a 
service called HAST.

See it as a mirrored disk over the network.
You can install both machines with dovecot, and use the hast disk as the 
data storage.
With CARP in the mix, when the master machine fails, it starts dovecot 
on the slave.

This way you have a failover without user interference.

I did not test it, but i hope when time permits, i can try to start 
testing this setup.


regards.
Johan Hendriks









Re: [Dovecot] remote hot site, IMAP replication or cluster over WAN

2010-11-03 Thread Stan Hoeppner
Johan Hendriks put forth on 11/3/2010 3:32 AM:

 Hello, i am working primarly with FreeBSD, and the latest release has a
 service called HAST.
 See it as a mirrored disk over the network.
 You can install both machines with dovecot, and use the hast disk as the
 data storage.
 With CARP in the mix, when the master machine fails, it starts dovecot
 on the slave.
 This way you have a failover without user interference.

1.  How do you automatically redirect clients to the IP address of the
slave when the master goes down?  Is this seamless?  What is the
duration of server down seen by clients?  Seconds, minutes?

2.  When you bring the master back up after repairing the cause of the
failure, does it automatically and correctly resume mirroring of the
HAST device so it obtains the new emails that were saved to the slave
while it was offline?  How do you then put the master back into service
and make the slave offline again?

-- 
Stan


Re: [Dovecot] remote hot site, IMAP replication or cluster over WAN

2010-11-03 Thread Per Jessen
Stan Hoeppner wrote:

 1.  How do you automatically redirect clients to the IP address of the
 slave when the master goes down?  Is this seamless?  What is the
 duration of server down seen by clients?  Seconds, minutes?

Doesn't this work as a regular linuxHA setup with shared storage?  The
primary dies, the secondary reconfigures its interface to work as the
primary, all done. AKA IP-takeover I believe. 


/Per Jessen, Zürich



Re: [Dovecot] remote hot site, IMAP replication or cluster over WAN

2010-11-03 Thread ml
Stan Hoeppner wrote:
 IMO, the best way to do high availability is to use an active/active 
 cluster of any number of nodes you see fit to meet your performance 
 and reliability needs.  All hosts are live all the time and share he load.
 When one goes down client performance may simply drops a bit, but 
 that's about the extent of the downside.
 
 It's inherently more straight forward to setup than the previous 
 scenario, especially if you're using NFS storage.  In this case, you'd 
 build two identical Dovecot servers and have each mount the same NFS 
 mail directory.  Read the list archives for ways to mitigate the index 
 file issue.  Timo wrote a new director specifically to meet this need.
 
 Two other options for the shared storage are a fiber channel or iSCSI 
 SAN, or using DRBD to mirror disks (or logical devices--RAID) over the 
 network.  Both of these solutions require using a cluster filesystem 
 such as GFS2.  These can be quite a bit more difficult to setup and 
 get working properly than the NFS method, especially for less 
 experienced sysadmins.  They can also be more difficult to 
 troubleshoot, especially for sysadmins lacking sufficient knowledge or 
 aptitude with regard to storage hardware and low level Linux device
drivers.


Stan, what do you think about GlusterFS or Ceph? I am looking for a high
available AND scalable solution based on distributed/replicated storages
(maildirs).
I am not talking about a simple NFS export or something like this.

A real-time replication managed by dovecot would surely be the best way to
keep data in sync  and balance clients.

--
Sven






Re: [Dovecot] remote hot site, IMAP replication or cluster over WAN

2010-11-03 Thread Johan Hendriks

Op 3-11-2010 12:16, Stan Hoeppner schreef:

Johan Hendriks put forth on 11/3/2010 3:32 AM:


Hello, i am working primarly with FreeBSD, and the latest release has a
service called HAST.
See it as a mirrored disk over the network.
You can install both machines with dovecot, and use the hast disk as the
data storage.
With CARP in the mix, when the master machine fails, it starts dovecot
on the slave.
This way you have a failover without user interference.

1.  How do you automatically redirect clients to the IP address of the
slave when the master goes down?  Is this seamless?  What is the
duration of server down seen by clients?  Seconds, minutes?

2.  When you bring the master back up after repairing the cause of the
failure, does it automatically and correctly resume mirroring of the
HAST device so it obtains the new emails that were saved to the slave
while it was offline?  How do you then put the master back into service
and make the slave offline again?


The servers work with an virtual ip.
Carp does this, i use it for the firewalls on our location.
Server 1 has ip adres 192.168.1.1, server 2 gets 192.168.1.2, and the 
virtual addres is 192.168.1.3
The clients connect to the virtual address 192.168.1.3, and contact the 
machine wich is master at that moment.


I do not know how the rebuild goes with hast, if the master provider 
goes down, like i said, i need to try and test it.

Maybe an question on the freebsd-fs mailing list will answer this.

More about HAST http://wiki.freebsd.org/HAST
More about Carp http://www.freebsd.org/doc/nl/books/handbook/carp.html

regards,
Johan Hendriks



Re: [Dovecot] remote hot site, IMAP replication or cluster over WAN

2010-11-03 Thread Per Jessen
Johan Hendriks wrote:

 The servers work with an virtual ip.
 Carp does this, i use it for the firewalls on our location.
 Server 1 has ip adres 192.168.1.1, server 2 gets 192.168.1.2, and the
 virtual addres is 192.168.1.3
 The clients connect to the virtual address 192.168.1.3, and contact
 the machine wich is master at that moment.

Yes, this is a normal Linux-HA setup. 


/Per Jessen, Zürich



Re: [Dovecot] remote hot site, IMAP replication or cluster over WAN

2010-11-03 Thread Eric Jon Rostetter

Quoting Stan Hoeppner s...@hardwarefreak.com:


Johan Hendriks put forth on 11/3/2010 3:32 AM:


Hello, i am working primarly with FreeBSD, and the latest release has a
service called HAST.
See it as a mirrored disk over the network.


This is similar to the DRBD solution.


With CARP in the mix, when the master machine fails, it starts dovecot
on the slave.
This way you have a failover without user interference.


This is similar to heartbeat, or RHCS, etc.


1.  How do you automatically redirect clients to the IP address of the
slave when the master goes down?  Is this seamless?  What is the
duration of server down seen by clients?  Seconds, minutes?


Usually there is a floating IP that the clients used.  Which ever
server is active has this IP assigned (usually in addition to another
IP used for management and such).

The transition time depends on how the master goes down.  If you do
an administrative shutdown or transfer, it is usually just a fraction
of a second for the change to take affect, and maybe a bit longer for
the router/switch to get the new MAC address for the IP and route things
correctly.

If the primary crashes/dies, then it is usually several seconds before
the secondary confirms the primary is in trouble, makes sure it is really
down (STOMITH), and takes over the IP, mounts any needed filesystems,
and starts any needed services...  In this case, the arp/MAC issue isn't
really a problem because the transition takes a longer time.


2.  When you bring the master back up after repairing the cause of the
failure, does it automatically and correctly resume mirroring of the
HAST device so it obtains the new emails that were saved to the slave
while it was offline?  How do you then put the master back into service
and make the slave offline again?


DRBD does (or at least can, it is configurable).  Sometimes you might
just do role reversal (old primary becomes secondary, old secondary stays
the primary).  Other times you might have the original primary become
primary again (say, if the original primary has better hardware, etc).

So, these things really depend on the use case, and the failure case...
And are usually configurable. :)

I can give two personal examples.  First I have a file server, which is
active-passive cluster.  Since the hardware is identical, when one fails,
it is promoted to primary.  When the dead one comes back, it stays as
secondary.  It is all automatic via RHCS and DRBD using ext3.  Always
feels like I'm wasting a machine, but it is rock solid...

Second I have a mail cluster which is active-active (still RHCS but with
DRBD+GFS2).  When both nodes are up, one does the pop/imap, mailing list
web/cli/email interface, and slave LDAP services, while the other node
does the mailing list processing, SMTP processing, anti-virus/spam
processing, etc.  When one machine goes down, the services on that
machine migrate automatically to the other machine.  When the machine
comes back up, the services migrate back to their home machine.

Time for failover is a second or two for an admin failover, and for a
crash/etc maybe 15-30 seconds max for the fileserver, and 10-15 seconds
for the mail server.  During the failover, connections may hang or fail,
but most clients just retry the connection and get the new machine without
user intervention (or in the case of email clients, sometimes they
annoying ask for the password again, but that is not too bad).  I've never
had anyone contact me during either type of failover, which makes me
think they either don't notice, or they write it off as a normal network
hiccup kind of thing (well, they did contact me once, when the failover
failed, and the service went completely down, but that was my fault).

So, again, the answer is, as always, it depends...


--
Stan



--
Eric Rostetter
The Department of Physics
The University of Texas at Austin

This message is provided AS IS without warranty of any kind,
either expressed or implied.  Use this message at your own risk.



Re: [Dovecot] remote hot site, IMAP replication or cluster over WAN

2010-11-03 Thread Eric Jon Rostetter

Quoting Johan Hendriks joh.hendr...@gmail.com:

I do not know how the rebuild goes with hast, if the master provider  
goes down, like i said, i need to try and test it.

Maybe an question on the freebsd-fs mailing list will answer this.

More about HAST http://wiki.freebsd.org/HAST


Sounds/looks a lot like DRBD.  The config snip shown is about the same for
both..  But I don't think it is DRBD, but rather based on DRBD...

DRBD generally (configurable) will restart a rebuild as soon as a host
comes up and contacts the other host(s), assuming it can.  If it can't
for any reason,  then it of course sits and waits for manual intervention
or for something to change so it can continue.

--
Eric Rostetter
The Department of Physics
The University of Texas at Austin

This message is provided AS IS without warranty of any kind,
either expressed or implied.  Use this message at your own risk.



Re: [Dovecot] remote hot site, IMAP replication or cluster over WAN

2010-11-02 Thread Patrick Nagel
Hi,

On 2010-11-02 10:30, Stan Hoeppner wrote:
 1.  How many of you have a remote site hot backup Dovecot IMAP server?

Only local (same room, different box). Copying to a remote location in
irregular intervals.

 2.  How are you replicating mailbox data to the hot backup system?
 A.  rsync
 B.  DRBD+GFS2
 C.  Other

C. - rdiff-backup (versioned).

Patrick.

-- 
Key ID: 0x86E346D4http://patrick-nagel.net/key.asc
Fingerprint: 7745 E1BE FA8B FBAD 76AB 2BFC C981 E686 86E3 46D4



signature.asc
Description: OpenPGP digital signature


Re: [Dovecot] remote hot site, IMAP replication or cluster over WAN

2010-11-02 Thread Stefan G. Weichinger
Am 02.11.2010 03:30, schrieb Stan Hoeppner:
 Taking a survey.
 
 1.  How many of you have a remote site hot backup Dovecot IMAP server?
 
 2.  How are you replicating mailbox data to the hot backup system?
 A.  rsync
 B.  DRBD+GFS2
 C.  Other

A bit off-topic, sorry ... I want to set up a hot backup dovecot in a
VM, aside the physical server, so I am very interested in the best
practise to do so ...

Stefan


[Dovecot] remote hot site, IMAP replication or cluster over WAN

2010-11-01 Thread Stan Hoeppner
Taking a survey.

1.  How many of you have a remote site hot backup Dovecot IMAP server?

2.  How are you replicating mailbox data to the hot backup system?
A.  rsync
B.  DRBD+GFS2
C.  Other

Thanks.

-- 
Stan