<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
  version="2.0">
  <channel>
    <title>markm</title>
    <atom:link
      href="https://docs.microsoft.com/archive/blogs/markm/feed.xml"
      rel="self"
      type="application/rss+xml" />
    <link>https://docs.microsoft.com/archive/blogs/markm/feed.xml</link>
    <description />
    <lastBuildDate>Wed, 17 Apr 2019 04:00:50 GMT</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <item>
      <title>Creating an Azure Blob Storage Account.</title>
      <link>https://docs.microsoft.com/archive/blogs/markm/creating-an-azure-blob-storage-account</link>
      <pubDate>Tue, 30 Jun 2015 11:16:00 GMT</pubDate>
      <dc:creator><![CDATA[markm14]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/markm/2015/06/30/creating-an-azure-blob-storage-account/</guid>
      <description><![CDATA[Azure Blob storage accounts can be used to store just about anything, Files, Photos, Virtual...]]></description>
      <content:encoded><![CDATA[<p>Azure Blob storage accounts can be used to store just about anything, Files, Photos, Virtual Machines etc.</p>
<p>To create an Azure Storage Account login to your Azure Subscription and select Storage</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/2541.Storage.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/2541.Storage.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/2541.Storage.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/2541.Storage.PNG" alt="" border="0" /></a></p>
<p>Click on new in the lower left corner of the screen.</p>
<p>Select Storage and Quick Create</p>
<p>You will need to select a name for the storage account, a location for the storage account and a redundancy option.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7752.Createstore.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7752.Createstore.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7752.Createstore.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7752.Createstore.PNG" alt="" border="0" /></a></p>
<p>Once that is done click Create Storage Account and you are done.</p>
<p>There are a wide variety of Storage Explorers that will allow you to add, remove and&nbsp;view the contents of your storage account.</p>
<p>A list of Storage Account Explorers can be found here.</p>
<p><a href="http://blogs.msdn.com/b/windowsazurestorage/archive/2014/03/11/windows-azure-storage-explorers-2014.aspx">http://blogs.msdn.com/b/windowsazurestorage/archive/2014/03/11/windows-azure-storage-explorers-2014.aspx</a></p>
<p>In order to access your new Blob store account with a Storage Explorer you will need the name of the account and a key.</p>
<p>You can get the key by selecting the blob store in Azure and click on Manage Access Keys</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7288.Keys.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7288.Keys.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7288.Keys.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7288.Keys.PNG" alt="" border="0" /></a></p>
<p>Once you click on Manage Access Keys you will be presented with your keys and click the copy icon to copy and paste the key into your Storage Explorer</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3056.keys2.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3056.keys2.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3056.keys2.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3056.keys2.PNG" alt="" border="0" /></a></p>
<p>Copy the Primary Key to use with your Storage Explorer or other application.&nbsp; In the event your Primary key is compromised you can substitute it with your secondary key and regenerate your primary key.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>Easily Backup SQL Databases to Azure</title>
      <link>https://docs.microsoft.com/archive/blogs/markm/easily-backup-sql-databases-to-azure</link>
      <pubDate>Tue, 30 Jun 2015 10:47:00 GMT</pubDate>
      <dc:creator><![CDATA[markm14]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/markm/2015/06/30/easily-backup-sql-databases-to-azure/</guid>
      <description><![CDATA[Microsoft has released a tool that will easily backup SQL Databases to Azure by simply installing a...]]></description>
      <content:encoded><![CDATA[<p>Microsoft has released a tool that will easily backup SQL Databases to Azure by simply installing a tool on the fileserver where you store your backups.</p>
<p>The tool is called the Microsoft SQL Server Backup to Microsoft Azure Tool.</p>
<p>You install the tool on a Server where you store database backups and you point the tool to an Azure Blob Storage Account and a folder on your server.&nbsp; Anytime a SQL backup is placed in the folder the tool will encrypt and compress the backup and store it in Azure.&nbsp; It it's place it leaves a stub file that you can use to restore the backup just like a regular SQL Backup.</p>
<p>Many of you have probably heard that starting in SQL Server 2012 you can backup a database to an Azure Blob store straight from SQL Server Management Studio.&nbsp; With this tool you can store backups from any version of SQL from 2005 and up in Azure.</p>
<p>Let's get started.</p>
<p>The tool is a free download and can be found here: <a href="http://www.microsoft.com/en-us/download/details.aspx?id=40740">http://www.microsoft.com/en-us/download/details.aspx?id=40740</a></p>
<p>It will run on Windows 7 SP1, Window 8, Windows 8.1, Windows Server 2008 R2 SP1, and Windows Server 2012 R2.</p>
<p>Download the tool from the above link.&nbsp; You can choose a 64 or 32 bit version of the tool.</p>
<p>Run the setup program and install the tool.</p>
<p>Run the Tool and you will see the following screen.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/2248.Backup1.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/2248.Backup1.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/2248.Backup1.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/2248.Backup1.PNG" alt="" border="0" /></a></p>
<p>The tool can map multiple folders to multiple Blob Storage Accounts.&nbsp; In this example I will just map a single folder to a single storage account.</p>
<p>If you don't have an Azure blob storage account you should create one now.&nbsp; This article describes how to create a storage account in Azure: <a href="http://blogs.msdn.com/b/markm/archive/2015/06/30/creating-an-azure-blob-storage-account.aspx">http://blogs.msdn.com/b/markm/archive/2015/06/30/creating-an-azure-blob-storage-account.aspx</a></p>
<p>Click on Add and I will walk you through mapping a folder to an Azure storage account.</p>
<p>First select a folder you would like to MAP to an Azure Storage Account and a file name pattern you would like to use.&nbsp; Note: 1 option is to have all folders scanned for the file name pattern and backup anything in any folder that matches the file name pattern.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4682.Backup2.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4682.Backup2.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4682.Backup2.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4682.Backup2.PNG" alt="" border="0" /></a></p>
<p>Once you have done this, you will need to provide the storage account name, key and a container.</p>
<p>Think of a container as a folder.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/1220.Keys3.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/1220.Keys3.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/1220.Keys3.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/1220.Keys3.PNG" alt="" border="0" /></a></p>
<p>Once you have entered your information click on the Verify account button and once verified click next.</p>
<p>The next screen Allows you to choose if you want Encryption and/or Compression.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/0118.encryptcompress.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/0118.encryptcompress.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/0118.encryptcompress.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/0118.encryptcompress.PNG" alt="" border="0" /></a></p>
<p>Click Finish and you have mapped your first directory to an Azure Blob Storage account.&nbsp; Remember only files matching the file pattern given will be backed up to Azure.&nbsp; We used *.bak so only files that match that pattern will be backed up to Azure.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3660.Finish.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3660.Finish.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3660.Finish.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3660.Finish.PNG" alt="" border="0" /></a></p>
<p>Now to test it.</p>
<p>&nbsp;Open an Azure Storage Explorer to view the contents of your storage account.&nbsp; If you don't have a storage explorer instructions for downloading one are located here: <a href="http://blogs.msdn.com/b/markm/archive/2015/06/30/creating-an-azure-blob-storage-account.aspx">http://blogs.msdn.com/b/markm/archive/2015/06/30/creating-an-azure-blob-storage-account.aspx</a></p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/2703.SE1.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/2703.SE1.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/2703.SE1.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/2703.SE1.PNG" alt="" border="0" /></a></p>
<p>Notice this is a brand new storage account with nothing in it.</p>
<p>Now let's go to SQL Server Management Studio and backup a database into the folder we mapped to the above Azure Blob Storage Account.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4527.SSMS1.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4527.SSMS1.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4527.SSMS1.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4527.SSMS1.PNG" alt="" border="0" /></a></p>
<p>I set the backup to go to the new folder I created and mapped to an Azure Blob storage account.</p>
<p>When the backup completes we can check the Storage Explorer to ensure the backup did in fact get placed in Azure.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/1016.SE2.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/1016.SE2.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/1016.SE2.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/1016.SE2.PNG" alt="" border="0" /></a></p>
<p>If I look in the folder on the computer I can see a stub file that I can use to restore the SQL Backup from Azure.&nbsp; Notice it's only 22KB.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/6428.SE3.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/6428.SE3.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/6428.SE3.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/6428.SE3.PNG" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<p>The actual back is much larger at 640K.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/5852.SE4.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/5852.SE4.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/5852.SE4.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/5852.SE4.PNG" alt="" border="0" /></a></p>
<p>And that's all there is to it.&nbsp; A quick inexpensive way to safely store backups off site while maintaining the ability to instantly restore them.</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><br />&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>Getting Started with Azure Automation Services</title>
      <link>https://docs.microsoft.com/archive/blogs/markm/getting-started-with-azure-automation-services</link>
      <pubDate>Tue, 30 Jun 2015 10:08:00 GMT</pubDate>
      <dc:creator><![CDATA[markm14]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/markm/2015/06/30/getting-started-with-azure-automation-services/</guid>
      <description><![CDATA[Azure Automation Services allows you to automate tasks you would do in Azure.&nbsp; You could write...]]></description>
      <content:encoded><![CDATA[<p>Azure Automation Services allows you to automate tasks you would do in Azure.&nbsp; You could write Power Shell scripts to run on premises and connect to Azure, but Automation services hosts those scripts in Azure and you can schedule them to run on a regular basis all in Azure. There no dependencies on a machine on premises being up available and connected with Azure Automation Services.</p>
<p>To get started you will need to establish a security context for your task to run.&nbsp; There are two ways of doing this, entering a users name / password combination (PowerShell) or by using a certificate.</p>
<p>For this example I will use the user name / password combination.</p>
<h2>Entering Credentials</h2>
<p>Log in to your Azure portal and select Automation Services on the left hand side of the page:</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3022.Automation.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3022.Automation.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3022.Automation.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3022.Automation.PNG" alt="" border="0" /></a></p>
<p>If you do not have an automation account set up, you will need to create one now.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4621.Account.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4621.Account.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4621.Account.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x559/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4621.Account.PNG" alt="" border="0" /></a></p>
<p>Click on Create an Automation Account</p>
<p>Select a name and a region where you want the account to run.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4214.Create.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4214.Create.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4214.Create.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4214.Create.PNG" alt="" border="0" /></a></p>
<p>Click the check to create your account.</p>
<p>You will be taken to the Automation Screen and your account will be listed, double click on your account.</p>
<p>You will see the dash board with a list of things to do under getting started.</p>
<p>Before we do any of those things you will need to establish a credential for the Run Books to use to gain access to your Azure Account.</p>
<p>Click on Assets</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/1401.Assets.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/1401.Assets.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/1401.Assets.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/1401.Assets.PNG" alt="" border="0" /></a></p>
<p>At the bottom of the screen click on Add Setting</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4861.Add%20Setting.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4861.Add-Setting.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4861.Add%20Setting.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4861.Add-Setting.PNG" alt="" border="0" /></a></p>
<p>Click on Add Credential</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/1524.Add%20Credential.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/1524.Add-Credential.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/1524.Add%20Credential.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/1524.Add-Credential.PNG" alt="" border="0" /></a></p>
<p>In Credential Type Select Windows PowerShell Credential and give it a name</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3288.Define%20Credential.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3288.Define-Credential.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3288.Define%20Credential.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3288.Define-Credential.PNG" alt="" border="0" /></a></p>
<p>On the next screen enter you Azure Credentials (user/pass) and click the check.</p>
<p>You now have credentials to use to Authenticate RunBooks</p>
<h2>Creating a Run Book</h2>
<p>Now Click on RunBooks</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4087.Run%20Books.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4087.Run-Books.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4087.Run%20Books.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4087.Run-Books.PNG" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<p>Click on New in the bottom left corner of the screen.</p>
<p>You can choose from a Gallery of existing runbooks or you can create your own.</p>
<p>In this case I will have you do a simple Hello World example just to get you started.</p>
<p>Click on RunBooks</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7536.Runbooks.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7536.Runbooks.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7536.Runbooks.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7536.Runbooks.PNG" alt="" border="0" /></a></p>
<p>Click New and select RunBook and Quick Create.&nbsp; Provide your runbook a name and select a subscription (make a note of your subscription name, you will need it later)&nbsp;and a region for the run book to run.</p>
<p>Once created double click on your run book and select Author</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7737.Author.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7737.Author.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7737.Author.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7737.Author.PNG" alt="" border="0" /></a></p>
<p>You will see three lines of code defining your workflow.&nbsp; Between the two brackets, type the following.</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp; $Cred = Get-AutomationPSCredential -Name "<strong>yourcredentia</strong>l"&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp; $SubscriptionName = "<strong>Your Subscription Name</strong>"<br />&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp; Add-AzureAccount -Credential $Cred<br />&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp; Select-AzureSubscription -SubscriptionName $SubscriptionName</p>
<p>&nbsp;&nbsp;&nbsp; InlineScript {<br />&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Write-Output "Hello World"</p>
<p>&nbsp;&nbsp;&nbsp; }</p>
<p>Replace<strong> yourcredentia</strong>l with the name of the credential you created in the previous step.</p>
<p>Replace <strong>Your Subscription Name</strong> with the name of your subscription.</p>
<p>Now you can test your run book by clicking the test button</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3107.Test.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3107.Test.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3107.Test.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3107.Test.PNG" alt="" border="0" /></a></p>
<p>After a successful run you will see something similar to this.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/5518.Hello.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/5518.Hello.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/5518.Hello.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/5518.Hello.PNG" alt="" border="0" /></a></p>
<p>Now you have the ability to run any Powershell you want in Azure Automation Services, there are a large number of runbooks in the Gallery that you can run as is or modify to do what you want, or you can write your own.</p>
<p>Enjoy</p>
<p>&nbsp;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>MAP 9.2 Hangs while configuring Host - Work Around</title>
      <link>https://docs.microsoft.com/archive/blogs/markm/map-9-2-hangs-while-configuring-host-work-around</link>
      <pubDate>Mon, 29 Jun 2015 12:59:04 GMT</pubDate>
      <dc:creator><![CDATA[markm14]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/markm/2015/06/29/map-9-2-hangs-while-configuring-host-work-around/</guid>
      <description><![CDATA[MAP 9.2 will hang when trying to configure Host information for a Server Consolidation Analysis.
I...]]></description>
      <content:encoded><![CDATA[<p>MAP 9.2 will hang when trying to configure Host information for a Server Consolidation Analysis.</p>
<p>I have come up with a work around for this problem, by modifying one of the Sample hosts to contain host information you choose.</p>
<p>I have reported this problem to the MAP product group and hopefully it will be resolved in the next release of MAP.</p>
<p>Note the MAP tool periodically changes database schema's from release to release.&nbsp; I have tested this with only MAP version 9.2.</p>
<p>I found where MAP stores the sample hosts that come built in and determined that the host configuration is stored as XML in a blob in a table in the MAP_ConfigInfo Database.&nbsp; I was able to replace the XML for the sample called &lsquo;Sample Host&rsquo; with XML that accurately reflects my customers hosts.</p>
<p>&nbsp;</p>
<p>This is my updated XML.&nbsp; You can modify this XML with your host configuration.&nbsp; The MAP UI will still provide the CPU values when you select the CPU Manufacturer and Model, it hangs at that point when you click next.&nbsp; Now just transfer the CPU values from the MAP UI to the &nbsp;CPU values<br />in the XML.&nbsp;</p>
<p>Update memory, Storage Capacity, IOPs, and Network Throughput in the XML, save the XML to a file and write the blob back to the database. &nbsp;TSQL to update the Blob for &lsquo;Sample Host&rsquo; is after the XML.</p>
<p>&nbsp;</p>
<p>&lt;InfrastructureConfigurations xmlns:xsd="<a href="http://www.w3.org/2001/XMLSchema">http://www.w3.org/2001/XMLSchema</a>" xmlns:xsi="<a href="http://www.w3.org/2001/XMLSchema-instance">http://www.w3.org/2001/XMLSchema-instance</a>" Name="Sample host" TemplateName="Microsoft Default<br />Template" Vendor="Microsoft" ReadOnly="false" Category="General"&gt;</p>
<p>&nbsp; &lt;Infrastructure Name="Sample<br />host"&gt;</p>
<p>&nbsp;&nbsp;&nbsp; &lt;VirtualizationTechnology&gt;None&lt;/VirtualizationTechnology&gt;</p>
<p>&nbsp;&nbsp;&nbsp; &lt;NumberOfHosts&gt;1&lt;/NumberOfHosts&gt;</p>
<p>&nbsp;&nbsp;&nbsp; &lt;TotalStorageInTB&gt;999999&lt;/TotalStorageInTB&gt;</p>
<p>&nbsp;&nbsp;&nbsp; &lt;TotalIOPS&gt;999999&lt;/TotalIOPS&gt;</p>
<p>&nbsp;&nbsp;&nbsp; &lt;TotalNetworkInGbps&gt;999999&lt;/TotalNetworkInGbps&gt;</p>
<p>&nbsp;&nbsp;&nbsp; &lt;ComputerConfiguration&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;CPUModel Name="Xeon X5550"&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&lt;Manufacturer&gt;Intel&lt;/Manufacturer&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&lt;BusSpeedInMhz&gt;1066&lt;/BusSpeedInMhz&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&lt;ProcessorSpeedInMHz&gt;3600&lt;/ProcessorSpeedInMHz&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&lt;CPUAddressWidth&gt;64&lt;/CPUAddressWidth&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&lt;ThreadsPerCoreCount&gt;2&lt;/ThreadsPerCoreCount&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&lt;L2CacheSizeInKB&gt;1280&lt;/L2CacheSizeInKB&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&lt;L3CacheSizeInKB&gt;8192&lt;/L3CacheSizeInKB&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&lt;PhysicalProcessorCount&gt;5&lt;/PhysicalProcessorCount&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&lt;CoresPerProcessorCount&gt;4&lt;/CoresPerProcessorCount&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/CPUModel&gt;</p>
<p>&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;MemoryConfig&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&lt;MemoryInMB&gt;262144&lt;/MemoryInMB&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/MemoryConfig&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;StorageConfig&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&lt;StorageCapacityInGB&gt;1000&lt;/StorageCapacityInGB&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&lt;IOPS&gt;4000&lt;/IOPS&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/StorageConfig&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;NetworkConfig&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&lt;NetworkThroughputInMbps&gt;10240&lt;/NetworkThroughputInMbps&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/NetworkConfig&gt;</p>
<p>&nbsp;&nbsp;&nbsp; &lt;/ComputerConfiguration&gt;</p>
<p>&nbsp; &lt;/Infrastructure&gt;</p>
<p>&lt;/InfrastructureConfigurations&gt;</p>
<p>&nbsp;</p>
<p>To get the XML back into the blob column execute &nbsp;the<br />following TSQL replacing the path to the XML file with your file path and file<br />name</p>
<p>&nbsp;</p>
<p>Update dbo.infrastructures</p>
<p>SET definition = (SELECT BulkColumn From OpenRowset ( Bulk 'C:\users\yourusername\documents\customer.xml' , Single_Blob) a )</p>
<p>where (dbo.infrastructures.infrastructure_name =<br />'Sample host')</p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>How to use the MAP tool to perform a Server Consolidation Analysis</title>
      <link>https://docs.microsoft.com/archive/blogs/markm/how-to-use-the-map-tool-to-perform-a-server-consolidation-analysis</link>
      <pubDate>Mon, 29 Jun 2015 12:14:00 GMT</pubDate>
      <dc:creator><![CDATA[markm14]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/markm/2015/06/29/how-to-use-the-map-tool-to-perform-a-server-consolidation-analysis/</guid>
      <description><![CDATA[The MAP tool does a very good job of Inventorying and assessing environments.&nbsp; MAP also does a...]]></description>
      <content:encoded><![CDATA[<p>The MAP tool does a very good job of Inventorying and assessing environments.&nbsp; MAP also does a great job at collect performance data on servers and make consolidation recommendations.</p>
<h2>Step 1. Choose the Machines to collect performance data and begin the data collection</h2>
<p>In the MAP tool select a database and go to the Server Virtualization section on the left side of the app.</p>
<p>Under the Server Virtualization section there is a steps to complete section if you have performed an inventory the collect inventory step will have a green check mark next to it.&nbsp; If you have not performed an inventory this blog posts details how to do that.&nbsp; <a href="http://blogs.msdn.com/b/markm/archive/2015/02/17/inventorying-sql-servers-with-the-microsoft-assessment-and-planning-toolkit-map.aspx">http://blogs.msdn.com/b/markm/archive/2015/02/17/inventorying-sql-servers-with-the-microsoft-assessment-and-planning-toolkit-map.aspx</a></p>
<p>Select the Collect Performance Data step</p>
<p>&nbsp;</p>
<p>in this screen you are asked if the target machines are Windows and or Linux and you are asked to enter an end date and time.</p>
<p>When collecting data it is important to catch peaks in resource usage so collect performance data for a long enough amount of time to catch the spikes in resource consumption.</p>
<p>The next screen is where you will tell the MAP tool which machines to collect performance data.&nbsp; If you have performed an inventory then you can select machines from the machines the MAP tool found in the inventory, or you can create a list of machines as a text file and let MAP read the text file to get the machine names.</p>
<p>You will then be asked for credentials to use to collect performance data from these machines.</p>
<p>Once you have completed this wizard, performance data collection will begin.&nbsp; It is important not to exit the MAP tool for the duration of the performance collection which also means you can't log out for the duration of the performance data collection.&nbsp; In the event the MAP tool is stopped or the machine is rebooted, you can repeat the above steps and the MAP tool will give you the option to append to the performance data already collected or start over.&nbsp; Just append to the data collected and let it continue to run.</p>
<h2>Step 2. Create hardware configuration</h2>
<p>The next step is to define you hardware architecture and set up some parameters to use for guest placement.</p>
<p>Select the step Create Hardware Configuration, you will see the following screen</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3554.Hardware%20Config.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3554.Hardware-Config.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3554.Hardware%20Config.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3554.Hardware-Config.PNG" alt="" border="0" /></a></p>
<p>&nbsp;Choose if you want to define your own hardware specifications.&nbsp;</p>
<p>If you have a specific host in mind, or would like to run multiple what if scenarios choose the General Server Consolidation/Desktop Virtualization option.</p>
<p>If you are going to use one of the pre-determined Microsoft Fast Track architectures then choose the Fast Track option.</p>
<p>Next you will see a screen that will allow you to choose a hardware configuration.&nbsp; The MAP tool includes some samples configurations or you can create your own.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/1602.Hardware%20Config%202.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/1602.Hardware-Config-2.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/1602.Hardware%20Config%202.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/1602.Hardware-Config-2.PNG" alt="" border="0" /></a></p>
<p>This is where you will define your hardware architecture.&nbsp; Once you have created a hardware architecture it will show up in the list exiting hardware architectures.</p>
<p>The next screen allows you to create an infrastructure.&nbsp; If you have a predefined infrastructure this is where you can enter details about that infrastructure.&nbsp; For the purposes of this blog we will skip this part and define our hardware architecture.</p>
<p>The next screen is where you will select a CPU architecture.&nbsp; Select the Manufacturer and Model of the CPU you will use in your target host and the tool will fill in details about that CPU.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/0285.Hardware%20Config%203.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/0285.Hardware-Config-3.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/0285.Hardware%20Config%203.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/0285.Hardware-Config-3.PNG" alt="" border="0" /></a></p>
<p>You will need to select the number of processors and you have the ability to adjust any of the values if they do not match what you will use as a host.</p>
<p>Next you will enter information about the storage available to the host and you will enter how much memory and max network speed for the host.</p>
<h2>Step 3. Run the Server Consolidation Wizard</h2>
<p>Now you will run the consolidation wizard and generate reports.</p>
<p>Choose the step Run the Server Consolidation Wizard</p>
<p>The wizard will ask you about the virtualization technology you will use.&nbsp; All of the options are for Hyper-V and vary by version and service pack.&nbsp; If you are using another vendors hypervisor you can still continue with this wizard.&nbsp; Just chose one of the Hyper-V 2012 options and check with your hypervisor manufacturer for comparison to Hyper-V.</p>
<p>The next screen will ask you which Host configuration you want to use.&nbsp; Select the one you just created.</p>
<p>Note:&nbsp; It's easy to create several host configurations and re-run this wizard for each one to do some What-If analysis.</p>
<p>The next screen is asking you to specific utilization settings.&nbsp; By default all values are set to 100%.&nbsp; This will completely max out a host before placing machines on another host.&nbsp; In most cases 80% utilization will give you maximum guest placement with some room left for spikes in performance.</p>
<p>The next screen is similar to the screen in the performance collection wizard asking which guest you want to place on your host configuration.&nbsp; You can let MAP present you will a list of machines it has collected performance data or you can provide a list.</p>
<p>Once the Wizard runs&nbsp;the Server Virtualization screen in the MAP tool updates and shows you the number of hosts and guests.</p>
<p>Click on the Server Consolidation under the Scenarios section.</p>
<p>This page describes summary information about the hosts and in the upper right hand corner under Options there is a report you can generate that will list individual Host / Guest placement.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7484.Consolidation.PNG" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7484.Consolidation.PNG"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7484.Consolidation.PNG" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x550/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7484.Consolidation.PNG" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>I have just run the MAP tool to inventory SQL and the report shows some SQL Servers with Unknown Edition</title>
      <link>https://docs.microsoft.com/archive/blogs/markm/i-have-just-run-the-map-tool-to-inventory-sql-and-the-report-shows-some-sql-servers-with-unknown-edition</link>
      <pubDate>Thu, 04 Jun 2015 14:24:00 GMT</pubDate>
      <dc:creator><![CDATA[markm14]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/markm/2015/06/04/i-have-just-run-the-map-tool-to-inventory-sql-and-the-report-shows-some-sql-servers-with-unknown-edition/</guid>
      <description><![CDATA[You have just inventoried your&nbsp;SQL Server Environment&nbsp;with the MAP Tool&nbsp;...]]></description>
      <content:encoded><![CDATA[<p><span style="font-family: arial,helvetica,sans-serif; font-size: small;">You have just inventoried your&nbsp;SQL Server Environment&nbsp;with the MAP Tool&nbsp; <a href="http://blogs.msdn.com/b/markm/archive/2015/02/17/inventorying-sql-servers-with-the-microsoft-assessment-and-planning-toolkit-map.aspx">http://blogs.msdn.com/b/markm/archive/2015/02/17/inventorying-sql-servers-with-the-microsoft-assessment-and-planning-toolkit-map.aspx</a> and the MAP tool reports several SQL Servers have an "Unknown" edition.</span></p>
<p><span style="color: black; font-family: 'Arial',sans-serif; font-size: small;">The MAP tool uses WMI to collect the information about SQL and there are times especially on older Operating Systems when WMI does not return the SQL Server Edition.</span></p>
<p><span style="color: black; font-family: 'Arial',sans-serif; font-size: 9pt;">You could manually connect via SQL Server Management Studio to each of the machines the MAP tool reported as having an Unknown edition and do a select @@Version or select serverproperty('edition').&nbsp; Depending on the number of machines you have with Unknown edition this could be a very tedious and time consuming task.</span></p>
<p><span style="color: black; font-family: 'Arial',sans-serif; font-size: 9pt;">You could write something to programmatically connect to each of those machines and query for Edition information which is the route I have gone.</span></p>
<p><span style="color: black; font-family: 'Arial',sans-serif; font-size: 9pt;">The following PowerShell script will parse an input file containing the machine name and instance name if the machine has a named instance and query that machine for Product Name, SP level and Edition:</span></p>
<p><span style="color: black; font-family: 'Arial',sans-serif; font-size: 9pt;">The script will also take an output file and return results in the file.&nbsp; If no output file is specified the results are displayed on your screen.</span></p>
<p><span style="color: black; font-family: 'Arial',sans-serif; font-size: 9pt;">To prepare you input file open the SQLServerAsessment Report from the MAP tool and go to the DatabaseInstances tab.&nbsp; Filter on Unknown Editions so that the sheet only contains Machines with Unknown Editions.&nbsp; Copy the Server Name and Instance Name&nbsp;columns and paste them into notepad.&nbsp; For machines with &nbsp;MSSQLSERVER as the instance name, remove the instance name.&nbsp; For machines with MSSQL$ and the instance name, remove the MSSQL$ so that the line in notepad is servername\instancename.&nbsp; You can run the script with parameters or uncomment out the declaration of $infile and $ outfile and hardcode the file names in the script.&nbsp; If you omit the output file name the results are displayed on your screen.</span></p>
<p><span style="color: black; font-family: 'Arial',sans-serif; font-size: 9pt;">The script will login using your windows credentials so you will need to run the script using credentials that have the ability to query SQL for edition information.</span></p>
<p>$infile = $args[0]<br />$outfile = $args[1]<br />&nbsp;<br />#$infile = ".\servers2.txt"<br />#$outfile = ".\outfile.csv"<br />&nbsp;<br />if(!$infile)<br />&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp; write-host<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ""<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "INVALID ARGUMENT"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ""<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "GetSQLProperties has two arguments"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ""<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "The first argument is for a file containing a list of SQL Servers to be Queried"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "The second argument if for an output file containing the results of the query in a comma delimited format"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "If the second argument is ommitted the results will be displayed in your powershell window"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ""<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "The format of the input file is as follows:"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ""<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Server1"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Server2"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Server3"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Server3\namedinstance"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Server4"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Server5"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ""<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Usage:"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ""<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "GetSQLProperties c:\filepath\infile.txt"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "GetSQLProperties c:\filepath\infile.txt c:\filepath\outfile.txt"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ""<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ""<br />&nbsp;&nbsp;&nbsp; }<br />Else<br />&nbsp;&nbsp;&nbsp; { <br />&nbsp;&nbsp;&nbsp; $Servers = Get-Content $infile<br />&nbsp;<br />&nbsp;&nbsp;&nbsp; Foreach ($value in $Servers)<br />&nbsp;<br />&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pversion = ""<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $plevel = ""<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pedition = ""<br />&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; try<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $con = new-object System.Data.SqlClient.SqlConnection "Server=$value;Pooling=false;Integrated Security=true"<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $con.Open()<br />&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $cmd = $con.CreateCommand()<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $cmd.CommandText = "<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SELECT SERVERPROPERTY('productversion') productversion, <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SERVERPROPERTY('productlevel') productlevel, <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; SERVERPROPERTY('edition') edition<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $rdr = $cmd.ExecuteReader()<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $rdr.Read()<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pversion = $rdr[0]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $plevel =&nbsp;&nbsp;&nbsp; &nbsp;$rdr[1]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $pedition =&nbsp; $rdr[2]<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $rdr.Close();<br />&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $con.Close()<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(!$outfile)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {write-host $value, $pversion, $plevel, $pedition}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {"{0}","`t","{1}","`t","{2}","`t","{3}" -f $value,$pversion,$plevel,$pedition | out-file $outfile -Append}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Catch<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(!$outfile)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {Write-host -f red $value, " Could not connect"}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Else<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {"{0}","`t","Could Not Connect" -f $value | out-file $outfile -Append}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />&nbsp;&nbsp;&nbsp; } <br />}</p>]]></content:encoded>
    </item>
    <item>
      <title>Inventorying SQL Servers with the Microsoft Assessment and Planning Toolkit (MAP)</title>
      <link>https://docs.microsoft.com/archive/blogs/markm/inventorying-sql-servers-with-the-microsoft-assessment-and-planning-toolkit-map</link>
      <pubDate>Tue, 17 Feb 2015 11:56:00 GMT</pubDate>
      <dc:creator><![CDATA[markm14]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/markm/2015/02/17/inventorying-sql-servers-with-the-microsoft-assessment-and-planning-toolkit-map/</guid>
      <description><![CDATA[How many SQL Servers do you have in your environment?&nbsp; Do you know?&nbsp;Do you really...]]></description>
      <content:encoded><![CDATA[<div>
<div>
<h3>How many SQL Servers do you have in your environment?&nbsp; Do you know?&nbsp;<br />Do you <em>really</em> know?&nbsp; I recently had a customer ask me if there is<br />a way to programmatically find SQL Servers in their environment - even the ones<br />they don&rsquo;t know about.</h3>
<p>This customer had a catastrophic failure of a SQL server<br />installed by a department that IT didn&rsquo;t know existed.&nbsp; There were no backups; no one was doing<br />maintenance.&nbsp; The database was corrupt<br />and the data was gone.&nbsp; The department<br />was very upset and there was nothing IT could do to help.</p>
<p>IT wanted to know if it was possible to find any other SQL<br />servers they didn&rsquo;t know about.&nbsp; The<br />Microsoft Assessment and Planning Toolkit (MAP tool) provided them with the<br />information they sought.</p>
<p>The MAP tool will provide a wealth of information about each<br />and every instance of SQL you have running in your environment even if you are<br />not aware that they exist.&nbsp; The MAP tool<br />provides things you would expect such a tool to provide as Server Name,<br />Instance Name, SQL Version, SQL Edition, any SQL Service Packs installed.&nbsp; The MAP tool will also provide things you may<br />not expect such as Host OS version, edition and service pack, as well as<br />hardware architecture running the OS including CPU make and model, number of<br />CPUs, the number of cores. The MAP tool will also tell you if the machine is<br />virtual or physical.</p>
<h2>How does it work</h2>
<p>The MAP tool will systematically look for SQL Servers on<br />your network and report back what it finds.&nbsp;<br />It works by using Windows Management Interface (WMI) and remote registry<br />reads to capture information about SQL in your environment.&nbsp; WMI and the ability to remotely read the<br />registry is part of the Windows OS so nothing needs to be installed on the<br />target machine to determine if SQL is present and if it is, information about<br />SQL.</p>
<p>The MAP tool is very light weight in terms of resources<br />consumed on the target and host machine.&nbsp;<br />I have ran the MAP tool at a customer site with over 80,000 machines on<br />their network.&nbsp; We instructed the tool to<br />look for SQL on every single one of those machines and there was no negative<br />impact to any machines or the network.</p>
<p>The tool can be run from a desktop or a small virtual<br />machine and the tool will throttle itself up or down based on resources<br />available on the machine running the tool.&nbsp;<br />I have had many customers install the tool on a DBA or System<br />Administrators desktop to perform an inventory while that person continued their<br />usual work on the same machine running the MAP tool.</p>
<p>Once the MAP tool finds a SQL Server and queries WMI and the<br />registry of that machine for details about the SQL server, it will store that<br />information in a SQL database on the machine you are using to run the MAP<br />tool.&nbsp; The current version of the MAP<br />tool, version 7.0, uses a very light weight version of SQL 2012 called<br />LocalDB.&nbsp; Previous versions of the MAP<br />tool used SQL Express which consumed more local resources than LocalDB.</p>
<p>MAP 7.0 also introduces a light weight SQL inventory that<br />will provide all the information I mentioned above.&nbsp; Previous versions of the tool will also<br />report back information about individual databases.&nbsp; That is still available but if all you want<br />to do is inventory SQL in your environment, the light weight inventory will run<br />about 90% faster than the SQL with Database Details inventory.</p>
<p><strong>Warning:</strong> &nbsp;Prior to running the MAP tool, inform your<br />Network and Security teams about what you are planning to do.&nbsp;&nbsp; Since the tool will systematically query<br />every machine it finds, it can appear to be malicious to these teams.&nbsp;</p>
<p>I&rsquo;ve been involved in running this tool in dozens of<br />customers and this is a key step.&nbsp; The<br />customers who did let the Network and Security teams know met with little or no<br />resistance and the customers that did not were usually shut down by those teams<br />in the process of running the tool and in one case were not allowed to run it<br />again.</p>
<h1>Getting Started</h1>
<p>To begin, you will need to download the tool which can be<br />found here: <a href="http://technet.microsoft.com/en-us/library/bb977556.aspx">http://technet.microsoft.com/en-us/library/bb977556.aspx</a>.&nbsp; The tool will install SQL 2012 localDB first<br />and then itself.&nbsp; Once the tool is<br />installed you can perform an initial inventory.</p>
<p>The first time you run the tool, you will be asked to<br />provide a database name.&nbsp; It is important<br />to note that any additional inventories done with that database will skip all<br />machines the tool has previously found.&nbsp;<br />If you want a fresh inventory, simply create another database from<br />within the MAP tool.&nbsp; The tool will let<br />you switch between multiple databases.</p>
<p>Once you have the tool installed and the database selected,<br />you should see the following screen:</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/0284.MAP%201.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/0284.MAP-1.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/0284.MAP%201.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/0284.MAP-1.png" alt="" border="0" /></a></p>
<p>You have probably noticed that there are a lot more than<br />just database options in this tool.&nbsp; The<br />Solutions Accelerator team at Microsoft has provided us with a very<br />comprehensive tool that will do significantly more than just SQL discovery.&nbsp; Take a look at some of the other things this<br />tool can do - some of them may be useful to you or others in your organization</p>
<p>The screen is laid out into two main sections. &nbsp;To the left is a list of items the tool can do<br />and it provides you a way to move from one area of the tool to another.&nbsp; The right section is unique to the selection<br />made on the left side of the screen.</p>
<p>To start, we want to select Perform and inventory.&nbsp; This option has a wrench icon and is located<br />in the Where to start section of the Overview section.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3007.MAP%202.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3007.MAP-2.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3007.MAP%202.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3007.MAP-2.png" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<h1>Performing an Inventory</h1>
<p>After clicking on Perform an inventory.&nbsp; You will see the following screen:</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4454.MAP%203.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4454.MAP-3.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4454.MAP%203.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4454.MAP-3.png" alt="" border="0" /></a></p>
<p>&nbsp;This screen will allow you to select what you want to<br />inventory, how you will discover the machines and what credentials the tool<br />will use for inventory.&nbsp; Notice on the<br />left side of the screen the following items are listed:</p>
<ul>
<li><br />Inventory Services</li>
<li><br />Discovery Methods</li>
<li><br />Active Directory Credentials</li>
<li><br />Active Directory Options</li>
<li><br />All Computers Credentials</li>
<li><br />Credential Order</li>
<li><br />Summary</li>
</ul>
<p>Each of these has its own screen that requires input.&nbsp; I will walk you through those screens now and<br />describe your options.</p>
<h2>Inventory Services</h2>
<p>If you scroll the slider down, you will see all of the<br />possible things you can inventory.&nbsp; There<br />are two boxes for SQL Server.&nbsp; SQL Server<br />without database details has been recently added and is a much faster, more<br />efficient inventory if you don&rsquo;t want details about your databases. If you do<br />want details about your databases, then select the SQL Server Database Details<br />option.&nbsp; Database details will require<br />SQL credentials as well as AD credentials.</p>
<h2>Discovery Methods</h2>
<p>You should now see the screen shown in figure 3.&nbsp; Using Active Directory Domain Services is<br />pre-selected.&nbsp; The AD option is the most<br />comprehensive selection you can make.&nbsp;<br />This is the option I recommend so this article will cover that option in<br />detail.&nbsp; The following are brief<br />descriptions of the other options.</p>
<p><strong>Use Windows<br />networking protocols</strong> &ndash; Uses Windows protocols to find computers not<br />connected to a domain.&nbsp; The protocols<br />rely on multi-cast technologies so you will be limited to your VLAN or subnet<br />if you select this option.</p>
<p><strong>Use System Center<br />Configuration Manager</strong> &ndash; Will query System Center Configuration Manager for<br />a list of servers and will inventory just those servers.</p>
<p><strong>Scan an IP address<br />range</strong> &ndash; Allows you to enter in multiple IP address ranges and will try<br />every IP address in each range to discover SQL.</p>
<p><strong>Manually enter<br />computer names and credentials</strong> &ndash; This is exactly what it says it is.&nbsp; You manually enter computer names along with<br />credentials.</p>
<p><strong>Import computer names<br />from a file</strong> &ndash; This option allows you to enter a list of computer names into<br />a flat file delimited by a &lt;CR&gt;&lt;LF&gt;.&nbsp; (One name per line.)</p>
<p>Ensure that the Use Active Directory Domain Servers is<br />selected and click next.&nbsp; You will see a<br />screen similar to the screen in figure 4.&nbsp;<br />This screen is asking for credentials.</p>
<h2>Active Directory Credentials</h2>
<p>Ensure that the Use Active Directory Domain Servers is<br />selected and click next.&nbsp; You will see a<br />screen similar to the screen in figure 4.&nbsp;<br />This screen is asking for credentials.</p>
<p>A quick note about credentials:&nbsp; This tool will use credentials to enumerate<br />objects in AD and to query WMI - the latter typically requires local admin on<br />the machine being queried.&nbsp; The easiest<br />way to get local admin on all the machines is to use credentials that have<br />domain administrator rights. &nbsp;As I<br />mentioned previously, I have assisted many customers with running this tool and<br />if the person running the tool does not have the necessary rights, they are<br />obtained in one of two ways:&nbsp;</p>
<ol>
<li><br />The person running the tool requests and is<br />granted the rights.&nbsp; As you can imagine,<br />this rarely happens.&nbsp;</li>
<li><br />The person running the tool asks someone with<br />those rights to enter their credentials in the tool.&nbsp; This person is typically a system<br />administrator.&nbsp; The tool does not store<br />credentials and if an inventory is stopped for any reason, those credentials<br />must be entered again to do another inventory.&nbsp;</li>
</ol>
<p>Entering credentials to enumerate AD objects usually does<br />not require administrator rights.&nbsp; Enter<br />your credentials in the screen shown in figure 4 and press enter.</p>
<p>Next, you will see the screen shown in figure 5.&nbsp; In my case, I have a single domain and that<br />domain is shown.&nbsp; If you have multiple<br />domains in a forest, you will see all domains in the forest.&nbsp; In either case by default, the option to find<br />all computers in all domains, containers and organization units is<br />selected.&nbsp; You can selectively choose<br />which parts of AD are used to find computers by selecting the second option as<br />shown in figure 5.</p>
<h2>All Computers Credentials</h2>
<p>The next screen that you will see is shown in figure 6.&nbsp; This is where you will enter your<br />administrator credentials.&nbsp; At the bottom<br />of the screen, you will notice the tool is providing you with a save and a save<br />and new option.&nbsp; You can enter multiple<br />credentials.&nbsp; This is useful if you are<br />inventorying multiple domains with different credentials.&nbsp; You will also have the ability to specify the<br />order in which the credentials will be used.</p>
<p>If you select the SQL Server Database Details, you will be<br />prompted for SQL credentials as well.</p>
<h2>Credential Order</h2>
<p>If you entered more than one set of credentials, this<br />section allows you to specify the order that those credentials are tried.&nbsp; The credentials are tried in the order you<br />specify here so if you are inventorying two domains, one large and one small,<br />put the credentials for the large domain first.&nbsp;<br />Once a connection is made to the machine being inventoried, additional<br />credentials are not used for that machine.</p>
<h2>Summery</h2>
<p>This is a summary page telling you everything the tool is<br />about to do.&nbsp; To begin your inventory, click<br />Finish and you will see a status screen. &nbsp;When the inventory is complete, the status<br />will change from running to complete and the status icon will change from<br />orange with three dots to green with a checkmark.</p>
<p>The question that is probably on your mind at this point is<br />&ldquo;How long will this take?&rdquo; The answer is it depends on a lot of things - most<br />certainly the number of machines the tool is going to inventory.&nbsp; Depending on the type of inventory you are<br />doing, a Database Details take longer than just a SQL inventory and how you are<br />inventorying.&nbsp; A scan using AD will<br />enumerate all the machine accounts in the OU&rsquo;s you selected and will try to<br />connect to them all.&nbsp; If you entered<br />multiple IP address ranges, the tool will try to connect to each IP address in<br />that range even if there isn&rsquo;t a machine using that IP address.&nbsp; Slow links in your network can also affect<br />the amount of time it will take to complete.</p>
<h1>Viewing the Inventory Results</h1>
<p>Expand the Database section under Inventory and Assessment<br />on the left hand side of the screen.&nbsp;</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/2262.MAP%204.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/2262.MAP-4.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/2262.MAP%204.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/2262.MAP-4.png" alt="" border="0" /></a></p>
<p>&nbsp;</p>
<p>Click on the Microsoft SQL Server Discovery option (first<br />one in the list) and you will see a summary of your inventory which will look<br />similar to the screen shot above.&nbsp; This<br />summery is very interesting but there isn&rsquo;t much you can do with it.&nbsp;</p>
<h2>Generating Reports</h2>
<p>When you clicked on Microsoft SQL Server Discovery your<br />screen changed to the Summary Results page in the center of your screen and<br />there is now an Actions section on the right hand side of the screen.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4452.MAP%205.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4452.MAP-5.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4452.MAP%205.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4452.MAP-5.png" alt="" border="0" /></a></p>
<p>At the top of that section is a link that says Generate SQL<br />Server Assessment.&nbsp; Click that link and<br />the tool will generate an Excel spreadsheets.&nbsp;<br />The tool will generate a report called SQL Server Assessment.&nbsp; The report will be located in your My Documents Folder in a Folder in a Folder called MAP</p>
<p>The reports will reside in a sub-folder that is the same name as your database.</p>
<p>&nbsp;</p>
<h3>SQL Server Assessment</h3>
<p>The SQL Server Assessment report provides the most useful<br />information for SQL Inventory.&nbsp;</p>
<p>The Database instance tab will have the following columns:<br />Computer Name, SQLServer Instance Name, SQL Server Product Name, SQL Server<br />Version, SQL Server Service Pack, SQL Server Edition, Clustered? SQL Server<br />Cluster Network Name, SQL Service State, SQL Service Start Mode, Language, SQL<br />Server Sub-Directory, Current Operating System, Operating System Service Pack<br />Level, Operating System Architecture Type, Number of Processors, Number of<br />Total Cores, Number of Logical Processors, CPU, System Memory, Logical Disk<br />Drive Name, Logical Disk Size (GB), Logical Disk Free Space (GB),<br />Recommendation, Machine Type, Number of Host Processors, WMI Status.</p>
<p>The report also contains a Summery Tab.&nbsp; The Summary Tab list a count of instance by<br />Component name: Database Services, Integration Services, Analysis Services and<br />Reporting Services.</p>
<h3>&nbsp;</h3>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
</div>
</div>]]></content:encoded>
    </item>
    <item>
      <title>How to connect to your Azure Account using a Management Certificate in PowerShell</title>
      <link>https://docs.microsoft.com/archive/blogs/markm/how-to-connect-to-your-azure-account-using-a-management-certificate-in-powershell</link>
      <pubDate>Tue, 16 Dec 2014 05:43:00 GMT</pubDate>
      <dc:creator><![CDATA[markm14]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/markm/2014/12/16/how-to-connect-to-your-azure-account-using-a-management-certificate-in-powershell/</guid>
      <description><![CDATA[In my last blog post...]]></description>
      <content:encoded><![CDATA[<p>In my last blog post <a href="http://blogs.msdn.com/b/markm/archive/2014/12/15/getting-started-using-powershell-for-azure.aspx">http://blogs.msdn.com/b/markm/archive/2014/12/15/getting-started-using-powershell-for-azure.aspx</a> I showed you how to connect to Azure using the add-azureaccount command which brought up an interactive&nbsp;sign in screen.</p>
<p>In this blog post I will show you how to connect to azure using a management certificate allowing you to execute your PowerShell jobs with no user dialog.</p>
<p>The first step is to create an X.509 certificate and upload it to Azure.&nbsp; There are two methods of doing this.&nbsp; The first is with the makecert utility which is included in the Windows SDK.&nbsp; The second method is to use Internet Information Services Manager to create the certificate.</p>
<p>I will cover the second option, using Internet Information Services Manager.&nbsp; If you don't have Internet Information Services Manager installed on your computer you can add it in Control Panel &gt; Programs and Features &gt; Turn Windows Features on or off &gt; Internet Information Services.&nbsp; By default selecting this will select Web Management Tools and World Wide Web Services.&nbsp; We only need the Management Tools to create an X.509 certificate, deselect World Wide Web Services if you do not want web services running on your computer.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7635.IIS.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7635.IIS.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7635.IIS.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7635.IIS.png" alt="" width="262" height="252" border="0" /></a></p>
<p>Once you have the Web Management Tools installed you can create a certificate to use for connecting to your Azure Subscription.</p>
<p>Open the Web Management Tools by typing IIS in Search and selecting Internet Information Services (IIS) Manager.&nbsp; Once open, select Server Certificates</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3108.IIS%20Cert.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3108.IIS-Cert.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3108.IIS%20Cert.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3108.IIS-Cert.png" alt="" width="189" height="172" border="0" /></a></p>
<p>Next select create a self signed certificate in the actions pane and choose a name.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4540.create%20cert.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4540.create-cert.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4540.create%20cert.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4540.create-cert.png" alt="" width="172" height="145" border="0" /></a></p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/2146.Certname.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/2146.Certname.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/2146.Certname.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/2146.Certname.png" alt="" width="348" height="234" border="0" /></a></p>
<p>Select Personal for the Certificate Store</p>
<p>Once the Certificate is created, double click on it to bring up it's properties.&nbsp; On the Details tab click on&nbsp;Copy to file.&nbsp; This will bring up the Certificate Export Wizard</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/0830.copytofile.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/0830.copytofile.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/0830.copytofile.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/0830.copytofile.png" alt="" width="264" height="346" border="0" /></a></p>
<p>&nbsp;</p>
<p>Once the Wizard has started, click next at the welcome screen</p>
<p>Select Do not export the private key and click next</p>
<p>Select DER Encoded Binary&nbsp;X.509 (.CER)</p>
<p>Provide a file name and click Next then click Finished.</p>
<p>You now have a file containing your certificate that can be uploaded to your Azure Subscription.</p>
<p>Login to your subscription and go to the Management Portal.</p>
<p>On the left side of the screen scroll all the way to the bottom and select Settings.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/6428.Settings.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/6428.Settings.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/6428.Settings.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/6428.Settings.png" alt="" width="126" height="269" border="0" /></a></p>
<p>Select the Management Certificates Tab and click on upload</p>
<p>Browse to your certificate and click on the check box.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7658.uploadcert.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7658.uploadcert.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7658.uploadcert.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7658.uploadcert.png" alt="" width="216" height="143" border="0" /></a></p>
<p>Now your certificate is uploaded and ready to use.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/0317.certinfo.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/0317.certinfo.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/0317.certinfo.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/0317.certinfo.png" alt="" width="596" height="119" border="0" /></a></p>
<p>The name of the certificate will be the computer name that you used to create the certificate.</p>
<p>Now&nbsp;you are ready&nbsp;to connect to your Azure Subscription within PowerShell.</p>
<p>First&nbsp;you&nbsp;will&nbsp;need to define 3 variables.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/8132.variables.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/8132.variables.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/8132.variables.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/8132.variables.png" alt="" border="0" /></a></p>
<p>$SubscriptionID is the value indicated on the Management portal as Subscription ID</p>
<p>$ManagementCert is the value returned by the function Get-Item.&nbsp;</p>
<p>cert\currentuser\my\&nbsp;points to your personal certificates on your computer and the value is the Thumbprint of the certificated indicated in the Management portal as Thumbprint. (is also available in the properties of your certificate in the details TAB.)</p>
<p>$SubscriptionName is the name of your Scubscription indicated in the Management portal as Subscription.</p>
<p>Next you will need to Set and Select your subscription.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4405.getsubscription.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4405.getsubscription.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4405.getsubscription.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4405.getsubscription.png" alt="" width="727" height="36" border="0" /></a></p>
<p>Set-AzureSubscription -SubscriptionName $SubscriptionName -Certifacte $ManagementCert -SubscriptionID $SubscriptionID</p>
<p>Select-AzureSubscription -SubscriptionName $SubscriptionName</p>
<p>You are now connected to your Azure Subscription in PowerShell programmatically and can begin executing PowerShell commands to manage, provision and de-provision resources.</p>
<p>Once your job has completed you can disconnect from your subscription using the following command.</p>
<p><span style="font-size: x-small;"><span style="color: #0000ff; font-family: Lucida Console;"><span style="color: #0000ff; font-family: Lucida Console;"><span style="color: #0000ff; font-family: Lucida Console;">remove-azuresubscription </span></span></span><span style="color: #000080; font-family: Lucida Console;"><span style="color: #000080; font-family: Lucida Console;"><span style="color: #000080; font-family: Lucida Console;">-SubscriptionName </span></span></span><span style="color: #ff4500; font-family: Lucida Console;"><span style="color: #ff4500; font-family: Lucida Console;"><span style="color: #ff4500; font-family: Lucida Console;">$SubscriptionName </span></span></span></span></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>]]></content:encoded>
    </item>
    <item>
      <title>Getting Started using PowerShell for Azure</title>
      <link>https://docs.microsoft.com/archive/blogs/markm/getting-started-using-powershell-for-azure</link>
      <pubDate>Mon, 15 Dec 2014 12:11:00 GMT</pubDate>
      <dc:creator><![CDATA[markm14]]></dc:creator>
      <guid
        isPermaLink="false">https://blogs.msdn.microsoft.com/markm/2014/12/15/getting-started-using-powershell-for-azure/</guid>
      <description><![CDATA[You have set up your Azure Subscription, you have created a few Virtual Machines or SQL Databases...]]></description>
      <content:encoded><![CDATA[<p>You have set up your Azure Subscription, you have created a few Virtual Machines or SQL Databases and now you would like to start managing your resources using PowerShell</p>
<p>This Blog Post will get you started by showing you how to download the Azure cmdlets and get connected to your azure account.</p>
<p><strong>Downloading and installing the Azure cmdlets</strong></p>
<p>Go to <a href="http://azure.microsoft.com/en-us/downloads/">http://azure.microsoft.com/en-us/downloads/</a></p>
<p>Scroll to the bottom of the page and click on install under Windows PowerShell</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4035.powershell%20install.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4035.powershell-install.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/4035.powershell%20install.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/4035.powershell-install.png" alt="" width="623" height="157" border="0" /></a></p>
<p><strong>Connecting to your Azure Account</strong></p>
<p>Once you have downloaded and installed the Azure PowerShell cmdlets you can connect to your account by issuing the following PowerShell command:</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3288.add%20account.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3288.add-account.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/3288.add%20account.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/3288.add-account.png" alt="" width="334" height="52" border="0" /></a></p>
<p>A dialog box will pop up and you will be prompted for your Azure&nbsp;credentials.</p>
<p><a href="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7848.Azure%20Credentials.png" original-url="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7848.Azure-Credentials.png"><img src="https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Blogs.Components.WeblogFiles/00/00/01/68/15/7848.Azure%20Credentials.png" original-url="http://blogs.msdn.com/resized-image.ashx/__size/550x0/__key/communityserver-blogs-components-weblogfiles/00-00-01-68-15/7848.Azure-Credentials.png" alt="" width="255" height="325" border="0" /></a></p>
<p>Once you have successfully authenticated with Azure you may now start using PowerShell Azure cmdlets to manage your azure subscription such as get-azurevm to get a list of all your virtual machines.</p>
<p>In my next blog post I will show you how to connect to your azure subscription using a management certificate so you can begin automating some of your common tasks such as starting and stopping specific virtual machines on a schedule.</p>]]></content:encoded>
    </item>
  </channel>
</rss>