Two days ago, I used our test installation of System Center App Controller to create a new virtual machine in one of our Windows Azure accounts.

After the successful creation of the VM, I decided to destroy it. App Controller has sent the command to Azure and deleted the VM but left some garbage: the VM VHD disk into the blob container. Then I tried to delete the VHD via Azure Portal. The portal told me that the operation was successful but I continued to see the VHD (and to waste money on it).

After several more attempts, I decided to use PowerShell Azure commandlets and I was able to delete the VHD (and save money).

In the next days, I will investigate more on the problem. Meanwhile it is nice to know that you can continue to trust PowerShell for real management of systems.

Last week I had an interesting conversation with a customer CIO regarding Windows Azure. This guy asked me if he can adopt Azure without to be bound to the platform. Basically he want the possibility of moving his applications to another cloud provider or to on premise systems. We were discussing about PAAS or, to be more precise, to use Windows Azure services like storage, service bus, etc. The main concern was about using these services that are very useful but bind to the platform the solution.

I think that the answer is in good software design. We already have several applications on Windows Azure and one is very big and complex (Big Data Collector, a platform for telemetry and remote control of devices like chillers, energy generators, cars, etc.). When I designed this application I designed the software using some thin isolation layers between the application code and the Azure services API. In this way we would be able to move the software to another cloud provider with few weeks of recoding. In this scenario the main advantage of Azure is that it implements services that have a common behavior with other services (on the cloud or on premise). The result is that we are not locked in with the vendor. And we can concentrate with the advantages that Azure give us like low costs, elasticity, multi tools support (for example BDC is composed by several roles written mainly in C# but it has one written in Java).

At the end the customer began to discuss about how to build an application.

Quest’anno terrò una sessione, insieme a Fabio Santini, alla Sharepoint & Office Conference 2011. La sessione ha l’evocativo titolo “Scenari di integrazione tra Sharepoint e Windows Azure” e tratterà di come integrare lo storage di Azure con le funzionalità di Sharepoint. Ci sono diversi scenari di utilizzo ma il più comune che mi è capitato è quello che riguarda la distribuzione di documenti (mediamente grandi come, ad esempio, i disegni) alle varie sedi aziendali.

Mio intervento a parte, la conferenza è un evento molto interessante per chi si occupa di tecnologia Microsoft.

Microsoft Technical Conferences 2011