Some distribs like SLES have interesting High Availability & clustering solutions, can we take advantage of this with Hyperion ?
It is possible to configure a HA system with Hyperion using several machines in a stateless cluster. For example:
1. HTTP Loadbalancer redirecting all incoming http requests to dedicated webserver. This may even be realized with a simple mod_jk loadbalancing. HTTP traffic also means all kinds of WebDAV, such as file transfer or the Outlook Connector.
2. Webservers, each running apache and the Open-Xchange Groupware daemons. The different servers are getting fed by the loadbalancer and execute the requested tasks. Using multiple caches makes it possible to communicate in real time between users which are using different groupware server. Just think that "User A" is working on Webserver #3 using Database Readhost #2. He creates a new folder with is shared to "User B" which works on Webserver #1 using Database Readhost #5. User B is able to access this folder at once, even if he works on a different groupware machine.
3. Database, this can be a MySQL Cluster using dedicated read and write hosts. For performance enhancement, you may setup 5 MySQL Slaves that only have read access to the database. For consistency you may have 1 Master which only provides write access.
4. Mail, can be a completely interdependent subsystem using it's own failover mechanisms.
As you may see, Open-Xchange uses many already existing services. Built on top, it is able to provide real HA. Note that building such a system is not a 1-click process, but is used to be as a integration project.
Last edited by Martin Heiland; 07-01-2007 at 11:33 PM.
Would it be possible to setup a failover cluster, or not really?
depends on what's your understanding of real failover.
In a scenario with two machines (could be 20 also, no matter) you get the users load balanced to those two machines. If one of the servers gets unavailable, all sessions on that machine are currently killed and the users have to re-login to get a session on the other machine. It's not nice that there is no realtime session transfer right now but yes - the system keeps on being available as long as at least one ox server and the backends (like database) is up and running.
Has this been done, the syncronisation / loadbalancing of 2 OX servers?
1 x A record > mail.serverx.com > x.x.x.1
1 x MX record > mail.server1 > index0 > x.x.x.1
1 x MX record > mail.server2 > index1 > x.x.x.1
someone sends an email to firstname.lastname@example.org and it gets delivered to server1. Server1 goes offline, then email gets delivered to server2. Users login to the URL mail.serverx.com and connect to which ever server is online, and either one of the backends that responds , or is alive has the uptodate email available, no email should ever stop comming in, itdoes not matter if a user has to re-login via webmail (outlook willjust auto reconnect), as this is a minor issue as compared to the above.
Is there a whitepapaer or doco to describe setting this sort of thing up?
well i think you have to distinguish between a mailserver and a ox application server. The Open-Xchange Server does not have any capabilities to be a mailserver, it uses existing infratstructure which implicates a E-Mail system. In small environments the imap/smtp server usualy resides at the same machine as the ox application but this is not useful in hosted environments for different cases. There are already productive setups of hosters running a bunch of ox application server in a "stateless cluster" which also provides failover mechanisms. Please see the "Hosting Architecture" whitepaper over here for more information:
You can of course take advantage of such solutions because they are more or less independent from the applications running on the cluster.
Originally Posted by Guizmo