Deploying EPDM on Windows Azure


Two weeks ago I did a show on my experiences of setting up a test server for EPDM on Microsoft's Platform as a  service (PaaS) and have been testing this setup over the last week.  I wanted to show a quick setup tutorial since this services has a 90 day trial where you can test drive it fully!

Since many of you probably have a Microsoft account, especially if you are testing Windows 8 or more primitivlely have a Hotmail account login, you can sign up for the trial and then get access to the Portal for Windows Azure.  Here are the options that you get access to once you complete the trial signup process.

For EPDM purposes there were two services that I was interested in, Virtual Machines and SQL Databases.  At first my thought was to use a VM to host the server requirements for the archive and database services and a drive to house the archive hive (data store for file versions) and then host the database on the hosted SQL database service.  

Before I move forward, I tested if this SQL service would support all the same features as the on-premises version .  After further research, this was more of a service to power database applications and does not support stored procedures and other requirements needed for the vault creation wizard (SA access or db_owner access).  I did try a few other tricks like creating the database on a local machine and then importing it to the SQL store but no luck.  In SQL Management Studio 2012 there is a new database task to deploy to SQL Azure which failed when I tried with the Conisio Master and vault database:

So despite wanting to use the hosted SQL platform, I had to resort to utilizing a local instance of SQL on a Windows Azure virtual machine.  The saving grace to using the Windows Azure VM is that you can literally deploy an instance in about 2 minutes with SQL already installed and setup.  The other benefit is downloading the 1GB EPDM install package also took only 3 min to download from the deployed VM!

So here is the quick list to build your own testing vault for EPDM with a picture step by step:

Once you follow the steps in the VM creation wizard, you will need to wait until the status of the VM show "Running".  You will then be able to click "Connect" which will create an RDP file with all the required connection info.  Now you have remote access to a brand new VM running Windows Server 2008 R2 with MS SQL 2012 installed.  There are a few changes to the setup that will need to be adjusted before use with EPDM is possible:

  1. Switch the SQL instance to Mixed mode and set your SA password (I am assuming you know how to do this -> Properties of the server in MS SQL MGT Studio.)
  2. Add connection endpoints in Windows Azure to allow specific port communication with the new server (I used different ports for the archive server for the external port.
  3. Possibly open up ports in the firewall on the server as well (3030 and 1433/1434)

Now that the server is setup, the rest is done on the client machine.  On the client machine, add the public name of the server to the client machine's hosts file (C:\Windows\system32\drivers\etc) and point it to the public IP address shown on the VM dashboard on Windows Azure.  Now you can add the server and create a new vault hosted in the cloud.

Now I know I left out a few steps but there are a few things to also mention about this platform.  If this is going to be a production system, this setup does not address encryption, therefore all traffic is open and would recommend setting up a server to server VPN so that traffic is secure.  The other mention is that this does have to eventually be paid for so if you are curious on the cost of a hosted server, Microsoft has built a beautiful pricing tool that gives you live feedback of the monthly cost for your cloud setup.

I run into a lot of companies that do not have an IT staff and/or resources to setup the infrastructure required to deploy EPDM.  Having a service that can provide a server at a reasonable cost, with nearly no maintenance and automatic backup off site can be a nice resource for the small business.  I like it for testing new software since I can deploy quickly and not impact my production environment. ~Lou