In addition to big sign that says – Save Money! (could not have hammered the point better in my opinion), here are a couple of reasons why we moved from a very highly invested server farm to cloud servers.
Firstly, we had the option of using www.Rightscale.com to manage our cloud infrastructure – the management of it all via Rightscale helped us a lot. Cannot stress this fact (especially if you have a multi-tiered/complex server deployment architecture).
One of the most important point was the ability to ‘transition’ your cloud server from one provider to another (which is a feature though used less, but can save 100s of hours if migrations are to be an issue or something you do frequently). If a Cloud provider X for some reason terminates your server – say due to a DDoS attack or whatever reason, you can easily migrate that virtual server to another Cloud provider Y very easily.
Another example that is more pragmatic is costs, if costing on Provider A is higher and you want to migrate to Provider B, the migration/transitioning between cloud providers is a god send no less.
By having a large physical server farm, we were wasting lots of CPU cycles, Hard Disk space and memory (RAM). When we moved to the cloud, we start with average or minimal sizes, and looked at the performance metrics of our virtual servers (again something easy to do with all the various cloud tools out there on a single desktop screen). We then adjusted our cloud server sizes to match optimal server size and saved over 45% (vs the physical servers) and this was a cost saving of over 60% (if you believe it).
CPU and Storage are two of the greatest elements that are wasted, and by shrinking it down, the savings were tremendous.
One definitive advantage of the cloud was the ability to quickly deploy more machines as and when required (on-demand) and release them – once the demand subsided (this was true in a very few cases, but important nonetheless). Elastic computing in its truest sense.
Server images are another huge plus. You can take a server image literally by a right click and save it on cloud storage for future use. We also found that building a ‘template’ of a server is a great time saving exercise. For example if you will deploy a Linux Server and then put on Squid Server on it, etc. you can simply do this exercise once and then save it as a template, should you ever want to deploy the same server again, just deploy off the template, and your server + apps are ready to do. Only an IP change is required in the .config files and you are up and running in a jiffy.
Most of the cloud providers provide features like on-demand load-balancers, firewalls, IDS, additional storage, that can be deployed instantaneously. Can’t do that with the physical server world. And all these instantaneous deployments will have little or no impact on your service offering in terms of downtime, etc.
OS reloads is something you will love on cloud servers. Don’t like the OS, or messed up, simple reload again and in a few minutes (15-30 minutes) your new OS is up and running again, again, a huge advantage over traditional server offering.
IaaS/PaaS have achieved an economies of scale, where by every CPU core or memory is sold, as their are mostly likely a buyer for it out there. This results in excellent pricing model and allos you to save up a lot.
3rd party apps for monitoring, server management, quick/rapid deployments, etc are now plenty out there. The image libraries have improved drastically. For example if you were to take a traditional LAMP environment and strap on WordPress on it and then configure it with cPanel, etc. it can take quite a few hours to have this up and running. Many providers (especially Amazon) have an image that will take care of this and you will be up and running with a LAMP server, running cPanel/WordPress in under 30 minutes.
Do not be concerned that the virtual/cloud environment is exclusively for the Linux platform. Windows offering on the cloud is plenty and runs very smoothly. Most Window instances will sometimes even run on a single core, with 1.5GB of RAM – without issues (this all depends on what you run on the server itself).
Now, even providers like Amazon and Softlayer, do not charge you for incoming bandwidth (its free), so you now have additional cost savings. Albeit, the only drawback with Cloud providers is for people who want “unmetered” servers. No such thing as unmetered on cloud servers yet.
As with Aamzon, Rackspace and Softlayer, their cloud offerings tie in seamlessly with their Cloud Storage offering and their CDN (Content Delivery Network) offering.