Detlef Ulherr and Thorsten Früauf on Open HA Cluster: Making MySQL highly available on Solaris
A year ago this past week (on January 16, 2008), Sun Microsystems announced a historic deal to acquire MySQL AB for a billion dollars. Since then, MySQL-ers (aka Sun Dolphins) have settled in with Sun folks. While Sun has had an influence on MySQL, MySQL has also had an influence on several projects within "Sun Classic". Over this week, we hope to explore some of the projects around Sun which use MySQL and how the acquisition has helped bring us all closer together.
Hi Detlef and Thorsten, thank you for allowing us to ask you some questions. First off, please tell us a bit about yourself. What is your personal background, where are you located?
Detlef: I live in a small village north of Frankfurt/Main in Germany with my wife Conny and two daughters Christina and Linda. Or passion is cycling and probably you will meet us with our fully loaded bicycles somewhere in Europe. I work for the Solaris Cluster engineering team and I am developing Sun Cluster and Open High Availability Cluster agents and interfaces for agent development. Among other Sun Cluster agents, I am responsible for the MySQL agent.
Thorsten: After finishing my studies of computer science at the university of Karlsruhe as graduate (Dipl.-Inform.) in March 1999, I started as a project engineer within Sun Professional Services, located in the Stuttgart office of Sun Microsystems Germany.
The focus of my work was always around designing and implementing high available data center architectures, up to business continuity and disaster recovery solutions. Besides knowledge about enterprise storage, server and network products, Solaris and Solaris Cluster were always at the heart of the products I worked on and where I have grown my expertise.
In November 2004, I got the opportunity to work half of my time on developing data services as part of the product for Solaris Cluster, while the other half of my time I continued to engage in customer projects doing consultancy work. In January 2007, I did the full time transition into engineering, where I currently work as a staff engineer within the availability engineering group, which is part of the Solaris engineering organization.
In 2007, we did start the process to publish the Solaris Cluster source within the HA Clusters community group on the OpenSolaris portal. I am active as a core contributor and helped to finalize the three phases which resulted into Open HA Cluster, the open source of the cluster framework, data services and geographic edition.
What project are you currently involved in and what is your role there?
Detlef: The last project I am going to complete right now, is the integration of MySQL replication as a replication protocol for Sun Cluster (Open High Availability Cluster) Geographic Edition.
Thorsten: Currently I am mainly involved within the Colorado project, being one of three technical leads.
The Colorado project is a multi phased project, which will provide a minimal and extensible binary distribution of Open HA Cluster that runs on the OpenSolaris binary distribution.
What were your initial thoughts when you first heard of the MySQL acquisition by Sun last year?
Detlef: I thought: "Wow, the MySQL agent will be the princeps inter pares for the next time."
Thorsten: I thought this was a good move, since within my consultancy work it was always obvious that some kind of database is part of a data center project. One of Suns strengths is providing a great infrastructure to run data center applications. Most architectures contain a database, be it Oracle, Sybase, Informix, DB2, PostgreSQL or MySQL - all of them have their strengths and weaknesses again. This is one of the reasons why we have data services for all of those databases in Solaris Cluster and try to be the best high availability platform for them.
By acquiring MySQL, Sun has the chance to offer a complete integrated stack — from the database down to the hardware in a complementary way.
How is MySQL involved in or related to your project?
Detlef: As far as the MySQL agent is concerned, I work closely together with the MySQL engineering and support folks.
Thorsten: Solaris Cluster does offer a standard agent for MySQL for quite a long time. Even before, there have been customized data services which got integrated on a consultancy basis, until we offered it as part of the product in mid 2004.
Since Solaris Cluster is a generic high availability framework, we want to integrate as much application architectures as possible - and MySQL is part in many of those — therefore it relates a lot!
How has the MySQL acquisition influenced your project? What has changed?
Detlef: I normally get advice from engineering or support how to solve problems. This relationship improved a lot since the acquisition. I now start getting requests from the MySQL side for features to incorporate into the Sun Cluster agent. The next thing is a matter of priorities, changes in the MySQL agent are now placed at the top of the list.
Thorsten: Naturally, since MySQL is now part of Sun, we hear a lot more details than before. We now have the opportunity to closely relate as colleagues and collaborate on some of our common goals.
For example, we can jointly present on conferences and exchange future engineering plans, to make sure that our products offer the best value, features and level of integration to our customers.
While we are at the topic of conferences: Detlef, at this year's MySQL Users Conference in Santa Clara, you'll be giving a talk about Solutions for High Availability and Disaster Recovery with MySQL. Could you please tell us some more about it?
Detlef: My session will explain how Open High Availability Cluster fits into the high availability landscape for MySQL. Additionaly, I will explain various other high availability approaches and how MySQL and Open HA Cluster can be combined to achieve high availability and business continuity. The talk will include a live demonstration of Open HA cluster Geographic Edition, so users can see it in action.
Where do you see the use/support of MySQL in your project going?
Detlef: The collaboration between Sun Cluster and MySQL support and consulting will lead to a great value add for our customers.
Thorsten: Currently we support the configuration of MySQL of a failover database within a cluster. Disaster recovery solutions rely on data replication across locations - up until recently we needed storage based replication for MySQL. Future projects can leverage the MySQL replication technology, similar to what we can do with Oracle Data Guard within our geographic edition.
OpenSolaris does offer the webstack where again MySQL plays a central role. The possibility to combine this with the Zone Cluster capabilities of Solaris Cluster holds great opportunities for virtualization and consolidation of HA architectures.
So I see some great opportunities for collaboration going forward :)
So what else do think is cool and unique about Open HA Cluster/Solaris Cluster? Why should our readers consider taking a look at it?
Thorsten: The Solaris Cluster framework does offer a rich set of dependencies and affinities, which allows to define relations between a set of applications, like order of start, restart, etc. It can orchestrate the startup and failover of multiple tiers and allows to offload less important applications, if required. In addition, Solaris Cluster offers an excellent integration with Solaris Zones and has a rich set of standard data services for many applications. If you don't find a standard agent for your application, it is easy to integrate by using a generic data service.
Detlef: In addition to the affinities container features that Thorsten already mentioned, Open High Availabilty Cluster offers a built-in software load balancer called Shared Address. You can combine this Shared Address with specific application resources to achieve a true scalable service. With that you can save the money for expensive load balancers. Unlike other clustering applications in the Solaris world, you get a solution that's integrated into the OS kernel, which leads to faster error detection and makes it resilient to high system loads. On the other hand, you have one throat to choke if you go with Solaris Cluster support.
What do you most look forward to with the future of your project?
Detlef: I am keen to work closer with the guys from MySQL Cluster engineering, to see how we can integrate both products together.
Thorsten: With Open HA Cluster and project Colorado, we want to grow our community. I am looking forward to the time where we have the infrastructure in place to make the accepting of contributions and working together a lot easier.
Thank you Detlef and Thorsten, we appreciate the time you took for this interview! Detlef, we can't wait to see your presentation at the 2009 MySQL Users Conference. Please keep up the good work!
This interview was performed in January, 2009.