[Users] Zimbra doing similar like Exchange DAG

Randy Leiker randy at skywaynetworks.com
Wed Nov 7 06:28:59 CET 2018


Naisiew, 


When running an active/passive Zimbra mailbox server configuration with external storage (Gluster, Ceph, etc.), there is usually no issue with the external storage maintaining a consistent replica at the storage layer. The issue becomes consistency at the application layer, which is within the Zimbra mailbox service itself. As a simple example, lets say that you setup two Zimbra mailbox servers, mb1 and mb2, and they both have access to /opt on GlusterFS, but only one mailbox server is powered on, while the other is powered down, on standby. Then one day, mb1 goes offline due to a hardware failure. You then go to power on mb2 & start the Zimbra services from GlusterFS where you have /opt mounted. Your mb2 server will treat the mailbox data as a crash consistent copy of the mailbox data, which is what I was describing in my last email. This is because mb1 (when it failed) didn't cleanly shutdown. 


As another example, if you have two mailbox servers, mb1 and mb2, and you need to do hardware maintenance on mb1, you could do a normal, planned shutdown of mb1, then when it finishes shutting down normally, you could then safely power up mb2, and it would work fine. A key requirement to making this work is that both mb1 & mb2 would have to have the exact same networking configuration (host name and IP address) at the operating system level to be seen as the same email server from your user's email clients. 




This is not the only way to accomplish an active/passive mailbox configuration, but it should give you some helpful pointers in the right direction to get you started. 






Randy Leiker ( randy at skywaynetworks.com ) 
Skyway Networks, LLC 
1.800.538.5334 / 913.663.3900 Ext. 100 
https://skywaynetworks.com 

----- Original Message -----

From: "Naisiew Yeak" <yeak at md.com.my> 
To: randy at skywaynetworks.com 
Cc: "users" <users at lists.zetalliance.org> 
Sent: Tuesday, November 6, 2018 9:54:23 PM 
Subject: Re: [Users] Zimbra doing similar like Exchange DAG 


Hi Randy, 


Thanks for sharing. 


1. The GlusterFS can't ensure consistent replica between nodes? I actually hope that it will. Anyway I will test for Zimbra usage. Will report findings. 
2. Zimbra X direction is out of my league for now. If there is no choice I will have to pick it up and learn it. 
3. Yes I am thinking of similar idea where MySQL is one component by itself with cluster setup. But all this setup tear Zimbra design away. Upgrade will become an issue. I guess this is what Zimbra X is trying to solve. 


Anyone has good answer how to answer those people comparing Zimbra to Exchange DAG? Simply say we are not ready? Work In Progress? 


My current answer: DAG is resource hungry. Zimbra is slim. However we are working toward similar active/active mailstore and keep the resources low. Can? 


Any other idea? 


Thanks. 




On Wed, Nov 7, 2018 at 1:27 AM Randy Leiker < randy at skywaynetworks.com > wrote: 





Hi Naisiew, 


It sounds like you are referring to two different configurations: an active/passive mailbox server (mb1 fails over to mb1a), and an active/active mailbox server. For the active/passive mailbox server, assuming that you use the default Zimbra install location of /opt/zimbra, and have /opt mounted from network storage, in this case GlusterFS, that should work, but you should be aware that when the day comes that you need to do a fail-over from mb1 to mb1a (assuming it's an unplanned fail over), what you will end up with is a crash-consistent fail-over. This means that when mb1a mounts the /opt volume & begins attempting to start-up the various Zimbra mailbox services, you will see complaints in the log files, such as /opt/zimbra/log/mysql_errors & /opt/zimbra/log/mailbox.log about a recovery from an unexpected shutdown. This does not always work, and sometimes Zimbra services, particularly the mailboxd service, fails to start because MariaDB cannot recover or there is corrupt data in one or more mailboxes. The likelihood of recovery depends on how busy you rmailbox server is. The more busy it is with disk writes, the more likely it is it may not be able to self-recover from a crash consistent copy of the /opt data on GlusterFS. To recover, you may then find you need to use the procedures outlined here: https://wiki.zimbra.com/wiki/Mysql_Crash_Recovery . 


In the current Zimbra 8.8.x version, it does not have a means to run in an active/active configuration out of the box. This is because data on the mailbox server is very stateful, such as the mailbox blobs, the mailbox indexes, the MariaDB database, and the redo log file. This capability is on Zimbra's road map, but the earliest version it is expected to appear is within Zimbra X, which is the next major release of Zimbra. In Zimbra X, it contains an architecture change where all Zimbra services will run as Docker containers, which will be orchestrated using Kubernetes. Zimbra X will only contain a subset of the features of the current Zimbra 8.8.x version, with additional features being added, as demand requires. 


But, not all is lost. For much of this year, I've been working periodically on an open source project to add active/active capabilities to the 8.8.x version. In theory, it should also work on earlier 8.x releases too, but I haven't tested it outside of 8.8.x yet. So far, I have an active/active Zimbra cluster working, which uses other open source products to extend the shipping version of Zimbra 8.8.x. It relies on abstracting the storage of the mailbox server data in to Ceph, along with deployment of MariaDB's Galera Cluster. I don't have a web site setup for the project yet, but as it gets closer to a deployable status, I'm giving occasional updates on it on the weekly Zeta Alliance calls, and will likewise post updates to this mailing list too. 





Randy Leiker ( randy at skywaynetworks.com ) 
Skyway Networks, LLC 
1.800.538.5334 / 913.663.3900 Ext. 100 
https://skywaynetworks.com 



From: "Naisiew Yeak" < yeak at md.com.my > 
To: "users" < users at lists.zetalliance.org > 
Sent: Tuesday, November 6, 2018 4:30:50 AM 
Subject: [Users] Zimbra doing similar like Exchange DAG 


Hi there, 


Does anyone know how Zimbra can compare to Exchange DAG? 


I am planning to deploy GlusterFS to replicate my /opt to 3 nodes (one arbiter). Any advice for this kind of setup? I actually do it on the mailstore itself. Basically 3 mailstore servers, mb1, mb1a, mb1b. The mb1 is production and mount the volume to /opt. The mb1a has a copy of data and ready to start up. Finally mb1b as quorum. 


I hope to run mb1 and mb1a Active/Active. That mean the mariadb should be active/active on both of them. Current Zimbra is not ready for this right? 


I am searching for information what is the direction of the new architecture for new Zimbra. Hope someone can share and let me know. I want to begin deploy such foundation for my Hosted Zimbra service. Also use it as demo platform for customer who is asking about Active/Active mailstore (they literacy bring up DAG to compare). 



Thanks. 


-- 







Naisiew Yeak 
+60 12 5067818 


Zimbra • Linux • SSL 


My Directory Sdn Bhd 

E-2-22, IOI Boulevard, Jalan Kenari 5, Bandar Puchong Jaya 
47170 Puchong, Selangor, Malaysia. 









-- 







Naisiew Yeak 
+60 12 5067818 


Zimbra • Linux • SSL 


My Directory Sdn Bhd 

E-2-22, IOI Boulevard, Jalan Kenari 5, Bandar Puchong Jaya 
47170 Puchong, Selangor, Malaysia. 




-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.zetalliance.org/pipermail/users_lists.zetalliance.org/attachments/20181106/4ee477cf/attachment.html>


More information about the Users mailing list