Jun 222013

I’m running few different databases on my cloud azure servers, some of them are on Linux (old admins never stopped using *nix system  J )  and sometimes I need to connect to those servers from my local machine.  I could just open ports but that would not be secure. Since on my every Linux VM has SSH http://en.wikipedia.org/wiki/Secure_Shell running I can utilize port tunnelling. http://en.wikipedia.org/wiki/Tunneling_protocol   that work very well and configuration is extremely simple.  Let’s do that step by step.

1) We need Putty (SSH Windows Client) http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

2) I assume you have ssh running on Linux VM  if not guide is here http://www.windowsazure.com/en-us/manage/linux/how-to-guides/ssh-into-linux/  One note preferable use keys not passwords .

3) We need to setup normal connection to our VM

4) Than under Connection > SSH -> Tunnels

We need to specify source port (port on our local machine that will be forwarded) , in destination we setup interface and port on our remote host i.e. in this example  is IP of local interface but on remote host and remote port  .

5) Test connection

in my case is a connection to my Mongo DB instance .

Connection is setup from local machine, traffic is encrypted, overhead bandwidth is low, it works perfectly when you develop on local computer and you want to connect to remote db.  Please note I wouldn’t advise running that as permanent connection for applications, in most cases db and application should be as close as possible to each other so for production the best solution is service or VM on Azure.


 Posted by at 8:18 pm
Oct 282012

That post will not be  about “The Shard” building  in London but as the building it will be something about scale,  “Sharding”  well it’s a DB architecture or technique of horizontal partitioning data between servers to provide application scale-out. As every technique has good pros and cons and there are already some  implementations, and guess what  using  federation of Windows Azure SQL Databases you can build  that architecture on Azure platform . There is a great article “How to Shard with Windows Azure SQL Database” on Technet Wiki which explains in details all benefits and challenges around that area. Happy reading and/or  happy “sharding” !

 Posted by at 10:25 pm
Jul 212012

The article is also published on http://msdynamicsworld.com


If you are using Windows Azure, then you have probably noticed huge amount of recent changes. We have a new portal which looks and functions very nicely, more IaaS, and a lot of extended capabilities.Scott Guthrie published a summary article on his blog about new Azure 2.0 that is worth a look.

Let’s than start with another part of Windows Azure that might be a very helpful for those of us working in Microsoft Dynamics world, the “Worker Role”. (You can see our previous explorations on routing orders and brokered messaging also.)  It sounds very mysterious but it’s actually simple and powerful at the same time. Worker roles are applications that are developed to run asynchronously and to work on long-running or perpetual tasks independent of user interaction or input.  I would definitely compare them to the older (before cloud era ) “Windows Service” . The beauty of the worker role comes also with interoperability – a worker role can host almost any type of application including Java-based, Apache Tomcat, .NET of course, even WCF web services.

But enough theory let’s present our…

Business Problem

Company XYZ is adding more and more customers and they need to perform more and more periodic jobs. Two of these jobs in particular are consuming a lot of resources. One is generation and transfer of invoices and the other is monitoring of their SLA’s (Service Level Agreements).

Generation of invoices seems like a pretty simple job, but our company has many to prepare and they are generated as PDF files. That process happens only during the last two days of every month. In the old days they would have needed to invest in a new server to perform that task effectively and the server would be fully utilized over those two days only. Now they have access to the Windows Azure platform and worker roles.  The worker role is designed to execute long-running processes. It can connect to their Dynamics CRM systems, generate PDF files, and attach those PDFs to emails or SharePoint libraries.

And because a worker role uses the same principle as other Azure Services, it can be scaled on demand. Combining the strength of the Windows Azure Diagnostics API and the Service Management API makes really easy to implement custom logic for auto-scaling Azure Services. That means Company XYZ will pay only for effective usage of compute when they will need it. And  if suddenly the number of invoices increases, they will be able to handle that very quickly without ordering and waiting for new hardware.

The worker role comes in very handy for all sorts of monitoring type activities. Usually in the Dynamics CRM world all kind of SLAs are handled by workflow and that works quite well usually. But workflows have some limitations when it comes to quick, scalable behaviour, and also it is difficult to run workflows across multiple instances of Dynamics CRM. For that reason, XYZ invested in one central, scalable SLA monitor in an Azure worker role that monitors not just Dynamics CRM cases, but also other systems.


Worker roles can be very handy for Dynamics CRM implementations and other business applications that require periodic activities and reliable background processes. They provide effective scalability, very good elasticity, and full control over background processes. Yet again, Azure plus Dynamics CRM 2011 prove to be good match

 Posted by at 11:38 pm
Jul 022012

The XRM User Group will host a very interesting webcast which some of the Azure & MS CRM enthusiasts will like it,  see description from their website

Windows Azure 2012 Spring Wave and what it means for CRM

Shan McArthur will discuss some of the highlights of the important changes made to Windows Azure in the 2012 spring wave and how you can leverage some of the new changes in your CRM environment.
Focus will be on Azure Web Sites and the new deployment model for your xRM Portals or extensions as well as Azure Virtual Machines where you can set up development or demo CRM environments running in the cloud.

Link to Meeting

 Posted by at 9:02 am