Monday, March 18, 2013

Bowlus for AWS

To learn the upcoming Azure IaaS Virtual Machine, I decided to migrate Cloud Samurai project (code named Bowlus) to IaaS infrastructure. Since Azure IaaS is not GA yet, I did this first on Amazon AWS. This  also gave me an opportunity to learn and compare the IaaS offering from both Azure and Amazon.

After the initial redesign for IaaS, I found the benefit of IaaS is rather obvious:

  • Use the more mature IIS Web Deploy cmdLine tool to provision web site, instead of update IIS configure file directly.
    • Updating IIS configure file is a little bit dangerous, and it will cause troubles when concurrent access is not managed well.
    • Web Deploy is mature tool which is also used in Visual Studio to deploy web site to Azure. 
    • Using Web Deploy generates deployment logs, which helps diagnosis and auditing.
    • De-provisioning web site using Web Deploy is also cleaner and safer.
    • This is only possible under IaaS, since you have to pre-install Web Deploy tool and other dependent services in the VM.
  • Reduce two layers: routing + hosting, into one layer. The design is thus more simple and robust.
    • This change might also work in PaaS. Need further investigation.
    • IaaS gives us more flexibility to manage end points on each VM, and thus makes this design change more natural.
This is the live test link:


This is the new design for AWS:

2 comments: