Windows License Discovery Across Clouds
I have noticed lot of companies struggle to get license details of Microsoft products. Today I am going to show what are Microsoft tool available to discover Windows OS details. I have tested two tools in this category, VAMT and MAPKit, let’s find more about it.
Volume Activation Management Tool (VAMT)
It enables IT Admin to automate and centrally manage the Windows, Office products. You can do volume activation through Online , Offline (Proxy) and Key Management Service.
VAMT provides a graphical user interface. Following are major tasks.
- Server Discovery: It can discover computers by querying AD DS, Workgroups, by individual computer name or IP address, or via a general LDAP query.
- Product Discovery: You can find Windows OS, Office, and any other products installed on the client computers.
- Monitoring activation status: You can collect activation information of Product along with license state and product edition.
- Managing product keys: You can store multiple product keys and use it to install these keys to remote client products.
- Managing activation data: Activation data is stored in an SQL database. VAMT can help to export this data as well.
We will see steps to install this tool and discover licenses.
Pre-requisite :
- VM with 1 CPU, 2 GB RAM and 16 GB (Minimum Configuration)
- Windows OS (windows 7 to latest)
- Client computers are reachable on IP or on DNS
Installation Steps :
Download windows assessment and deployment kit tool from the link , https://learn.microsoft.com/en-us/windows-hardware/get-started/adk-install on your local machine. While installation, you can select VAMT tool for license discovery as per our current scope.
Download SQL server express edition (Free) , Link to download – https://www.microsoft.com/en-in/sql-server/sql-server-downloads . Choose basic version and keep remaining option default. Open VAMT tool, put database name and click on connect, it will connect to SQL server and create new database if not exist.
Client configuration methods to discover
Method 1 – If client machine not part of workgroup
Step 1: Need to take firewall exception to allow WMI
Step 2 : Create a new Dword value on the path HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\system
Value Name: LocalAccountTokenFilterPolicy
Type: DWORD
Value Data: 1
Method 2 – If client machine is part of active directory domain
Step 1: Firewall exception can be raised via group policy
After following about any one method from above, you can discover client in your network. In this demo, I have discovered two VMs.
Microsoft Assessment and Planning ToolKit (MAP Tool)
MAP can gather inventory information from machines on any domain as long as the appropriate administrator credentials are provided to the MAP wizard. It also gather performance data. MAP can be used to inventory and assess the following operating system versions, regardless of whether they are 32-bit or 64-bit:
Windows 10, Windows 8.1,Windows 8,Windows 7,Windows Vista, Windows XP, Windows Server 2012 ,
Windows Server 2008 R2,Windows Server 2008,Windows Hyper-V Server 2008 R2,Windows Hyper-V Server 2008, Windows Server 2003 R2,Windows Server 2003,Windows 2000 Server, Windows 2000 Professional, Linux**, HP-UX, VMware ESXi, VMware ESX, VMware Server v2
Any machines already successfully inventoried into the current database will not be re-inventoried in next inventory search and also Any machines not successfully inventoried previously will be re-attempted.
Pre-requisite :
- VM with 1 CPU, 2 GB RAM and 16 GB (Minimum Configuration)
- Any windows OS (windows 7 to latest)
- Internal connectivity with client computers
- .NET Framework 4.5
Installation steps :
You can download and install tool from the website ypuhtthttps://www.microsoft.com/en-in/download/details.aspx?id=7826.
Installation is straight-forward. By default, the MAP Toolkit will install SQL Server 2012 Express LocalDB during setup. You may also use an existing installation of SQL Server.
For Searching license details, you need to select category from the list as shown below. In Inventory, It uses WMI to collect hardware, device and software information about windows -based computers in your environment , including Microsoft office, SQL server, SharePoint and Configuration Manager. This information is useful for planning migration to various windows operating systems. You need credential with administrative privilege on client computer to do inventory. I have selected windows computer from the list.
You can use any one method to proceed further. I have selected IP range to collect info.
Provide IP range, local credential to login , validate port. Finally check the summary to finish inventory configuration. Under usage tracking, you will find license details. You can click on it and generate report , which provide license details.
You can do much more with these tool, in this article I have given you starting point to use this tool in your orgnization for inventory and migration purpose.
Windows License for Clouds
Lot of professionals reach to me to understand how they can get windows licenses from Cloud VM. You can use above tools to get license details. I will cover another options here for clouds which you can think off.
Azure Cloud – You can get windows licenses by calling below APIs but best method is to download billing report at subscription level or at account level. You get bifurcation on how cost is divided between SKU and Licenses.
https://learn.microsoft.com/en-us/rest/api/compute/virtual-machines/list-all?tabs=HTTP
AWS Cloud – It has dedicated license manager service. It holds all license details at centralized location. You can get windows license details by making API call to it. I have provided the link below which I have tested. Another method would be to get Billing report at account level
https://docs.aws.amazon.com/license-manager/latest/APIReference/API_ListReceivedLicenses.html
GCP Cloud – You can use below APIs to get license details but I would recommend to export Org level billing data in Bigquery dataset and make SQL query to get all license details. It is much easier then firing multiple APIs against each project and each region.
https://cloud.google.com/compute/docs/reference/rest/v1/instances/list
https://cloud.google.com/compute/docs/reference/rest/v1/licenses/list
This is how you can get license details across clouds. Thanks for reading. Learn and grow with multicloudsagar.
3 Comments