views:

506

answers:

3

Ops: This does not belong to ServerFault because it focuses on Programing Architecture.

I have following questions regarding differences between Cloud and Virtualization..

  1. How Cloud is different then Virtualization?

  2. Currently I tried to find out pricing of Rackspace, Amazone and all similar cloud providers, I found that our current 6 dedicated servers came cheaper then their pricing. So how one can claim cloud is cheaper? Is it cheaper only in comparison of normal hosting?

  3. We re organized our infrastructure in virtual environment to reduce or configuration overhead at time of failure, we did not have to rewrite any peice of code that is already written for earlier setup. So moving to virtualization does not require any re programming. But cloud is absoltely different and it will require entire reprogramming right?

  4. Is it really worth to recode when our current IT costs are 3-4 times lower then cloud hosting including raid backups and all sort of clustering for high availability?

  5. New programming architecture means new overheads of training staff, new methods of testing and new deployment schemes, does it justify over "on demand resource usage" words of cloud?

  6. We are having current development architecture with simple Server side ASP.NET WebServices with no local context and on client side Flex/Silverlight which offers pretty good REST architecture and its highly scalable. How does cloud differs from REST model of deployment?

  7. On storage, SQL Server or MySQL offers pretty good replication and high availibility then what is advantage in cloud?

  8. Data guarantee, one of our vendor hosting some other customer's app on cloud (one of most used), lost Entire Hard Disk (the virtual) and entire module in first 6 months. Second provider said its your duty to take backup, fine I agree, but no provider gives SLA for data guarantee, they give 99% uptime. However in most business apps, uptime is less important then data integrity. In our 10 years of dedicated hosting experience we had only one hard disk crash. This makes me little skeptical to go for cloud and loosing control over data. And I feel its just a big marketing buzz to sell virtulization in different form.

  9. Size of data, currently all providers charge very heavy for large data, if you are hosting only below 100GB cloud can be good alternative, but I think virtual servers and dedicated servers above 100GB to few TBs are still cheaper. Why would want to pay so high on cloud when there is no data guarentee as well as it doesnt say anything about redundancy.

(I wish SO had something for spell check for Internet Explorer, sorry for wrong spellings in my post)

A: 
  1. virtualisation is typically done on local metal, and orovides great hardware independence etc; "the cloud" refers to pushing processing into another data-centre (which will often use virtualization in the implementation)
  2. the pricing may be cheaper for startups, in particular - and it provides a huge ability to "ramp up" the service for a short period. Either to tie in with marketing, or (for example) for bulk data processing. But for my purposes local servers are cheaper too ;-p If you have pretty constant / expected load, and can afford the startup costs of metal, then in many cases metal is cheaper. But if your volumes are very low, perhaps cloud is a better way of getting a fault-tolerant platform, without paying for lots of hardware and engineer costs.
  3. it depend on what you interpret as "the cloud". Many cloud hosts offer very restricted sandboxes with different programming paradigms; however, some services (which can still be described as the cloud) offer full VM access, but still with the ramp-up etc; in the latter case the same code should work without much change
  4. I think you've already answered that (in your specific case; it may be different for other consumers)

(likewise most of the rest)

Also; note that there may be legal/data issues why you need to retain strong control of the data; shipping it off to a 3rd party (perhaps in a different legal jurisdiction) may not be possible and/or desirable.

Marc Gravell
A: 

I don't know about all of your questions, but you don't have to recode for (say) EC2 - they just present as a regular (virtual) machine running whatever OS you are used to using.

1800 INFORMATION
+1  A: 
  1. Virtualisation is basically one physical computer pretending to be many computing environments; cloud computing is many different computers pretending to be the one computing environment, hence allowing easier scaling. Of course, the cloud computers will usually be virtualised to optimise the use of resources. Both, however, can be considered forms of abstraction.
  2. It depends on what you are measuring as the cost - for raw hardware it may be about the same but in commercial environments there is usually one administrator per forty servers but for the cloud that goes to one admin for 1,000 servers, so there is a labour cost. What a lot of people are buying with cloud is not just raw hardware but a computing platform, so the cost of the software is also offset. The real value propositions here are commodity pricing - you can start up without needing large capital outlay for servers, just a low monthly fee making it easy to get started - and flexibility - being able to scale up and down with varying demand. For example, the tax department servers get massively hit at the end of the tax year but are almost unneeded for the rest of the year. It would be wasteful for the tax department to have enough server capacity to handle the end of year load and have those servers sitting idle for the rest of the year.
  3. It depends on what type of cloud service you are buying - raw infrastructure (such as hard disk space), platform (such as a virtualised server or cluster) or an entire cloud solution. Developing for a cloud vendor's API will require you to re-architect and re-develop your solution.
  4. Cloud computing is a strategy, not a goal in its own right. If the benefits of the strategy align to your business needs then it may be the right solution but if you don't benefit from the attributes of cloud computing - flexibility to alter resources according to demand, commodity pricing (whether for you or your customers), or the ability to offer access to your systems to customers without requiring administrator assistance - then you may be better off just running your own servers, particularly if you simply have stable, long term demand.
  5. The question here is does on-demand scalability justify the development cost for you?
  6. REST and cloud aren't really very different in this scenario - they are both an API to a system that is scalable. The major difference in this scenario is that to scale it, you have to buy the next server and configure it whereas to scale the cloud solution you simply turn on another of your cloud provider's resources.
  7. Again, this is up to you to decide if cloud storage offers advantages to you above and beyond a Sql database.
  8. Control of your data is probably one of the biggest impediments to many systems going cloud. If your data is crucial, sensitive and private, then hosting it with a third party may not be an option, regardless of any other benefits.
  9. The costs of one technology over another is just part of what you have to consider. Maybe hosting in the cloud in the short term is attractive because you can test the market for your service without buying large server farms. Once the demand has been verified, then you make the capital investment in servers.

Cloud computing isn't magic, it is a technology solution to a very specific market need - if you don't have that need, then you probably won't benefit from cloud computing.

Chris Latta