Tuesday, April 2, 2013

Transitioning Dev Environments Azure IaaS

The internal policy at Create It is to use Virtual Machines to do all the coding, with different environments for Web development, BizTalk, SharePoint, etc. My personal dev-pc is still a 8Gb/Core i7 Sony Vaio, but I’ve been using it less and less, replaced by a slim Asus Ux31 Ultrabook which weighs much less and has much better autonomy. At only 4Gb/Core i5, however, I can’t really run VM’s on it. A few weeks back I decided to evaluate both Azure VM’s and TFS Service for a new project we started, but from the point of view of development itself and not “just” hosting a solution.

This is a web ecommerce web site for one of a widely known quality brand in Portugal, which will be hosted with Azure Sites or IaaS, and uses the Service Bus to integrate with internal systems (SAP). First I created a small VM, installed SQL express and visual studio 2012, and worked remotely via Remove Desktop. Things were acceptable, but RAM was almost always maxed-out, so I changed to a Medium VM with 3.5Gb. One cool detail is that you don’t have to reformat your VM to make this change, just change the configuration in the Azure Portal (the benefits of virtualization), and change is immediate.

After three weeks, the experience has been great, and not having to depend on hardware but relying on a “thin client” model is a great freedom, and I don’t have to worry about the latency of my external USB3 disks. Graphical fidelity and UI responsiveness is obviously not the best, but I don’t feel latency when typing or debugging.

One problem I have is that sometimes I am unable to remote desktop to the VM using the saved rdp file, and have to do it again via the azure portal, but when I connect, the VM hasn’t been restarted. Didn’t spend the time to diagnose the issue yet, it just happened a couple of times. Anyway, it’s a great experience, very convenient

As to TFS Service, I just want need it to go GA with public pricing FAST, because I’ll move all our projects there and discontinue our internal TFS. Everything we’ve tried has worked fine, check-in/check-out is quick, issue management is great. We still use Final Builder internally to orchestrate the builds, with its outstanding graphical build-configuration tool, but this might change.

The next challenge I’ll look into is having more people using the dev VM, or copy&replicate this VM for other devs to use. We also installed redundant ISP connections to get ready for this change in the short term.

No comments:

Post a Comment