I recently gave an interview on Sun VDI and MySQL Cluster to Lenz Grimmer, MySQL Community Relations Manager. It has been published on dev.mysql.com. Check it out: http://dev.mysql.com/tech-resources/interviews/tino-rachui-sun-vdi-cluster.html
-Tino
Skip to content, navigation.
I recently gave an interview on Sun VDI and MySQL Cluster to Lenz Grimmer, MySQL Community Relations Manager. It has been published on dev.mysql.com. Check it out: http://dev.mysql.com/tech-resources/interviews/tino-rachui-sun-vdi-cluster.html
-Tino
In case you have missed this. There exist a document "Virtualization for MySQL on VMware: Best Practices and Performance Guide" which provides a comparison of virtualized MySQL Server instances running on VMware ESX with non-virtualized MySQL Server instances running on bare-metal. Additionally the document contains "Best Practice" configurations for running MySQL Server on VMware ESX. Please note that the document is about MySQL Server and not MySQL Cluster which has to run on bare-metal.
Why is this all important in the context of VDI 3.x? You should have heard meanwhile that Sun VDI 3.x is making use of MySQL to host the VDI configuration. Secondly for the VDI Single Host configuration which we have introduced with VDI 3 Patch 2 you have to use a MySQL Server. With the ability to run MySQL Server in a virtualized environment you also gain the possibility to run the whole VDI Single Host configuration in a virtualized environment. You have to play with it a little bit though as we haven't tested this particular configuration extensively in our labs yet.
VDI 3 is out for quite a few days meanwhile and the feedback we've got so far reaches from positive to total excitement. That's a nice and really satisfying fee for all the hard work necessary to get this product done in the given time frame. Several things have been written already about VDI 3 and How it all came together so I don't want to repeat such general information here. I'd like to rather concentrate on a specific aspect of VDI 3 namely the MySQL database integration. Why I want to do that?
VDI 3 has a far more sophisticated data model than his predecessor VDI 2. This data model almost naturally fits into a relational data model hence we changed the path from using the Sun Ray or Sun SGD data store (both LDAP databases) and decided to use a relational database instead. Around the time of this decision Sun announced to acquire MySQL. Given this turn of events and the reputation of MySQL it was not exactly difficult to choose a specific relational database for VDI 3. Besides that what other requirements influenced the VDI 3 database design?
All three are important requirements but as so often in life you cannot treat everything as equally important but have to prioritize. For us 1. was the most important requirement leading our initial choice of a particular MySQL version to use for VDI 3. To make a long story short we've chosen MySQL Cluster which is a "...high-availability, high-redundancy version of MySQL adapted for the distributed computing environment...". While this choice perfectly satisfies requirement 1 it doesn't help (rather contradicts) a solution for requirement 2 because setting up MySQL Cluster, though the MySQL folks tried hard to make it as easy as possible, requires quite some knowledge and experience. To compensate this disadvantage we have invested a lot of energy and effort into the VDI 3 installation process. The result is that now with VDI 3 if you choose to use the embedded database a complete, high available MySQL Cluster will be automatically configured for you. You don't need to know anything about the details and theory behind it. There is one noticeable implication of using MySQL Cluster: You need a minimum of three physical hosts to configure a HA MySQL Cluster. This is the recommended deployment option for the embedded VDI database scenario. Why it is necessary to have three physical hosts will be answered here.
Feedback we've got from the field so far reveals that this is a particularly painful implication. A lot of customers want to start small and cheap. Requiring a minimum of three physical VDI hosts if you only want to run a handful of virtual desktops can be hard to explain to somebody. How to escape this dilemma? I will show some possibilities below.
But first let me say something about the third requirement "Flexibility". The embedded VDI database is fine for a lot of smaller to medium deployments but it might not be the perfect match for each and every situation or customer. So we've added the possibility to make use of an existing MySQL database known as the remote database option in the VDI 3 configuration. This hopefully satisfies requirement 3. Here are two of the most likely reasons making the remote database option the better choice:
So now on to the deployment options and what you can do about the requirement of three physical VDI hosts. I will enumerate a couple of supported scenarios. First of all you can choose the remote database option. This allows you to either use MySQL Server >= version 5.0 with InnoDB or MySQL Cluster version >= 6.2.15 in whatever way is supported by MySQL. One minimal setup enabled by this option is the following one:



This blog copyright 2009 by Tino Rachui