Hello Christian,
Thank you for your responses.
My responses below in this email.
Le 05/01/2018 à 12:19, Christian Mack ([email protected]) a
écrit :
Am 28.12.2017 um 19:37 schrieb Eric DUVAL ([email protected]):
Hello,
I use SOGo3 on 2 servers (master/master).
DNS configured in roundrobin. (webmail.example.com with 2 IPs).
In front of SOGo servers I have 2 haproxy.
Do you use 2 IPs in order to loadbalance between the two haproxys?
Yes I use 2 IPs + keepalived for haproxy server.
Upstream I have FWs that are also loadbalancer between two datacenters.
Else I would use one service IP and switch that between the haproxys in
case of failure/updates/replacement e.g. with heartbeat.
Beware:
There are still clients out there, who can not handle 2 IPs and will
therefore only use the first one all the time.
Yes you are right, but my DNS returns IP failover which allows in case
of failure of a datacenter to switch to the second datacenter without
changing the DNS responses.
My infrastructures are on two datacenters in active/active mode.
Mencached is used on each SOGo server.
Yes, that is the fastest solution.
Is it ok to share the mysql database between the 2 SOGo servers?
Yes, of course, just make sure it can handle the load.
Else you would need a synchronisation between two mysql servers (cluster
mode).
Finally I preferred the MySQL master / master replication solution
between the two SOGo / MySQL servers. For the moment I am in the testing
phase.
I have a cache problem on the 2 servers: "[SOGoCache]> an error occurred
when caching value for key ... "SERVER HAS FAILED AND IS DISABLED UNTIL
TIMED RETRY" Do you have an idea to fix this problem?
Does memcached run at all?
Which memcached settings do you have in sogo.conf?
At the moment I have disabled the cache the time of the development.
I will refine the cache configuration as you recommend.
What are the best practices for using 2 SOGo servers (master / master)?
As you can not predict, which of the servers the user uses, you have to
share temporary Information between the two server e.g. via NFS too.
By "temporary Information" I mean the content of SOGoMailSpoolPath and
NGMimeBuildMimeTempDirectory in sogo.conf.
The first is used for storing new emails and their attachments in order
to transcode them into MIME format.
The second is used to temporarily store file uploads till they are
completed.
I take note of the two parameters SOGoMailSpoolPath and
NGMimeBuildMimeTempDirectory. I did not pay attention. Thank you.
Alternative would be to use source IP pinning, which is more complicated.
The haproxy are configured to, whenever possible, send the client always
to the same server, during a session.
Kind regards,
Christian Mack
--
[email protected]
https://inverse.ca/sogo/lists