Deploying EPDM on Windows Azure

Transient

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

Future of CAD and Cloud Computing

Now that we are all beta testing SolidWorks 2009, I can't help but think about how much CAD applications have transformed over the past 15 years and what path the future will take. With the launch of cloud-based applications like Google Apps, Photoshop Express, and Windows Live Mesh, it is hard to ignore this movement of web-based computing. Many of us have watched products like SolidWorks grow up into very powerful applications but still we are locked to using CAD on a desktop machine. In many cases this is sufficient and probably the first choice, however this was the same belief we had about word-processing and spreadsheet applications just a few years ago. Today these type of applications are ubiquitous and can be found up in the cloud.

With the introduction of platforms like Microsoft Silverlight and Adobe Flash, applications for the web are now popping up all over the place, even in arenas that are dominated by the desktop. There are arguments that cloud-based application are limited not only in features but also in access, since many of us are not always connected to the Internet. There are some technologies that allow web-based applications to work while offline, like Google Gears. Gears allows some applicatoins like Google Reader and Google Docs to work while disconnected from the Internet, utilizing Java in the background to power the web page's technologies.

There are a few different configurations of how cloud-computing can be done with respect to the interfaces in which the user interacts with the application. Some web-applications are solely accessed through a web browser like Internet Explorer or Firefox, while others can communicate with the cloud through a desktop application, allowing collaboration and/or sync features. I have recently started using a great application called Evernote, that is a note taking application that exists both on the web and on the desktop. Evernote can be accessed solely via the web using a web browser but also has a native desktop interface, running on either Windows or Mac, giving offline access to my notes. In this case, the cloud not only brings storage and sync capabilities, but also brings OCR (Optical Character Recognition) for pictures and hand written notes. I can take a photo of my hand written notes or a picture containing text and it will recognize it for search. This powerful feature doesn't happen on my desktop application but once my notes are synced, Evernote's server does the OCR for me and the results are synced back to my system. This flexibility allows me to be mobile and give me all the power everywhere I need it.

So back to the CAD application, what if SolidWorks started small and developed a cloud-based eDrawings? This could be an extension of some of the SoildWorks Labs projects like BluePrint Now, Drawings Now, and COSMOSXpress Now giving not only a web-based interface but extend features like storage and collaboration as well. Currently both BluePrint Now and DrawingsNow share an online storage space which gives some cloud benefits since they can be accessed from anywhere. This could also be coupled with a connection from the installed desktop application, allowing simplicity of access within the current working environment. Learning from what eDrawings could bring, SolidWorks itself could be extended to the cloud to do minor adjustments and collaboration across the Internet.

These are obviously my own "dreams" but if anyone can make a CAD application utilize the Internet and bring it to the mainstream, SolidWorks can. Don't forget that SoilidWorks tried this back in February 2002 with a collaboration/project management website called 3D TeamWorks that allowed for some of this functionality. That was before many of these advanced technologies existed and also before most people were comfortable with using the web as a serious platform for computing. As these technologies begin to break many of our everyday applications free from the desktop or extend the current capabilities back to a powerful server in the cloud, the glass ceiling of innovation is broken and the "Clouds the limit"! ~Lou