Cloud
Wars: VMWare vs Microsoft vs Google vs
Amazon Clouds
October 1, 2008
A
short time ago in a data centre, far far away…..
All
the big players are setting out their cloud pitches, Microsoft are set to make
some big announcements at their Professional Developer Conference at the
end of October and VMWare made their VDC-OS announcements
at VMWorld a couple of weeks ago, Google have had their App
Engine in beta for a while and Amazon AWS is pretty well
established.
With this post I hope to give a
quick overview of each, I’ll freely admit I’m more knowledgeable on the
VMWare/Microsoft offerings… and I stand to be corrected on any assumptions I’ve
made on Google/AWS based on my web reading.
So,
What’s the difference between them…?
VMWare vCloud
- infrastructure led
play
VMWare come from the infrastructure
space, to-date they have dominated the x86 virtualization market, they have some
key strategic partnerships with storage and network vendors to deliver
integrated solutions.
The VMWare VDC-OS pitch is about providing a flexible underlying architecture through servers, network and storage virtualisation. why? because making everything ‘virtual’ makes for quick reconfiguration - reallocating resource from one service to another is a configuration/allocation change rather than requiring an engineer visit (see my other post on this for more info) because VMWare’s pitch is infrastructure led it has a significant practical advantage in that it’s essentially technology agnostic (as long as it’s x86 based) you, or a service provider have the ability to build and maintain an automated birth–>death bare ‘virtual metal’ provisioning and lifecycle system for application servers/services as there is no longer a tight dependency for everything on physical hardware, cabling etc
There is no one size fits all
product in this space so a bespoke solution based around a standard framework
tool like Tivoli
No
re-development is necessarily required to move your applications into a vCloud
(hosted or internal) you just move your VMWare virtual machines to a different
underlying VDC-OS infrastructure, or you use P2V, X2V tools like Platespin to
migrate to a VDC-OS infrastructure.
In
terms of limitations - apps can’t necessarily scale horizontally (yet) as they
are constrained by their traditional server based roots. The ability to add a
2nd node doesn’t necessarily make your app scale - there are all kinds of issues
around state, concurrency etc. that the application framework needs to manage.
VMWare are building frameworks to
build scale-out provisioning tools - but this would only work for certain types
of applications and is currently reactive unless you build some intelligence
into the provisioning system.
Scott Lowe has a good round-up of
VDC-OS information here
& VMWare’s official page is online here
Google
AppEngine- pure app framework play
An
application framework for you to develop your apps within - it provides a vastly
parallel application and storage framework - excellent for developing large
applications (i.e Google’s bread & butter)
Disadvantage is it’s a complete
redevelopment of you applications into Google compatible code, services &
frameworks. You are tied into Google services - you can’t (as I understand it)
take your developed applications elsewhere without significant
re-development/porting.
The
Google AppEngine blog is here
Microsoft Cloud Services
Hosted Application stack &
Infrastructure play
An
interesting offering, they will technically have the ability to host .net
applications from a shared hosting service, as well as integrating future
versions of their traditional and well established office/productivity
applications into their cloud platform; almost offering the subscription
based/Software+Services model they’ve been mooting for a long
time.
Given Microsoft’s market current
dominance, they are very well positioned to make this successful as large shops
will be able to modify existing internal .net services and applications to
leverage portions of their cloud offering.
With the future developments of
Hyper-V Microsoft will be well positioned to offer an infrastructure driven
equivalent of VMWare’s VDC-OS proposition to service and support migration from
existing dedicated Windows and Linux servers to an internal or externally hosted
cloud type platform.
David Chou at Microsoft has a good
post on Microsoft and clouds here
Amazon Web Services -
established app framework with
canned virtualization
the
AWS platform provides a range of the same sort of functionality as Google
AppEngine with SimpleDB, SQS and S3 but with the recently announced ability to
run Windows
within their EC2 cloud makes for an interesting offering with the existing
ability to pick & choose from Linux based virtual machine
instances.
I
believe EC2 makes heavy use of Xen
under the hood; which I assume is how they are going to be delivering the
Windows based services, EC2 also allows you to choose from a number of standard
Linux virtual machine offerings (Amazon Machine Image, AMI).
This is an interesting offering,
allowing you to develop your applications into their framework and possibly port
or build your Linux/Windows application services into their managed EC2
service.
Same caveat applies though, your
apps and virtual machines could be tied to the AWS framework - so you loose your
portability without significant re-engineering. on the flip-side they do seem to
have the best defined commercial and support models and have been well
established for a while with the S3 service.
Amazon’s AWS blog is available here
Conclusion
Microsoft & VMWare are best
positioned to pick up businesses from the corporate’s who will likely have a
large existing investment in code and infrastructure but are looking to take
advantage of reduced cost and complexity by hosting portions of their
app/infrastructure with a service-provider.
Microsoft & VMWare offerings
easily lend themselves to this internal/external cloud architecture as you can
build your own internal cloud using their off-the-shelf technology, something
that isn’t possible with AWS or Google. This is likely to be the preferred model
for most large businesses who need to retain ownership of data and certain
systems for legal/compliance reasons.
leveraging virtualization and
commercial X2V or X2X conversion tools will make transition between internal and
external clouds simple and quick - which gives organisations a lot of
flexibility to operate their systems in the most cost/load-effective manner as
well as retain detailed control of the application/server infrastructure but
freed up from the day-day hardware/capacity management
roles.
AWS/Google are ideal for Web 2.0
,start-ups and the SME sector where there is typically no existing or large
code-base investment that would need to be leveraged. For a greenfield
AWS/Google are also great for people
wanting to build applications that need to scale to lots of users, but without a
deep understanding of the required underlying infrastructure, whilst this is
appealing to corporate’s I think the cost of porting and data ownership/risk
issues will be a blocker for a significant amount of
time.
Google Apps
are a good entry point for the SME/start-up sector and startups, and could well
draw people into building AppEngine services as the business grows in size and
complexity, so we may see a drift towards this over time. Microsoft
have a competing model and could leverage their established brand to win
over customers if they can make the entry point free/cheap and cross-platform
compatible, lots of those SME/start-ups are using Mac’s or Netbooks for
example.






Comments