I'm getting up to speed on Azure and the other cloud SDKs and need to configure an environment for development, demos and learning. My experiences...
First off, if you've read my blog, you know I haven't installed non-productivity software on my core OS for years. Further, I don't get the warm and fuzzies installing CTP software on my core OS. I also love the recoverability and start-over-from-a-checkpoint features of virtualization. Virtual PC (VPC) houses all my development, demo and learning sandbox instances. So, let's start off with a VPC instance. For this to work well, ideally, you need a good 4GB of memory. Further to the ideal, you're running x64 so as to have access to the full 4GB of memory.
ACQUIRE AN AZURE SERVICES DEVELOPER KEY
To develop against Azure and/or .Net Services and SQL Services, you need an invitation code. Oooh, very exclusive. Pretty people to the front of the line! You can start the process here. If you run into problems, check this post here or the forums here. All invitations and registrations are managed out of Microsoft Connect.
CONFIGURE WINDOWS SERVER 2008 VPC
- Make sure you have Virtual PC 2007 with SP1 installed
- Download the Virtual Hard Drive (VHD) file and expand
- Within the Virtual PC Console, select: New >> Create a virtual machine >> provide a name and location >> Windows Server 2008 >> Adjust the RAM to at least 2GB if not 2.5GB (2560MB) >> An existing virtual hard disk (browse out to the VHD file you downloaded above and expanded) >> Finish
- Fire up the VPC instance and log in (credentials are on the download page)
- (TIP: If you need to flip between the window frame and Full Screen, it's Right-ALT + Enter)
- Suggestion: Right-mouse on the desktop, Properties, Screen Saver: None.
- Start >> Administrative Tools >> Server Manager (may already be up when you log in)
- Click on Add a Feature
- Within .NET Framework 3.0 Features, select the .NET Framework 3.0, (and within that...) select WCF Activation, (and within that...) select HTTP Activation and finally but optionally Windows PowerShell
- Click on Add a Role
- Select Web Server (IIS)
- Click Add Required Features
- Under Role Services, select ASP.NET (click Add Required Role Services if prompted)
- Create a share to your core OS
- Within the window frame of the VPC instance, select File...Install or update...additions
- Run Setup.exe and follow the instructions to install the additions. Restart if prompted.
- Within the window frame of the VPC instance, select Edit...Settings
- Select Shared Folders. Click Share Folder...
- We're setting up a share to all this software we're about to install which you've downloaded (or will). Typically, I have an Installs directory housing all my software installation files.
- Firewall: I'm not 100% sure this is required but I enabled port 1433 through the firewall for SQL Server. Instructions.
INSTALL THE SOFTWARE
Download or copy and then install all this software into the folder on your core OS which we just shared to the VPC. I typically just install from the share. This conserves space and prevents the virtual hard drive from expanding unnecessarily.
- .NET Framework 3.5 SP1 (Here is the full download...the default is the bootstrapper. I'm assuming you lack Internet connectivity within your VPC.)
- SQL Server 2005 Express or above (I'm using SQL Server 2008 Express).
- Note: SQL Server 2005 Express is included with Visual Studio 2008 Professional if you want to bundle this step and the next.
- Note: I'm not sure if Express is a requirement but when starting up my Visual Studio instance and test project, it was hard-coded to look for .\SQLEXPRESS for Development Storage. So, I recommend installing Express vs. one of the full versions.
- Visual Studio 2008 with SP1 (Express is supported!)
- Windows Azure Tools for Microsoft Visual Studio January 2009 CTP
- Windows Azure Software Development Kit (January 2009 CTP)
- Microsoft .NET Services SDK (Dec 2008 CTP)
- SQL Data Services (SDS) SDK (CTP)
- Azure Services Training Kit - February Update
- Fix available: ASP.Net MVC RC Crash in a Windows Azure Cloud Service Project