<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="https://www.w3.org/2005/Atom" xmlns:sy="https://purl.org/rss/1.0/modules/syndication/" xmlns:dc="https://purl.org/dc/elements/1.1/" xmlns:content="https://purl.org/rss/1.0/modules/content/" xmlns:wfw="https://wellformedweb.org/CommentAPI/" xmlns:slash="https://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>Rossano Vitulli's Blog</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/rossanov/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/rossanov/feed.xml</link>
    <description />
    <lastBuildDate>Wed, 17 Apr 2019 03:50:29 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Workaround for Reducing Size of Azure Data Disks (Windows)</title>
      <link>https://docs.microsoft.com/archive/blogs/rossanov/reducing-size-of-azure-data-disks-windows</link>
      <pubDate>Thu, 30 Jun 2016 00:17:45 GMT</pubDate>
      <dc:creator><![CDATA[Rossano Vitulli - MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/rossanov/?p=246</guid>
      <description><![CDATA[Azure supports only disk incremental resizing.
The aim of this article is to describe a workaround...]]></description>
      <content:encoded><![CDATA[<h2><strong>Azure supports only disk incremental resizing.</strong></h2>
The aim of this article is to describe a workaround that will achive this goal.

For Standard Unmanaged Storage, reducing the size of a disk is pointless, since only the actual data stored on disks will be charged, regardless of the disk capacity. For this reason it is always a good practice to use the maximum disk size (1 TB, 1023 GB).

Unmanaged Premium Storage Disks and Managed Disks (Standard HDD, Standard SSD and Premium) will be charged basing on the selected perfomance tier, which can be of one of the available types (P10, P20 or P30). The performance tier is driven by disk capacity:
<ul>
	<li><strong>P10</strong>: x &lt; = 128 GB</li>
	<li><strong>P20</strong>: 128 GB &lt; x &lt; = 512 GB</li>
	<li><strong>P30</strong> : 512 GB &lt; x &lt; = 1023 GB</li>
</ul>
The above list may be updated over time, as new Storage Tiers may be introduced. For a complete and updated list, please refer to this article: <a href="https://docs.microsoft.com/en-us/azure/virtual-machines/windows/about-disks-and-vhds" target="_blank">Azure Disks</a>.
A proper scenario for which the shrink of an Azure Disk can be helpful could be when it's necessary to reduce costs, by scaling down to a lower performance tier,

<strong><span style="color: #ff0000">Note: this workaround will work only for DataDisks. OS Disks are not supported.</span></strong>

The idea is basically built on the following steps
<ol>
	<li>Attach a new Empty Data-Disk, create a volume and assign an available drive Letter</li>
	<li>Stop/Close any application that might update data in the source drive. This is necessary for preserve data consistency.</li>
	<li>Move data from the DataDisk you want to shrink to the new drive, using <em>robocopy </em>(Windows)<em>.

</em>Why robocopy? There is no better answer than the one provided here: <a href="https://blogs.technet.microsoft.com/josebda/2014/08/18/using-file-copy-to-measure-storage-performance-why-its-not-a-good-idea-and-what-you-should-do-instead" target="_blank">https://blogs.technet.microsoft.com/josebda/2014/08/18/using-file-copy-to-measure-storage-performance-why-its-not-a-good-idea-and-what-you-should-do-instead </a>
NOTE: You might want to preserve Security information from the source drive (i.e. if the disk you are resizing contains SQL Server data, you need to keep the existing permissions for the SQL Service Account to that drive's folder).

This is a sample command :
<pre>robocopy E:\ F:\ *.* /j /e /sec /Xd "System Volume Information" "$RECYCLE.BIN" /Xo</pre>
The command above will move all data from E: to F:. Copy will be optimized for large files (/J), and will affect al files and subfolders (/e). Security information will be preserved (/sec). The copy will ignore system folders like "Sys Vol Info" and the recycle bin (/Xd). Option /Xo will not overwrite existing data unless the source copy is <em>newer</em> than the one possibly existing at destination.</li>
	<li>Remove the original DataDisk</li>
	<li>Rename the new drive as the original.</li>
	<li>Start/Run the Application you stopped on step 2.</li>
</ol>
Simple but reliable!

Enjoy your time shrinking your data disks!]]></content:encoded>
    </item>
    <item>
      <title>Migrating Azure IaaS SQL Server AlwaysOn Cluster to Premium Storage (Classic)</title>
      <link>https://docs.microsoft.com/archive/blogs/rossanov/migrating-azure-iaas-sql-server-alwayson-cluster-to-premium-storage-classic-4</link>
      <pubDate>Wed, 29 Jun 2016 23:32:49 GMT</pubDate>
      <dc:creator><![CDATA[Rossano Vitulli - MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/rossanov/?p=105</guid>
      <description><![CDATA[Microsoft recommends the use of Premium Storage for optimal performance of SQL Server on Azure...]]></description>
      <content:encoded><![CDATA[<p class="wp-caption-dd">Microsoft recommends the use of Premium Storage for optimal performance of SQL Server on Azure Virtual Machines. If you are running a SQL Server AlwaysOn environment on Standard storage, you might plan to migrate your environment to Premium Storage. This Step-by-Step guide will describe how to migrate to Premium Storage an existing SQL Server AlwaysOn Cluster built on Azure VM (IaaS), reducing the down time to its minimum.</p>
This blog article will cover infrastructures deployed with <strong>Classic</strong> deployment model. Microsoft recommends that most new deployments use the <strong>Resource Manager</strong> model.

The scenario covered here is responding to the following constraints:
<ul>
	<li>Keep the original FQDN for the cloud service.</li>
	<li>Reduce the downtime as much as possible.</li>
	<li>Use a single subnet.</li>
</ul>
<h1>Introduction</h1>
In this guide it will be assumed to have an initial configuration similar to the one described below.

[caption id="attachment_265" align="aligncenter" width="291"]<a href="https://msdnshared.blob.core.windows.net/media/2016/06/fig1_.png"><img class="size-mediumlarge wp-image-265" src="https://msdnshared.blob.core.windows.net/media/2016/06/fig1_-291x350.png" alt="Fig.1 Initial Configuration" width="291" height="350" /></a> Fig.1 Initial Configuration[/caption]

&nbsp;

The Client Application connects to the SQL AlwaysOn AG Cluster through the External Listener. The AG cluster is composed by node SQLDB1 and SQLDB2, both running on Standard Storage and connected to the Subnet1 of the same VNet. Both VMs are running under the same cloud service, in the example called "CloudService1". A Failover Witness is also configured, which might be an additional cluster node or a File Share Witness (not relevant for the scenario).

The idea of this solution is to keep the existing cluster nodes running as long as possible, meanwhile the 3<sup>rd</sup> and a 4<sup>th</sup> nodes are created with Premium Storage and then added to the Cluster. In this way the HA requirements will still be met. This intermediate situation is described by fig 2.

[caption id="attachment_275" align="aligncenter" width="457"]<a href="https://msdnshared.blob.core.windows.net/media/2016/06/fig2_.png"><img class="size-mediumlarge wp-image-275" src="https://msdnshared.blob.core.windows.net/media/2016/06/fig2_-457x350.png" alt="Fig2. Intermediate Situation" width="457" height="350" /></a> Fig2. Intermediate Situation[/caption]

NOTE: for a certain amount of time, there will be 4 AlwaysOn replicas running together. This time depends on the time necessary to configure the new nodes plus the time necessary for restore each DB in the Availability Group on the new nodes.

<span style="color: #ff0000"><strong>Please, evaluate the impact on costs accordingly.</strong></span>
<h2>Abstract</h2>
The process is divided into 4 stages.

In stage 1 node SQLDB3 and SQLDB4 will be created as DS-Series VMs with Premium Storage under a separated cloud service "CloudService2". These nodes will be configured as 2 additional SQL AlwaysOn Secondary Replicas of the same AG Cluster. Both VMs will be also connected on the same Subnet1 as the existing nodes.

<strong>Note: It is required to have 2 IP Addresses available from the Subnet.
</strong>In case there are no more available addresses, since it is not possible to resize the address space configuration of an existing Subnet unless it is empty, the only option would be to locate 2 resources and move them on a different subnet.

Stage 1 completes as soon as the 4 nodes will be all fully synchronized (the 4th node will actually be on status "Synchronizing", as only a maximum of 3 replicas can be set to "synchronous replication" at the same time.

In Stage 2, the the initial 2 nodes will be removed from the AG Cluster while the new nodes will become primary replica and synchronous secondary replica.

In our scenario, it will be assumed that the existing CloudService1 does not support DS-Series VMs, therefore the new nodes have to be created on a separated new cloud service: “CloudService2”.
<p style="padding-left: 30px">For classic deployments, there is a high chance that the allocation request to create DS VMs on the existing cloud service might fail. The allocation request is actually submitted to the specific cluster in the Azure datacenter that was uniquely associated to the cloud service, when it was created the first time. If the type of resource requested (DS VMs requires specific hardware to run Premium Storage) is not supported by that cluster, the allocation request then fails. This behavior is known as “<strong>Cluster Pinning</strong>” and it is documented in this article: “<a href="https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-windows-allocation-failure/">Troubleshoot allocation failures when you create, restart, or resize Windows VMs in Azure</a>”.</p>
As a consequence, since node 3 and 4 do not belong to CloudService1, they cannot be addressed by the existing External Listener, hence the AG Listener will only be able to automatically failover between node 1 and 2.

In stage 3 the behaviour explained above will  be hanlded. All 4 VMs will be destroyed by keeping their disks. The cloud services will be removed as well, but the CloudService1 will be eventually be recreated within the re-deployment of nodes 3 and 4, and keep the original FQDN of the cloud service 1, leaving the client configuration unchanged.
These steps are necessary in order to keep the original FQDN of the cloud service 1 and leave the client configuration unchanged. The final configuration is described by fig 3.

[caption id="attachment_285" align="aligncenter" width="304"]<a href="https://msdnshared.blob.core.windows.net/media/2016/06/fig3_.png"><img class="wp-image-285 size-mediumlarge" src="https://msdnshared.blob.core.windows.net/media/2016/06/fig3_-304x350.png" alt="fig3_" width="304" height="350" /></a> Fig.3 Desired Configuration[/caption]

In Stage 4 we will finalize the migration by ensuring that node 3 and 4 will run under the same Availability Set and that the cloud service will be configured with a resered IP Address.

Final step will be to recreate the External Load Balancer and the AG Listener.
<h1>Stage 1: Adding the new nodes to the AlwaysOn AG Cluster</h1>
<ol>
	<li>Create the new DS-Series VMs on the same VNet/Subnet of the existing replicas. Select a new cloud service name, i.e. “CloudService2”.
Use an existing Image from the Azure Gallery with SQL Server already installed, or perform a manual installation of SQL Server (Enterprise Edition) on a Windows Server VM. It is important to run the same SQL Server version on all replicas.
<strong><strong><a href="https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-windows-portal-sql-server-provision/">Provision a SQL Server virtual machine in the Azure Portal</a></strong></strong></li>
	<li>It is recommended to have a separated storage account for each VM in the same Availability Set.
This will reduce the impact of a potential service interruption event affecting the cluster on which your storage account is located.
Having the VMs running on different storage clusters, will reduce the probability to have the storage layer acting as a single point of failure.
I.E.:
For the SQL Server Availability Set:
<pre>Node SQLDB3 --&gt; storage account name = <strong><span style="color: #339966">a0x</span></strong>storageccountsqldb3
Node SQLDB4 --&gt; storage account name = <strong><span style="color: #339966">b9f</span></strong>storageccountsqldb4</pre>
Each storage account name should have a <span style="color: #339966"><strong>3-digits prefix</strong> </span>created by a custom hash function.
This hash prefix has the purpose to influence the allocator to <em>most likely</em> put the desired storage account in a different storage cluster. It might be necessary to recreate the storage account wiht a different hash prefix, in case it will be cretaed on the same storage cluster.
In order to check which storage cluster your storage account lays on, you can run the following command:
<pre>nslookup <strong><em>storageaccountname</em></strong>.blob.core.windows.net</pre>
<p dir="ltr">The results will show the actual cluster name. I.e:</p>
<pre>blob.<em>db5prdstr04a</em>.store.core.windows.net</pre>
"<em>db5prdstr04a</em>" is the actual storage cluster name.
For a full comprehension of this behavior, refer to this article:
<strong><a href="https://https://azure.microsoft.com/en-us/documentation/articles/storage-performance-checklist/#allservices" target="_blank">Microsoft Azure Storage Performance and Scalability Checklist - AllServices</a></strong></li>
	<li>This guide will assume that all VMs lay on <span style="text-decoration: underline">the same subnet</span>. Make sure that your subnet has 2 available IP Addresses available in its address space. In case you have no more available addresses, if possible, try to move 2 resources on a different subnet. Take in to account that you can’t resize the address space of an existing Subnet unless it is empty (no IP are assigned).Use this article to understand how to move VM to a different subnet:
<strong><a href="https://azure.microsoft.com/en-us/documentation/articles/virtual-networks-move-vm-role-to-subnet/">How to move a VM or role instance to a different subnet</a><em>
</em></strong></li>
	<li>At a minimum, use 2 Premium Storage P20 disks where one disk contains the log file(s) and the other contains the data file(s) and TempDB.All details on performance optimization can be found on the following article:<strong>
<a href="https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-sql-server-performance-best-practices/">Performance Best Practices for SQL Server in azure Virtual Machines</a><em>
</em></strong></li>
	<li>It is recommended that, if possible, the file path (including the drive letter) of a given secondary database be identical to the path of the corresponding primary database. This is because if you move the database files when creating a secondary database, a later add-file operation might fail on the secondary database and cause the secondary database to be suspended.
<strong><a href="https://msdn.microsoft.com/en-us/library/ff878349(v=sql.120).aspx">Manually Prepare a Secondary Database for an Availability Group (SQL Server)</a></strong><em>
</em></li>
	<li>Complete the configuration of the VM before joining it to the AG Cluster.
The following steps are taken and adapted from the following article:
<strong><a href="https://blogs.msdn.microsoft.com/sqlalwayson/2013/01/23/test-lab-create-an-alwayson-availability-group-in-windows-azure-end-to-end/#Create_Domain_Controller_Server">Test Lab: Create an AlwaysOn Availability Group in Windows Azure End-to-End</a></strong><em>
</em>
<ol>
	<li>Create firewall inbound rules for:
<ul>
	<li>TCP Port : 59999 (ILB probe port)</li>
	<li>TCP Port : 1433 (AG listener port)</li>
	<li>Program: sqlsrv.exe (SQL Server)</li>
</ul>
</li>
	<li>Add server feature "Failover Clustering"</li>
	<li>Make sure that it is possible to run “nslookup” against the FQDN for the domain controller (i.e; dc1.contoso.com). If not, then you need either to set the DC as primary DNS for the VM, or add the DC as DNS server on the VNet:
<strong><a href="https://azure.microsoft.com/en-us/documentation/articles/virtual-networks-manage-dns-in-vnet/">Manage DNS servers used by a virtual network (VNet)</a>
</strong></li>
	<li>Join the VM to the Active Directory Domain and restart the VM</li>
	<li>Login as the built-in admin user and add a domain user to the VM local admins: In the <strong>Start</strong> menu, type “<strong>user</strong>“, then click <strong>Give administrative rights to a domain user</strong>.</li>
	<li>Connect to the SQL Server Instance and add the domain users as “sysadmins” role for the SQL Server Instance.</li>
	<li>From SQL Configuration Manager, set the SQL Server service account with the appropriate domain user.</li>
	<li>Assign a static IP to VM from one of the available addresses in the Subnet.</li>
	<li>Access to the Failover Cluster Manager and add node 3 to cluster:
<a href="https://msdnshared.blob.core.windows.net/media/2016/06/fig4.png"><img class="wp-image-145 size-mediumlarge aligncenter" src="https://msdnshared.blob.core.windows.net/media/2016/06/fig4-500x344.png" alt="fig4" width="500" height="344" /></a>NOTE: disable “Add all eligible storage to the cluster”.</li>
	<li>Connect to node 3 through RDP (use the domain user). From SQL Configuration Manager, open SQL Server Instance properties and enable AlwaysOn feature:
<a href="https://msdnshared.blob.core.windows.net/media/2016/06/fig5.png"><img class="wp-image-155 size-mediumlarge aligncenter" src="https://msdnshared.blob.core.windows.net/media/2016/06/fig5-300x350.png" alt="fig5" width="300" height="350" /></a></li>
</ol>
</li>
	<li>It is now possible to add the node as a secondary replica of the existing Availability Group. The below article explains in details how this operation should be done:
<strong><a href="https://msdn.microsoft.com/en-us/library/hh213247(v=sql.120).aspx">Add a Secondary Replica to an Availability Group (SQL Server)
</a></strong>Follow section : “Manually Prepare a Secondary Database for an Availability Group (SQL Server)”.
<strong><span style="color: #ff0000">WARNING: this step could require very long time, depending on the amount of databases to restore and to their size.</span></strong>
Node 3 should be configured as “<em>Synchronous</em>” replica in order to ensure no data loss. Manual failover will be required, since node 3 cannot be reached by the External Listener (and the LB). If the number of databases in the AG is too high, in order to prevent severe performance drain on the primary replica, the type of replication for node 3 can be set to “<em>Asynchronous</em>”, with risk of data loss.</li>
	<li>Create an additional DS Series VM (node 4) and repeat all the above steps. Node 4 can be configured as “<em>Asynchronous</em>” replica with Manual Failover option.
As soon as all the replicas will be fully synchronized, the situation on the AlwaysOn Dashboard should appear similar to the screenshot below:
<a href="https://msdnshared.blob.core.windows.net/media/2016/06/fig6.png"><img class="wp-image-165 size-full aligncenter" src="https://msdnshared.blob.core.windows.net/media/2016/06/fig6.png" alt="fig6" width="1100" height="619" /></a>Note that SQLDB4 is being showed as "synchronizing" as it was configured as Asynchronous replica.</li>
</ol>
<h1>Stage 2: Reconfigure the AG Cluster</h1>
<ol>
	<li>Make sure that all the client applications are not reaching the DB. There should not be data modification from this point on.</li>
	<li>From the Failover Cluster Manager, locate the resource related to the Availability Group, switch to “Resources” tab, right click on the client access point associated to the AG Listener and remove it (the AG Role will be brought offline due to its dependency on the Listener, you can ignore this now)
<a href="https://msdnshared.blob.core.windows.net/media/2016/06/fig7.png"><img class="wp-image-166 size-mediumlarge aligncenter" src="https://msdnshared.blob.core.windows.net/media/2016/06/fig7-500x281.png" alt="fig7" width="500" height="281" /></a></li>
	<li>On the Active Directory Domain Controller, open the AD Admin Center, locate “Computers” section and remove the computer object associated to the "AG listener".
<a href="https://msdnshared.blob.core.windows.net/media/2016/06/fig8.png"><img class="size-mediumlarge wp-image-175 aligncenter" src="https://msdnshared.blob.core.windows.net/media/2016/06/fig8-500x281.png" alt="fig8" width="500" height="281" /></a></li>
	<li>Connect with SSMS to the current primary node and perform a manual failover against node 3.
<a href="https://msdnshared.blob.core.windows.net/media/2016/06/fig9-e1467236324664.png"><img class="size-mediumlarge wp-image-185 aligncenter" src="https://msdnshared.blob.core.windows.net/media/2016/06/fig9-500x273.png" alt="fig9" width="500" height="273" /></a></li>
	<li>Unjoin node 1 and 2 from AG (from SSMS connected to the primary role).
<a href="https://msdnshared.blob.core.windows.net/media/2016/06/fig10.png"><img class="size-mediumlarge wp-image-195 aligncenter" src="https://msdnshared.blob.core.windows.net/media/2016/06/fig10-500x281.png" alt="fig10" width="500" height="281" /></a></li>
	<li>Change <strong>failover mode</strong> to Automatic for node 3.
<a href="https://msdnshared.blob.core.windows.net/media/2016/06/fig11.png"><img class="size-mediumlarge wp-image-205 aligncenter" src="https://msdnshared.blob.core.windows.net/media/2016/06/fig11-390x350.png" alt="fig11" width="390" height="350" /></a></li>
	<li>Change <strong>availability mode</strong> to “<em>synchronous commit</em>” and <strong>failover mode</strong> to “<em>Automatic</em>” for node 4.
<a href="https://msdnshared.blob.core.windows.net/media/2016/06/fig12.png"><img class="size-mediumlarge wp-image-215 aligncenter" src="https://msdnshared.blob.core.windows.net/media/2016/06/fig12-390x350.png" alt="fig12" width="390" height="350" /></a></li>
	<li>Suspend data movement.
<a href="https://msdnshared.blob.core.windows.net/media/2016/06/fig13.png"><img class="size-mediumlarge wp-image-225 aligncenter" src="https://msdnshared.blob.core.windows.net/media/2016/06/fig13-500x281.png" alt="fig13" width="500" height="281" /></a>
Availability group state will be set to Critical:
<a href="https://msdnshared.blob.core.windows.net/media/2016/06/fig14.png"><img class="size-mediumlarge wp-image-235 aligncenter" src="https://msdnshared.blob.core.windows.net/media/2016/06/fig14-500x281.png" alt="fig14" width="500" height="281" /></a></li>
	<li>Evict nodes 1 and 2 from the cluster.
From the Failover Cluster Manager locate the Nodes group, right click on Node 1, More Actions and Evict. Repeat for node 2.
<a href="https://msdnshared.blob.core.windows.net/media/2016/06/fig15.png"><img class="size-mediumlarge wp-image-245 aligncenter" src="https://msdnshared.blob.core.windows.net/media/2016/06/fig15-500x281.png" alt="fig15" width="500" height="281" /></a></li>
</ol>
<h1>Stage 3: Reconfigure the Cloud Service Deployments</h1>
<ol>
	<li>Stop and deallocate all 4 VMs.</li>
	<li>Run the PowerShell script below, to recreate the deployments. All nodes will be destroyed as well as the both cloud services.
Node 3 and 4 will be recreated on CloudService1.
<span style="color: #ff0000"><strong>Make sure that the variables are correctly set.</strong></span>
<pre><span style="color: #006400;font-family: Lucida Console;font-size: small">#setup variables. Change these values accordinlgy to your environment</span>
<span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$servicename1</span></span></span> <span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small">=</span></span></span> <span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">"CloudService1"</span></span></span>
<span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$servicename2</span></span></span> <span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small">=</span></span></span> <span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">"CloudService2"</span></span></span>
<span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname1</span></span></span> <span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small">=</span></span></span> <span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">"sqldb1"</span></span></span>
<span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname2</span></span></span> <span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small">=</span></span></span> <span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">"sqldb2"</span></span></span>
<span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname3</span></span></span> <span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small">=</span></span></span> <span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">"sqldb3"</span></span></span>
<span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname4</span></span></span> <span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small">=</span></span></span> <span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">"sqldb4"</span></span></span>
<span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$location</span></span></span> <span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small">=</span></span></span> <span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">"North Europe"</span></span></span>
<span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$actualvnetname</span></span></span> <span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small">=</span></span></span> <span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">"the name of the VNET"</span></span></span>

<span style="color: #006400;font-family: Lucida Console;font-size: small">#export VM configuration for node 3 and 4 on temporary folder.</span>
<span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small">Export-AzureVM</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-ServiceName</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$servicename1</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Name</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname1</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Path</span></span></span> <span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">"C:\temp\</span></span></span><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname1</span></span></span><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">.config.xml"</span></span></span>
<span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small">Export-AzureVM</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-ServiceName</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$servicename1</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Name</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname2</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Path</span></span></span> <span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">"C:\temp\</span></span></span><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname2</span></span></span><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">.config.xml"</span></span></span>

<span style="color: #006400;font-family: Lucida Console;font-size: small">#backup VM configuration for node 1 and 2</span>
<span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small">Export-AzureVM</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-ServiceName</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$servicename2</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Name</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname3</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Path</span></span></span> <span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">"C:\temp\</span></span></span><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname3</span></span></span><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">.config.xml"</span></span></span>
<span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small">Export-AzureVM</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-ServiceName</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$servicename2</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Name</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname4</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Path</span></span></span> <span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">"C:\temp\</span></span></span><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname4</span></span></span><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">.config.xml"</span></span></span>

<span style="color: #006400;font-family: Lucida Console;font-size: small">#destroy all VMs (keeping the disks)</span>
<span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small">Remove-AzureVM</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Name</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname1</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-ServiceName</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$servicename1</span></span></span>
<span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small">Remove-AzureVM</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Name</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname2</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-ServiceName</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$servicename1</span></span></span>
<span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small">Remove-AzureVM</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Name</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname3</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-ServiceName</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$servicename2</span></span></span>
<span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small">Remove-AzureVM</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Name</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname4</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-ServiceName</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$servicename2</span></span></span>

<span style="color: #006400;font-family: Lucida Console;font-size: small">#destroy all cloud services </span>
<span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small">Remove-AzureService</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-ServiceName</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$servicename1</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Force</span></span></span>
<span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small">Remove-AzureService</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-ServiceName</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$servicename2</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Force</span></span></span>

<span style="color: #006400;font-family: Lucida Console;font-size: small">#import VM's config from xml file for node 3 and 4</span>
<span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vms</span></span></span> <span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small">=</span></span></span><span style="font-family: Lucida Console;font-size: small"><span style="font-family: Lucida Console;font-size: small"> @()</span></span>
<span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vms</span></span></span> <span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small">+=</span></span></span> <span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small">Import-AzureVM</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Path</span></span></span> <span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">"C:\temp\</span></span></span><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname3</span></span></span><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">.config.xml"</span></span></span>
<span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vms</span></span></span> <span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small"><span style="color: #a9a9a9;font-family: Lucida Console;font-size: small">+=</span></span></span> <span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small">Import-AzureVM</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Path</span></span></span> <span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">"C:\temp\</span></span></span><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vmname4</span></span></span><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small"><span style="color: #8b0000;font-family: Lucida Console;font-size: small">.config.xml"</span></span></span>

<span style="color: #006400;font-family: Lucida Console;font-size: small">#recreate the cloud service1 as empty</span>
<span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small">New-AzureService</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-ServiceName</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$servicename1</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-Location</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$location</span></span></span>

<span style="color: #006400;font-family: Lucida Console;font-size: small">#Recreate VM 3 and 4 under CloudService1, on the specified VNet</span>
<span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small"><span style="color: #0000ff;font-family: Lucida Console;font-size: small">New-AzureVM</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-ServiceName</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$servicename1</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-VNetName</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$actualvnetname</span></span></span> <span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small"><span style="color: #000080;font-family: Lucida Console;font-size: small">-VMs</span></span></span> <span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small"><span style="color: #ff4500;font-family: Lucida Console;font-size: small">$vms</span></span></span></pre>
</li>
	<li>Final step: open SSMS, connect to node 3 and reactivate data movement (similarly to Stage 2 - step 8).</li>
</ol>
<h1>Stage 4: Finalize &amp; Reconfigure External Listener</h1>
<ol>
	<li>Add VM 3 and 4 to a new Availability Set (AS) to ensure 99,95% HA as requested by Azure Service Level Agreement (SLA).
<strong><a href="https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-windows-classic-configure-availability/#addmachine">How to configure an availability set for virtual machines in the classic deployment model (Option 2)</a></strong></li>
	<li>It is recommended to reserve a Public IP Address to the cloud service and use it for the configuration of the Client Access Point. This will prevent the loss of the current VIP after an unexpected deallocation of all VMs under the same Cloud Service:
<strong><a href="https://azure.microsoft.com/en-us/documentation/articles/virtual-networks-reserved-public-ip/#how-to-reserve-the-ip-address-of-an-existing-cloud-service">How to reserve the IP address of an existing cloud service</a></strong></li>
	<li>Follow the step-by-step guide below and reconfigure the external listener. In case you do not remember the probe port and listener port, you can open the XML configuration file exported from VM1 (Stage 3 - Step 2) and look after endpoint configuration.
<strong><a href="https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-windows-classic-ps-sql-ext-listener/">Configure an external listener for Always On Availability Groups in Azure</a></strong></li>
</ol>
<h1>Conclusion</h1>
The procedure described in this article has the purpose to help you organize your migration to Premium Storage with minimal impact on the Business Continuity.
Many steps were arbitrarely omitted, whereby a proper documentation is available.

In case you find any doubts or concern in the listed steps, please feel free to reach me out on this.

Thank you and have a nice time migrating to Premium!]]></content:encoded>
    </item>
    <item>
      <title>Remote Desktop Session Host on Azure VM - Workaround for Resizing User Profile Disks</title>
      <link>https://docs.microsoft.com/archive/blogs/rossanov/remote-desktop-session-host-on-azure-vm-workaround-for-resizing-user-profile-disks-2</link>
      <pubDate>Thu, 01 Oct 2015 10:14:00 GMT</pubDate>
      <dc:creator><![CDATA[Rossano Vitulli - MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/rossanov/2015/10/01/remote-desktop-session-host-on-azure-vm-workaround-for-resizing-user-profile-disks-2/</guid>
      <description><![CDATA[User profile disks allow users to save personal settings and files when they are signed in to a...]]></description>
      <content:encoded><![CDATA[<p><span style="line-height: 115%; font-family: verdana,geneva; font-size: small; mso-ascii-theme-font: minor-latin; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-bidi-theme-font: minor-bidi; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;" lang="EN-US">User profile disks allow users to save personal settings and files when they are signed in to a session on an RD Session Host server in a collection, and then have access to the same settings and files when signing in to a different RD Session Host server in the collection.</span><p><span style="font-family: verdana,geneva; font-size: small;">You might face situations in which your users may need more space and for this reason you are then trying to resize the VHDx associated to the UPD disks, stored on your Azure RDSH Server.</span></p><p><span style="color: #000000; font-family: verdana,geneva; font-size: small;"><span style="mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-GB; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;" lang="EN-GB">Today the only method for easily resizing a VHDx file is by using the <em>Resize-VHD</em> cmdlet. <br>This cmdlet belong to the Hyper-V Poweshell modules and&nbsp;requires the Hyper-V role in order to work.</span></span><span style="color: #000000; font-family: verdana,geneva; font-size: small;"><span style="mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-GB; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;" lang="EN-GB"><br></span></span></p><p><span style="color: #000000; font-family: verdana,geneva; font-size: small;"><span style="mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-GB; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;" lang="EN-GB">If you have tried to install the Hyper-V in Windows Server 2008 R2 or 2012 through Server Manager probably encountered the following message: The following message appears preventing you from continuing the process: <em><strong><span style="color: #004080;">Hyper-V can not be installed: The hypervisor is already running.</span></strong></em>&nbsp;</span></span></p><p><span style="color: #000000; font-family: verdana,geneva; font-size: small;"><span style="mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-GB; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;" lang="EN-GB">This means that currently, there is no supported way for resizing VHDx disks inside an Azure VM.</span></span></p><p><span style="color: #000000; font-family: verdana,geneva; font-size: small;"><span style="mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: EN-GB; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;" lang="EN-GB">Leveraging the blog post from Gilson Banin, <a href="https://blogs.technet.com/b/gbanin/archive/2013/06/26/how-to-install-hyper-v-on-a-virtual-machine-in-hyper-v.aspx">How to Install Hyper-V on a Virtual Machine in Hyper-V</a>, I will present you a workaround for this purpose.</span></span></p><h1><span style="color: #ff0000; font-family: verdana,geneva; font-size: small;">DISCLAIMER</span></h1><p><span style="font-family: verdana,geneva; font-size: small;"><span style="color: #ff0000;">THIS WORKAROUND RELIES ON AN UNSOUPPORTED SCENARIO: WE ARE BASICALLY USING A TEMPORARY VM WITH THE PURPOSE TO HOST HYPER-V ROLE. THIS TEMPORARY ENVIRONMENT IS NOT SUPPORTED BY MICROSOFT. USE IT ONLY AT YOUR OWN RISK.</span></span></p><h1><span style="color: #000000; font-family: verdana,geneva; font-size: medium;">Prerequisites</span></h1><p><span style="font-family: verdana,geneva; font-size: small;">Make backups of all the VHDX files that you are going to resize, before applying the below steps.</span></p><p><span style="font-family: verdana,geneva; font-size: small;">Setup the Management Environment</span></p><ol>
<li><span style="font-family: verdana,geneva; font-size: small;">Create a new temporary VM (a small&nbsp;size will be fine, like A1) and join this VM to your existing VNET.</span></li>
<li><span style="font-family: verdana,geneva; font-size: small;"><span style="font-family: verdana,geneva; font-size: small;">Force Installation of Hyper-V Role using this PowerShell command (from Gilson's blog post):<br></span></span>
<p style="margin: 0cm 0cm 0pt 43.2pt;"><span style="font-family: 'Calibri',sans-serif; font-size: 11pt;"><span style="font-family: courier new,courier;">Enable-WindowsOptionalFeature &ndash;Online -FeatureName Microsoft-Hyper-V &ndash;All &ndash;NoRestart</span><br></span></p>
</li>
<li><span style="font-family: verdana,geneva; font-size: small;">Restart the VM.</span></li>
<li><span style="font-family: verdana,geneva; font-size: small;">Add the "Hyper-V Management Toos" feature:<br><a href="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/4456.img1.jpg"><img src="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/4456.img1.jpg" alt="" border="0"></a></span></li>
<li><span style="font-family: verdana,geneva; font-size: small;">Map the shared folder containing your VHDXs on a local drive.</span></li>
</ol><h1><span style="font-family: verdana,geneva; font-size: medium;">Resizing</span></h1><p style="margin: 0cm 0cm 0pt;"><span style="font-family: 'Calibri',sans-serif; font-size: 11pt;">Log in to the mgmt VM and run the following from an elevated PowerShell prompt:<br>&nbsp;</span></p><p style="margin: 0cm 0cm 0pt; padding-left: 30px;"><span style="font-family: courier new,courier; font-size: 11pt;">Resize-VHD -Path &lt;full_path_to_a_vhdx_file_to_reize&gt; -SizeBytes &lt;new_size&gt;</span></p><p style="margin: 0cm 0cm 0pt;"><span style="font-family: 'Calibri',sans-serif; font-size: 11pt;">i.e.:</span></p><p style="margin: 0cm 0cm 0pt; padding-left: 30px;"><span style="font-family: courier new,courier; font-size: 11pt;">Resize-VHD -Path F:\UserDisks\UVHD-S-1-5-21-318835583-3572637251-3921833130-3102.vhdx -SizeBytes 3GB<br><a href="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/4762.img2.jpg"><img src="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/4762.img2.jpg" alt="" border="0"></a></span></p><h1><span style="font-family: verdana,geneva; font-size: medium;">Expanding Volume Size</span></h1><ol>
<li>
<div style="margin: 0cm 0cm 0pt;"><span style="font-family: verdana,geneva; font-size: small;">Mount the VHDX and open Disk Management:<br><a href="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/5228.img3.jpg"><img src="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/5228.img3.jpg" alt="" border="0"></a></span></div>
</li>
<li>
<div style="margin: 0cm 0cm 0pt;"><span style="font-family: verdana,geneva; font-size: small;">Extend the Volume size to all the available space:<br><a href="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/4645.img4.jpg"><img src="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/4645.img4.jpg" alt="" border="0"></a></span></div>
</li>
<li>
<div style="margin: 0cm 0cm 0pt;"><span style="font-family: verdana,geneva; font-size: small;">Do not forget to detach the VHDx<br><a href="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/8422.img5.jpg"><img src="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/8422.img5.jpg" alt="" border="0"></a></span></div>
</li>
</ol><h1><span style="font-family: verdana,geneva; font-size: medium;">Validating</span></h1><p><span style="font-family: verdana,geneva; font-size: small;">Now RDP into the environment and run "dir" from a command prompt default location and check for the free space:<br><a href="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/4111.img6.jpg"><img src="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/4111.img6.jpg" alt="" border="0"></a><br>3GB!</span></p><h1><span style="font-family: verdana,geneva; font-size: medium;">Finalize</span></h1><p><span style="font-family: verdana,geneva; font-size: small;">You can destroy the management VM, once you finished with all the resizings.</span></p><h1><span style="font-family: verdana,geneva; font-size: medium;">References</span></h1><p><span style="font-family: verdana,geneva; font-size: small;">The above procedure is based on information provided in this article:</span></p><ul>
<li><span style="font-family: verdana,geneva; font-size: small;">How to Install Hyper-V on a Virtual Machine in Hyper-V, <span style="font-family: 'Calibri',sans-serif; font-size: 11pt; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-bidi-font-family: 'Times New Roman'; mso-ansi-language: IT; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;"><a href="https://na01.safelinks.protection.outlook.com/?url=http%3a%2f%2fblogs.technet.com%2fb%2fgbanin%2farchive%2f2013%2f06%2f26%2fhow-to-install-hyper-v-on-a-virtual-machine-in-hyper-v.aspx&amp;data=01%7c01%7crossanov%40064d.mgd.microsoft.com%7cf0dc57b3d5c24cf7ab1908d2ca7d75f6%7c72f988bf86f141af91ab2d7cd011db47%7c1&amp;sdata=DsdAf%2b16k4r2nPdzQN%2b9XI0gj9zDjvKtPP2m%2bGzUhto%3d">https://blogs.technet.com/b/gbanin/archive/2013/06/26/how-to-install-hyper-v-on-a-virtual-machine-in-hyper-v.aspx</a></span></span></li>
<li><span style="font-family: verdana,geneva; font-size: small;">Resize-VHD, <a href="https://technet.microsoft.com/en-us/library/hh848535(v=wps.630).aspx">https://technet.microsoft.com/en-us/library/hh848535(v=wps.630).aspx</a></span>&nbsp;</li>
</ul><p><span style="font-family: verdana,geneva; font-size: small;">Have a good time Resizing!</span></p><p><span style="font-family: verdana,geneva; font-size: small;">Rossano</span></p></p>
]]></content:encoded>
    </item>
    <item>
      <title>Automated Export Workaround</title>
      <link>https://docs.microsoft.com/archive/blogs/rossanov/automated-export-workaround</link>
      <pubDate>Wed, 27 May 2015 08:54:00 GMT</pubDate>
      <dc:creator><![CDATA[Rossano Vitulli - MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/rossanov/2015/05/27/automated-export-workaround/</guid>
      <description><![CDATA[It may happen that the Automated Export feature is improperly working or not working at all.The...]]></description>
      <content:encoded><![CDATA[It may happen that the Automated Export feature is improperly working or not working at all.<br>The procedure described in this article can be used as a temporary workaround to schedule and run export of a specific database.

<h1><span style="color: #ff0000; font-size: medium;">DISCLAIMER</span></h1>

<span style="color: #ff0000;">This is a sample workaround and not the solution for the issue, since it just simulates what the automated export does.<br></span><span style="color: #ff0000;">It is important for you to know that Microsoft does not provide any warranty on this procedure.&nbsp;<br></span><span style="color: #ff0000;">You should review this procedure, customize it if required and test it before applying it on&nbsp;your environment.<br></span><span style="color: #ff0000;">Use the procedure at your own risk.</span>

<h1><span style="font-size: medium;">How it works</span></h1>

A batch file will execute the following operations:

<ol>  <li>Create a copy of the source database by using the TSQL command<br>&ldquo;CREATE DATABASE AS COPY OF&rdquo;. Note: This step uses PowerShell.</li>  <li>Export the copied database using Import/Export REST Endpoints.<br>Note: This step will use a .Net command line application based on the sample application shown in the following article:<br>Windows Azure SQL Database Import/Export Service Community Sample Application</li>  <li>Drop the copy after the Export completed (still uses PowerShell).&nbsp;</li>  </ol>

<h1><span style="font-size: medium;">KNOWN ISSUES</span></h1>

<ul>  <li>There is no retry-logic implementation in this first version.&nbsp;</li>  <li>If a .bacpac with the same name already exists in the destination storage account, step 2 will fail.</li>  <li>There is no check-logic between each steps.<br>I.e.: if the step 1 fails, the step 2 will be executed anyway.</li>  </ul>

<h1><span style="font-size: medium;">Where is it?</span></h1>

The procedure is packed into a zip file available from this blog article. See below.

<h1><span style="font-size: medium;">PACKAGE CONTENTS:</span></h1>

<ul>  <li><strong>Copy_db.ps1</strong>:&nbsp;&nbsp; PowerShell script for creating the transitionally consistent copy (step 1)</li>  <li><strong>WASDImportExport.exe</strong> and related dlls: the export application which uses public API (step 2)</li>  <li><strong>Drop_db.ps1</strong>: the PowerShell script for dropping the copied db (step 3)</li>  <li><strong>Run.bat</strong>: the batch file that will run the 3 steps.&nbsp;</li>  <li>The batch file is fully configurable with all the requested parameters:</li>  <ul>  <li>&#61623; ServerName</li>  <li>&#61623; UserName</li>  <li>&#61623; Password</li>  <li>&#61623; StorageName</li>  <li>&#61623; StorageContainer</li>  <li>&#61623; StorageKey</li>  <li>&#61623; EndopintURI</li>  </ul>  <li>There is a 5-minute time delay between step 1 and 2 and a 30-second time delay between step 2 and 3, in order to allow all asynchronous actions to be completed.</li>  <li><strong>WASD ImportExport Service Community Sample Application Edited.zip</strong>: this zip contains the Visual Studio Solution with the source code of the export app used in the batch&nbsp;&nbsp;</li>  </ul>

<h1><span style="font-size: medium;">WHAT TO DO?</span></h1>

<ol>  <li>You can replicate the batch file for each database you would need to export.&nbsp;</li>  <li>Configure each batch file providing the source database name and the copied database name + credentials for Azure SQL Db + storage account details.&nbsp;</li>  <li>You can schedule all the batches from any client machine which has Internet access&nbsp; + SQL Native Client. You could use the Windows Task Scheduler (taskschd.msc).&nbsp;Alternatively, you could create a temporary Azure Virtual Machine with Basic size to schedule the above task.&nbsp;</li>  </ol>

<h1><span style="font-size: medium;">References</span></h1>

The above procedure is based on information provided in this article:

<ul>  <li>How to: Use the Import and Export Service in Azure SQL Database, <a href="https://msdn.microsoft.com/en-us/library/azure/hh335292.aspx">https://msdn.microsoft.com/en-us/library/azure/hh335292.aspx</a></li>  <li>Windows Azure SQL Database Import Export Code Examples, <a href="https://sqldacexamples.codeplex.com/">https://sqldacexamples.codeplex.com/</a></li>  <li>Automate tasks with Task Scheduler, <a href="https://windows.microsoft.com/en-us/windows-vista/Automate-tasks-with-Task-Scheduler-from-Windows-Vista-Inside-Out">https://windows.microsoft.com/en-us/windows-vista/Automate-tasks-with-Task-Scheduler-from-Windows-Vista-Inside-Out</a></li>  </ul>

&nbsp;

Have a good time Exporting!

<p>Rossano</p>]]></content:encoded>
    </item>
    <item>
      <title>Point-In-Time-Restore with SQL Server Managed Backup to Windows Azure</title>
      <link>https://docs.microsoft.com/archive/blogs/rossanov/point-in-time-restore-with-sql-server-managed-backup-to-windows-azure</link>
      <pubDate>Thu, 19 Feb 2015 10:14:00 GMT</pubDate>
      <dc:creator><![CDATA[Rossano Vitulli - MSFT]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/rossanov/2015/02/19/point-in-time-restore-with-sql-server-managed-backup-to-windows-azure/</guid>
      <description><![CDATA[As well explained in the article https://msdn.microsoft.com/en-us/library/dn449496.aspx:

SQL Server...]]></description>
      <content:encoded><![CDATA[As well explained in the article <a href="https://msdn.microsoft.com/en-us/library/dn449496.aspx">https://msdn.microsoft.com/en-us/library/dn449496.aspx</a>:

<em>SQL Server Managed Backup to Windows Azure manages and automates SQL Server backups to the Windows Azure Blob storage service. The backup strategy used by SQL Server Managed Backup to Windows Azure is based on the retention period and the transaction workload on the database. SQL Server Managed Backup to Windows Azure supports point in time restore for the retention time period specified.</em>

This blog article will show you how it is possible to restore a database from a managed backup located on Azure Storage Account.

<h1><span style="font-size: medium;">Prerequisites</span></h1>

<ol>  <li>A SQL Server 2014 instance configured for managed backup.</li>  <li>Managed backup enabled for at least one of your databases.</li>  </ol>

<h1><span style="font-size: medium;">Step-by-Step Guide</span></h1>

<ol>  <li>Open the Restore Database window.<br><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/8507.i1.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/8507.i1.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/8507.i1.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/8507.i1.png" alt="" width="298" height="271" border="0"></a></li>  <li>On Restore Database Window, choose Device source and click on "..." to select a backup device.<br><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/2620.i2.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/2620.i2.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/2620.i2.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/2620.i2.png" alt="" border="0"></a></li>  <li>From the Backup media type drop down list, choose "URL" and click to Add.<br><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/1882.i3.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/1882.i3.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/1882.i3.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/1882.i3.png" alt="" width="405" height="284" border="0"></a></li>  <li>Add and connect to the storage account containing the managed backups.<br><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/3463.i4.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/3463.i4.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/3463.i4.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/3463.i4.png" alt="" border="0"></a></li>  <li>Select the fullbackup (.bak ) and all the TLOG backups within the latest fullbackup and the TLOG backup next to the time you want to restore.<br><em>Example:</em><br>Let's assume we want to restore our db at 2015-02-19 07:00:00.<br>We need to choose the latest full backup immediately before that time, therefore the one of 2015-02-18 17:43:36.<br>We also need to select all the TLOG backups taken between 2015-02-18 17:43:36 and 2015-02-19 07:13:42.<br><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/2548.i5.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/2548.i5.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/2548.i5.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/2548.i5.png" alt="" border="0"></a></li>  <li>Press Ok to confirm the backup media:<br><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/3858.i6.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/3858.i6.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/3858.i6.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/3858.i6.png" alt="" width="419" height="311" border="0"></a></li>  <li>Change the Destination Database name to a custom name, i.e. : "Restored-At-7".</li>  <li>You can click on Timeline and select a define the exacxt time for your Point-In-Time restore:<br><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/7752.i8.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/7752.i8.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/7752.i8.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/7752.i8.png" alt="" border="0"></a></li>  <li>Specify an exact timeline to recover, i.e. 7:00:00 and click OK.<br><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/4540.i9.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/4540.i9.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/4540.i9.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/4540.i9.png" alt="" border="0"></a></li>  <li>Verify if you need to take a tail-log backup. If not so, you can disable the option: "Take tail-log backup before restore".<br><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/0511.i10.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/0511.i10.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/0511.i10.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/0511.i10.png" alt="" border="0"></a></li>  <li>Press OK. The restore operation will start. A confirmation message will be shown once the operation is completed.<br><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/6685.i11.png" original-url="https://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/6685.i11.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/69/52/6685.i11.png" original-url="https://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-69-52/6685.i11.png" alt="" width="280" height="146" border="0"></a></li>  </ol>

Have a good time restoring!

<p>Rossano</p>]]></content:encoded>
    </item>
  </channel>
</rss>