Azure Websites, with MySQL - Free?

One of the first things that caught my eye when the Websites feature of Microsoft Azure was announced was “oh, you can use that for a small personal website, or two”. And so you can – after all, it supports PHP and MySQL.

Couple of minor issues though – the first being, management of the MySQL database is a bit of a pain, as there is no management tooling. However, that said, you can use the excellent MySQL Workbench from MySQL themselves – if it will stop crashing all the time.

Once you get past that bit, and actually throw something up there, you find more niggles.

After a bit of digging, you will hit some limitations of the “free” MySQL offering:

  • Up to 20MB Database
  • Maximum of 4 connections
  • Single database

Anything above these limits you have to pay – although the Microsoft Azure Websites portal pages really do not make this clear. Details are here if you are interested.

The size and database limits I can understand. The connection count is pitifully low, and for most projects makes it impossible to actually leverage anything on this.

I think what bugs me the most is that Microsoft have elected to use a third party for this feature, but don’t detail anything (apart from a small “you accept ClearDB’s terms” note on the create page and anything up from the freebie package isn’t handled “within” the Azure portal.

Maybe things will improve before it leaves preview … maybe not. I’ll stick to a more traditional MySQL install for now I think.

When is a cloud not a cloud?

There are so many different vendors out there now pushing cloud platforms, but what exactly are they offering? And when is a cloud, not a cloud?

Most of them are, in fact, nothing more than slightly enhanced virtual servers, offering no more reliability that if you had such a package (or, in some cases, less as they overload the hosts).

What should a cloud platform offer?

Increased reliability, for one – it should really be a VPS with added mobility so that should a host fail, it migrates and comes back online (seamlessly, with no administrative intervention) with only a minor blip.

Rapid scaling – if you need to increase memory, or disk space this should all be possible with minimal hassle, no server moves and again, with nothing more than a slight hiccup.

Good management – rather critical for any work loads in the cloud. At a minimum you need to know the CPU / Memory demand, network traffic etc. The provider should, in all cases, strictly monitor the overhead on the hosts, and migrate VM’s off (transparently!) to other nodes when things get tight – every platform supports this from Xen, to Hyper-V to VMWare, so they have no excuse.

Why is it then that so many companies are offering their VPS packages as “cloud” packages? They really are just latching onto the buzz words and hoping people don’t notice. It’s about time that companies stopped trying to offer sub-standard offerings, and actually invested in providing a robust platform.

Lets take a look at one platform that I am actually using myself – UK2.

I have a number of instances on this “cloud” VPS platform. But I have to say, it’s far from cloudy.

The machines run pretty much like you would expect from any “normal” VPS platform – and when issues occur with the hosts, they are hard shutdown and migrated with little warning from their support staff, and they regularly get issues where the hosts max out on memory consumption causing there to be a risk your VPS will suddenly disappear. (And when it happens, you have to bug support relentlessly to get it moved to another host – nothing happens automatically).

That, and their control panel seriously sucks. MASSIVELY sucks. Most of it doesn’t even work reliably, with their console taking a nap almost all the time. Perfect for when things are not going your way. The only reliable way I have found to use their control panel is using Chrome, with both 32-bit and 64-bit JVM installs. And even then its a bit touch and go.

So is this a cloud platform? In my opinion, no.

Come on Microsoft, get synchronised Virtual Roles sorted so I can move over …