5

A friend has a site developed in ColdFusion with MySQL and is looking for better cost-effective hosting as the traffic scales up rapidly. Azure comes to mind.

I haven't used Azure myself, however, I believe it is possible to setup and interact with the web-server via RDP into a hosted Virtual Machine?

I am curious if ColdFusion can be installed in the hosted Azure VM. Also, would the site have to be tweaked to run on Azure SQL, or could it continue to use MySQL?

Thanks.

mbursill
  • 389
  • 1
  • 4
  • 10

3 Answers3

2

The newly announced Azure VM role does allow you deploy a Windows VM configured anyway you like and you can RDP to this, so in that respect yes you could do this.

However, Azure vm's do have some difference to ordinary Hyper-V or VMWare VM's. You can't just spawn a new VM in Azure, RDP into it and configure it the way you want. Instead with Azure you create your VM on you own Hyper-V server and configure it how you want, then you configure a Golden Image that you upload to Azure and get's deployed to your VM. At any point Azure can shutdown your VM and create a new one from your golden image. So you need to be in a position where you can create this golden VM how you want locally first.

There is an added complication in that unlike with the Web and Worker role, the VM role is not manager by MS but by you and so you will need to apply any updates patches etc yourself. Again this means you need to not only update your running VM, but your golden image.

Finally you cannot really store any data on your VM, as MS does not guarantee the safety of this data, if your VM gets recreated from you master image, all you get back is what is on the image. Hence you need to store all you data in something like an azure database.

Sam Cogan
  • 38,158
  • 6
  • 77
  • 113
  • That's very insightful. Thanks. As a quick follow-up, if a change to the site is required, is it necessary to make those changes directly inside the running VM (and to the Golden Image), or can the altered files be uploaded via FTP (to some form of Azure cloud storage) and have the web-server of the VM pull from that location? – mbursill Mar 03 '11 at 21:28
  • @mbursill It depends how your site is configured, if it's set to use persistant storage, such as cloud storage or Azure SQL, then these changes will persist after a reload of the VM so that will work. If you make changes directly to the VM then you will also need to update the golden image. – Sam Cogan Mar 03 '11 at 21:30
  • 1
    This answer, while accepted as such, is no longer current, since VM Role doesn't exist anymore, and Azure Virtual Machines are persistent (durable), with blob-backed vhd's. It's also not exclusive to Windows, as you may use several Linux variants and CoreOS as well. – David Makogon Nov 20 '15 at 01:16
2

A bit of an updated answer: Azure Virtual Machines can host Cold Fusion. Unlike the (now defunct) VM Role, Virtual Machines are created in the cloud. As a baseline, you can choose from several Linux and Windows variants, and then build up from there.

Once your VM is set up the way you want, you can image it, making it available in your Virtual Machine gallery.

One nice thing about Azure Virtual Machines is the per-minute pricing model, where you can stop your VM's any time within the hour - it's not rounded up.

More info on Virtual Machines: here.

Adding a bit more to this: There's no need to shift from MySQL to SQL Database (unless you want to). MySQL runs without issue in Azure, whether directly in Virtual Machines or via a hosting partner (through the Marketplace in the portal).

David Makogon
  • 2,767
  • 1
  • 19
  • 29
0

Just to point out Sam. If you want to host ColdFusion I would go with AWS. With Azure you WILL PAY more money with drastically less control over your IPs, routing, DNS, and other needs. In addition you have less control over your OS in Azure. I'm a bit fan of Azure, but if you're not pretty much 100% .NET stack it isn't the greatest idea.

Going with AWS (and possibly some of the other options) gives you much more control (directly to the image) at about 2/3rd the cost. The more instances you need, the more time you know you'll need them, you can get reserved instances which are a 1/3rd of Azure's instance cost.

As for the storage, any instance is volatile, meaning you'll need to use managed storage or the distributed relational database options such as AWS's RDS or Microsoft's SQL Azure. Either solution is good, depending on the amount of storage space and compute power you'll need for the ColdFusion Service.

If you have .NET Applications that you're concerned with, sitting on ColdFusion or something, and you want to do Azure Deployments (i.e. to a Web Role or directly to a Services Role) then you may want to use Azure. But I doubt you'll get a good price point trying to configure ColdFusion for use on/in Azure.

My quick advice, either:

A. Stop using ColdFusion and migrate to another solution and move into Azure with a more cost conscious architectural option (i.e. a more SQL Azure + ASP.NET oriented solution) or

B. Use AWS and host the solution as is with ColdFusion.

Adron
  • 564
  • 1
  • 7
  • 16
  • 1
    just for anyone reading this in 2015 onwards, it's the reverse now... azure more control (even cli) and AWS (other than the days of downtime they've had over the last couple of years) has less control now. – Dawesi Oct 18 '15 at 17:30
  • @Dawesi - I can't speak to AWS, but the info in this answer, about Azure, is very inaccurate at this point. – David Makogon Nov 17 '15 at 20:42