You scored a few points: training, porting, scaling and managing virtual machines.
Training
You should probably watch some of the videos in MSDev . The Windows Azure Fall 2010 series is the latest. Note that in order to run the application on Azure, you need to understand Azure Fabric and its related services, such as diagnostics and role management.
Porting
You need to look at what you are doing outside of the main asp.net, for example, caching, session state management, security, third-party DLLs, COM, registry access and any other functions of the administrator level. Today, with the SDK 1.2, you cannot manage the registry or run MSI. I have fooobar.com/questions/875696 / ... about some areas where you might run into problems. Regarding SQL Azure: some features, such as CLR support, are not implemented, and you will not have access to some functions at the system level. Details of the differences can be found in the white paper on the Azure SQL site .
With the new features introduced at PDC 2010, you can overcome almost all of these problems:
- Session state can be hosted in AppFabric Cache. It will just be a configuration change to your configuration. This cache will be available across the entire deployed network of instances that allow you to scale.
- Access at the administrator level is possible in administrator mode. You can start MSI and change things like the registry when your role instances load.
scaling
You will need to carefully examine how your application handles scaling. For example: you may have a bottleneck if all server instances try to work simultaneously with the same resource, causing locks. The usual Azure template is to put work items in a robust Azure Queue and have instances of the background worker role use these work items asynchronously.
Today, Azure does not provide off-the-shelf session state management tools (such as storing state in SQL Server). However, there is a downloadable sample on the SQL Azure Blog that works great with SQL Azure. As mentioned above, the new AppFabric Cache feature will provide session state management, so you'll get a turnkey solution soon.
Virtual machine management
The role of the VM is announced in the PDC. In essence, this will provide you with the ability to use a locally created Windows Server 2008 R2 image and move it to Azure. You will need to install Azure extensions that allow you to control the image using azure fabric.
However, there is a trade-off: your virtual machine will not use OS updates and patches: you will be responsible for managing them (via the exploded disk). Azure fabric will still control your health of the virtual machine, and reboot it or move it if necessary. I would recommend trying admin mode first, so you can still use 100% of Azure services.