A few things to keep in mind
@Henry, A few things to keep in mind. First, Winodws Azure and the Azure Services Platform have a couple years of significnt R&D behind them. Windows Azure is not simply a Windows Server VM. Windows Azure It's based on Windows Server, but includes many unique innovations. When MS says it's an OS for the cloud, that's distinct from an OS for a machine.... Windows Azure is an OS in the sense that it's a collection of compute, management, and storage services tied to together with a controller. The story is similar for the Azure Services Platform -- it provides a cloud application platform for the cloud OS - .net services with workflows, identity, and interop service, SDS for future db services, and Live services for social services that you can build into your own apps. (Collaboration services based on sharepoint an CRM services based on Dynamics CRM will come in the future). Personally, I'm not expectng SDS to be the same as exposing SQL Server in a VM - SDS will be based on SQL Server, but expect it to be more abstracted so you can focus more on your own intellectual property vs. needing to operate the database.
Second, the porting story is different for different parts of the app. If you have .net code running on a web server, in many cases you'll be able to run your .net code without too much trouble. That said, some folks may want to re-factor some of their code to better leverage the native advantages of the cloud platform's scalability. BTW, the Windows Azure team wants to build Windows Azure to support non-.NET code in the future, as well. Already, you can run Python and Ruby code via IronPython and IronRuby using Silverlight.
The data base layer can require a significant amount of work with the present version of Windows Azure storage and SDS. Once the SQL Server-ish version is out, porting should get signifcantly easier.
Third, a couple comparisons. Amazon will give you VMs to run LAMP, and also VMs to run Windows/SQL Server. Could be an easier migration path for an exsting windows app, but also is offering more of an "Infrastructure-as-a-Service" vs. a "Platform-as-a-Service" -- so the potentia upside is limited. E.g, you still have to manage your own firewalls, set up and manage db, patch everything on your VM, license all software on your VM seperately, etc. Windows Azure's first priority is to deliver a full platform that lets you focus just on the unique bits of your app.
Google App Engine on the other hand provides a platform-as-a-service, but requires you to write in python, and requires a special data structure called "BigTable". My understanding is that an existing python app may or may not need to be re-written, depending on the app, but the db-layer is a significant re-write. Not sure if GAE is working on allowing a model for existing apps vs. requiring re-writes.