SQL Server 2014 Database Deploy to a Windows Azure VM

SQL Server 2014 (The CTP2 can be downloaded from here) adds many features that simplify the life of the DBA who isn’t very familiar with the Cloud world. One of them is the possibility to deploy a Database to a Windows Azure Virtual Machine. It is a very straightforward process that can be run on-premises and doesn’t require a VPN connection to Windows Azure. On the Azure side you need a Cloud Adapter that is installed selecting a Virtual Machine image that contains SQL Server.

image

The Cloud Adapter is a service that listens on TCP port 11435 and it is installed and configured automatically by the provisioning process of the Windows Azure Portal. It is installed in Tools subfolder under the SQL Server installation path (see the image below)

image

DEPLOY A DATABASE TO WINDOWS AZURE

Let’s start to deploy my DB1 database hosted on my laptop, which is running on SQL Server 2014 CTP2.

SSMS has the option to “Deploy Database to a Windows Azure VM”,   that can be activated from the Task menu

image

This option launches a Wizard (we love wizards Sorriso) that allows us to select the SQL Server instance, the database and a temp folder that will be used for backup files.

image

next step is to enable the communication with the Windows Azure subscription that will host the VM. The wizard has the possibility to specify a subscription id, a management certificate, or sign in to the Windows Azure portal to download a publishing profile file.

image

image

At this point we can choose either to use an existing VM or create a new one

NEW VIRTUAL MACHINE

If we decide to create a new VM we have to specify:

- FQDN of the cloud service

- User and Password of the administrative account

- Size of the VM choosing from one of the list explained at this link

- Location

image

clip_image001

clip_image002

The deployment wizard opens the CloudAdapter port (11435) and the RemoteDesktop port (3389).

clip_image003

If we need to restrict access to an endpoint we can use the ACL option. Opening endpoints is optional in case of a direct connection to the Virtual Machine (for example in case of a VPN site to site)

image

EXISTING VIRTUAL MACHINE

If we decide to use an existing one we need to select:

- an existing Cloud Service

- an existing Virtual Machine

- an existing Storage Account

DeployDB2

The VM credentials and the Cloud Adapter TCP Port

vmsettngs

After this part we just need to wait until the database deployment is completed

clip_image001[5]

And below we can see our database running in a Windows Azure VM

clip_image002[7]

Pretty easy right? Sorriso

For additional information you can check here and here

Francesco

@francedit