EM L07 Thinking Outside the Box with Complex Software Licensing
Description Through its flexible options for data presentation and manipulation,Asset Management Suite provides several options to best fit your organizations software management needs.
Explore a methodology that can be utilized to extend the out-of-the-box supported software license types in Asset Management Suite. Create a report that will display how many licenses are in use of software applications that are using Per Processor Licensing, and discuss how this methodology can be extended to Disk Based Licenses.
At the end of this lab, you should be able to
Identify methods to accommodate Per CPU licensing for specific products within Asset Management Suite
Understand how to extend the data available to software licensing information and compliance.
Understand how to create Custom Data Classes and CMDB Rules that manipulate data elements within the CMDB. Use Targeted Software Inventory to be able to bring Operating
Systems into the Software catalog for auditing and licensing.
Notes This is an advanced lab for experienced users. This step by step guide has been created for those who are not as familiar with the processes found in Asset Management Suite.
A brief presentation will introduce this lab session and discuss key concepts.
The lab will be directed and provide you with step-by-step walkthroughs of key features.
Feel free to follow the lab using the instructions on the following pages. You can optionally perform this lab at your own pace.
Exercise 1: Per Processor accounting through Non-Inventory Installs
The Symantec Asset Management Suite (AMS) enables customer organizations to effectively manage software asset license entitlements and associated reconciliation activities.Problem Statement
AMS 7.x supports ‘per installed node’ calculations. The solution records the number of purchases against a configured software product. Inventory information is then compared to the software product
definition and the compliance count is decremented by one, for each distinct computer device that posts inventory data that matches the product definition.
This approach works well for the majority of licensable applications where there is a one to one relationship between installation count and license consumption, however, certain products, for example, Microsoft SQL Server, may require a ‘per processor’ approach, where the AMS default calculations may present an inaccurate compliance position, consuming only a single license where multiple processors are tied to the product.
Previous Options
Symantec has traditionally provided instructions and custom report syntax to present ‘per processor’ license information in the form of a custom report.
Proposed Solution
This Lab will build on the concepts of the traditional solution referenced above and will place the additional processor details into the ‘Non-Inventoried Installs’ attributes within the AMS license configuration.
Benefit
This approach enables software asset administrators to present license compliance data using the default reports available within the console or made available via IT Analytics configuration.
Implementation
Steps Overview Modify the Data Class that contains the License Type o Add ‘Per CPU’ to the Static List
Create a SQL Server 2008 License
o Associate with “Microsoft SQL Server 2008” product o Associate with Appropriate Purchases
Import the SQL Custom Report into the Symantec Console
Stage One: Modify the License Type Data class
1. Switch to the NS71 VM
2. Open the Symantec Management Console 3. Navigate to Settings | All Settings
4. Expand Settings Notification Server Resource and Data Class Settings folders 5. Expand Data Classes
6. Expand Contract Data Classes
7. Expand Software License Data Classes 8. Select Software License Details
10. Click on Edit Button beside the Type field 11. Enter ‘Per CPU’ and click Add.
12. Click OK 13. Click OK
14. Click Save Changes
Stage Two: Create a Single SQL Server 2008 License & Purchase
This section details how to create a Per Processor License for SQL 2008. As part of this process you will create a software purchase that records how many SQL 2008 processor licenses have been purchased. You will then associate the Software License with the SQL 2008 software product to correlate license information with installation data.
1. Switch to the NS71 VM
2. Navigate to Home | Service and Asset Management | Software Licensing 3. Right Click on Software Purchase and select Create Software Purchase
4. Select Software Purchase (global) from the View drop down (Upper Right Hand Corner)
5. Enter SQL 2008 Purchase in the Software Purchase field (Top Left) 6. Enter November 1st, 2012 as the purchase date in Purchase Date field 7. Enter This is a purchase of per processor SQL Licenses in Description field 8. Enter 50 in the Quantity field
9. Click OK
10. Right Click on Software License on the left pane and select Create Software License 11. Select Software Licenses (global) from the View drop down field.
12. Enter SQL 2008 License in Software License Field
13. Click on Click to select… from Covered Software Product 14. Type Microsoft SQL in the Search field
15. Select Microsoft SQL Server 2008 and click OK.
16. Enter Per Processor License for SQL 2008 in the Description field 17. Enter Active in the Status field
18. Check the Approved box
19. Enter 1200 in the Maintenance Renewal Cost 20. Enter 800 in the Support Renewal Cost
22. Click Edit icon under Software Purchase
23. Select SQL 2008 Purchase and press the Right Arrow (>) to move to the Selected Items box.
24. Click OK
25. Scroll down to Non-Inventoried Installs and notice how it is empty 26. Click OK on the software license screen to save the newly created license
Stage Three: Import the SQL Custom Report into the Symantec Console
This section details how the custom SQL Report works and how to import a custom report into the Symantec Management Console. The report we will import consists of a query that is based on finding a Computer with the proper Software License match and joining the processor count to it.
The report is composed of the following syntax:
SELECT vC.Name,
(select [guid] from item where [name] like '%SQL 2008 License%' and productguid like 'E81A4114-5D09-45DC-97F6-4B06F08C9AB0') as ResourceGuid,
SUM(vHWP.[Number Of Logical Processors]) AS [Number of Logical Processors], SUM(vHWP.[Number Of Logical Processors]) - 1 AS NonInventoried
FROM vHWProcessor AS vHWP INNER JOIN
vComputer AS vC ON vHWP._ResourceGuid = vC.Guid INNER JOIN Inv_AddRemoveProgram AS aR ON vC.Guid = aR._ResourceGuid GROUP BY vC.Name, aR.DisplayName, vC.Guid
HAVING (aR.DisplayName LIKE N'%Arp%')
To import the prepared report:
1. Switch to the NS71 VM2. Open the Symantec Management Console 3. Navigate to Reports | All Reports
4. Right Click on the Reports folder and select Import 5. Browse to C:\Lab Resources\Per Processor Lab\Other
6. Select the Microsoft SQL 2008 Per CPU Report.xml and click OK 7. You will find the imported report under the Vision 2012 Folder
8. Select the Microsoft SQL 2008 Per CPU Report and notice that the Number of logical Processors is four (4) and that the Non-Inventoried value is 3 (4 total CPU’s – 1 assigned CPU = 3 Remaining CPU Licenses)
This Non Inventoried value will be used to reduce the value of available licenses by 3 in the next stage of the Lab
Stage Four: Import the CMDB Rule into the Symantec Management Console
This section will show how a CMDB Rule that is fed from a report can modify the Non Inventoried Install count in a Software License to product exact Per Processor counts. This section also details how to import a CMDB Rule into the Symantec console.
1. Select Settings | All Settings in the Main Menu 2. Expand Settings Notification Server Connector 3. Right click on the CMDB Rules folder and select Import 4. Browse to C:\Lab Resources\Per Processor Lab\Other 5. Select the SQL 2008 Per CPU CMDB Rule.xml and click OK 6. Select the CMDB Rule to review the contents
The settings are configured to feed the Non-Inventoried count, a description (in our case the Computer Name of the CPU Count), and the license status of In-Use to any Software License specified in the Microsoft SQL 2008 Per CPU Report.
7. Click Run Now (at the bottom of the window) to populate the Non-Inventoried value in the Software License immediately. The configured license will now have Non-Inventoried Installs attribute populated with additional processor numbers and the computer name consuming the licenses.
All default Software Licensing and Compliance reports will present this data and validate it in license calculations.
8. Navigate to Home | Service and Asset Management | Software Licensing on the main menu 9. Select the Software License item in the left pane tree view
10. Enter SQL 2008 License in the Search field on the top right pane 11. Double Click the SQL 2008 License to open it
12. Find the Non Inventoried Installs section
13. Notice that the CMDB Rule has placed 3 Non-Inventoried Installs of SQL 2008 Server in this area with additional information
14. Click Cancel
15. On the Left Pane, select Service and Asset Management Reports on the main menu 16. Expand the Contract Management Software Licensing folders
17. Select the Software Product Licensing Compliance report
18. Type %Microsoft SQL Server 2008% in the Software Product Name: field 19. Refresh the report by checking the Refresh Button
20. You may notice that the Non-Inventoried count has not appeared in the reports yet
21. This is a result of the NS.Software Product Licensing Recalculation Scheduled Task has not run after the creation of the Non-Inventoried Install data.
22. This Scheduled Task may be run in Windows by selecting Start > Task Scheduler
23. Locate the NS.Software Product Licensing Recalculation Schedule under the Task Scheduler
Library Folder
25. Wait until the task completes
26. Return to the Software Product Licensing Compliance report and press the Refresh button
27. Notice that the compliance report shows the Non-Inventoried Installs that the CMDB Rule entered and that this process does work with a standard software license report.
Summary
The techniques and principles detailed in this lab can be extended in support of a variety of product names and license metric types. To support another product:
Modify the query parameter ‘%ARP%’ to reflect the new product name
Modify the custom report entry '%SQL 2008 License%' to reflect the new product name
This lab could also be slightly modified so it can support a “Per Core” licensing mode by modifying the SQL Report to the following:
SELECT vC.Name
,(SELECT Guid FROM Item WHERE (Name LIKE '%SQL 2008 License%') AND (ProductGuid LIKE 'E81A4114-5D09-45DC-97F6-4B06F08C9AB0')) AS ResourceGuid
,SUM(vHWP.[Number Of Logical Processors]) AS [Number of Logical Processors] ,vHWP.[Number Of Cores]
,SUM(vHWP.[Number Of Logical Processors]) * vHWP.[Number Of Cores] As [Total Cores] ,SUM(vHWP.[Number Of Logical Processors]) * vHWP.[Number Of Cores] -1 AS NonInventoried FROM vHWProcessor AS vHWP INNER JOIN
vComputer AS vC ON vHWP._ResourceGuid = vC.Guid INNER JOIN Inv_AddRemoveProgram AS aR ON vC.Guid = aR._ResourceGuid
GROUP BY vC.Name, aR.DisplayName, vC.Guid, vHWP.[Number Of Cores], vHWP.[Number Of Logical Processors] HAVING (aR.DisplayName LIKE N'%Database Engine Service%')
You will get a result something like this: Name ResourceGuid Number of Logical Processors Number Of Cores Total Cores NonInventoried
<COMPUTER Name> <SWL GUID> 4 4 16 15
You will then be able to create a CMDB rule that will populate the Non Inventoried Installs section of the Sotware License with the total cores minus one (1).
Exercise 2:
Using Targeted Software Inventory to Manage OS Licenses
Problem Statement
The Software Management Framework does not automatically create software products for Operating System products
Previous Options
Traditionally, Inventory reports were generated to present this detail and manually reconciled.
Proposed Solution
Use Symantec targeted software inventory (TSI) to identify and create products that can be attached to configured licenses to present compliance data in a consistent fashion.
Benefit
Compliance data for the Operating System and the software installation can be reviewed holistically and contract and license key data associated with OS installations can be recorded in a standardized way.
Implementation
1. Switch to the NS71 VM
2. Open the Symantec Management Console
3. Select Manage | Software Catalog in the main menu
4. Under the Newly Discovered\undefined software pane, choose +ADD then Software Release 5. Replace the Untitled Name with Vision 2012 - Windows 7 Professional in the top left section of
the window
6. Under the Properties tab, Enter 6.1.7601 in the Version field 7. Choose Microsoft under the Company field
8. Under the Rules Tab, Choose *New in the Detection Rule area. The Create Rule window appears 9. Enter Windows 7 Professional Reg Rule in the Name field
10. Press the + button and select Standard Rule Reg Key Value. The reg key value window appears.
11. Enter the following values:
a. Registry Key Path: HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS NT\CurrentVersion b. Registry Entry: ProductName
c. Registry value: Windows 7 Professional d. Match: Entire String
13. Maximize the Create Rule window, then press OK to save 14. Press OK on the Software Release window
15. Press Close on the Software Catalog window.
At this point, the Windows 7 Professional software release is not manageable within the
Software Catalog. A policy must be created and ran on a system for the Detection Rule to apply. 16. Select Manage | Policies in the main menu
17. Expand the Discovery and Inventory Folder in the right pane
18. Right Click on the Targeted Software Inventory folder and choose New Targeted Software
Inventory. It may take a few seconds to load
19. Name the policy Detection check for Vision 2012 - Windows 7 Professional 20. Press the Select Software button
21. Enter Vision 2012 in the search box in the left pane
22. Choose the Vision 2012 - Windows 7 Professional software (This is the one you created) 23. Press the Right arrow (>) to put it in the Right Pane
24. Press OK
25. Expand the Schedule Section by pressing the Down Arrow at the end of the section 26. Press the Add Schedule button and select scheduled time
27. Enter a time that is within the next 5 minutes (The NS71 VM Time) 28. Scroll to the Apply To section
29. Select the Windows Computers with Inventory Plug-in target and press the red X to delete this target.
30. Press the Apply To button and select Computers 31. Press the Add Rule button
32. Select Then: “Exclude Computers Not In” in the drop down list 33. Select Filter for the next drop down list
35. Select Windows 7 from the list
36. Press the Update Results Button. You should see 18 Computers in the List
37. Press OK
38. Enable the policy by scrolling to the top and Selecting the OFF button in red and choosing ON. The setting should turn green.
39. Press Save Changes (At the bottom of the policy) 40. Switch to the Win7 VM
41. Open the Symantec Management Agent on the task bar by double clicking it 42. Press the Settings icon in the top right
43. Press the Update button. Notice that the Requested and Changed times change. 44. Go to the other Symantec Management Agent Window and select the Task Status Tab
45. Wait for the Targeted Software Inventory policy to execute successfully at the time you set. You should see the following message:
46. Switch to the NS71 VM
47. Select Manage | Software Catalog in the main menu
49. You should now see your “Vision 2012 - Windows 7 Professional” software release 50. Select it and press the Right Arrow (>) beside the Managed Software Products pane. The
Software Product window comes up. Explore the tabs in this software product 51. Press OK to save the software product.
52. Press Close to close the Software Catalog
This demonstrates that operating systems can be tracked, and licensed in similar ways that standard applications are. In the next section we will extend the License Data Class to accommodate the feeding of license keys into an OS License.
Exercise 3: Creating Custom Dataclasses for License Key Management
Problem Statement
Software vendors distribute keys to license and activate the covered software. These details require recording by the customer organization.
Previous Options
Organizations have traditionally recorded key data in a spreadsheet or arbitrary field in their License management repository and simply ‘attached’ or referenced it in the Software License or Software Purchase within Asset Management Solution.
Proposed Solution
Using CMDB solution, we can extend the fields available on the License contract resource type to
incorporate key data. We can also use a multitude of options to feed these new fields using CMDB Rules, Automation Rules, Custom Inventories and more.
Benefit
This ensures that the license manager and other authorized personnel are able to review key data that pertains to a particular license in a single tool.
Implementation
Create a License key dataclasses
o Create custom multi-rowed dataclasses
o Provide a Meaningful name and description – License Key Details o Add attribute – Key type – Edit static list – add ‘Activation’ and ‘License’ o Add attribute – Key – String 30
o Add attribute – Foreign Resource key – Computer o Add attribute – Foreign Resource Key – User o Add attribute – Key expiry – date/time
Create custom view to limit presentation (optional)
Stage One: Implementation of the “License Key Details” Data class
1. Switch to the NS71 VM
2. Open the Symantec Management Console 3. Select Settings | All Settings in the main menu
4. Expand Settings Notification Server Resource and Data Class Settings Data Classes Contract Data Classes
5. Right Click on the Software License Data Classes folder and Select New Editable Data Class 6. Change the Name from New Editable Data Class to License Key Details
7. Enter This Data Class lists license Key Details in the Description underneath the Data Class Name 8. Make sure that the Multiple Rows setting is checked
9. Press the Add New Attribute… Button 10. Enter the following Details:
a. Name: Key type
b. Description: Enter the Key Type (Activation, License…) c. Type: Static List (From the drop down menu)
i. Select Edit
ii. Press the Add Button
iii. Type Activation then press the Add button iv. Type License then press the Add Button
v. Type OEM then press the Add Button vi. Press OK
d. Press OK on the Data Class Attribute Configuration Window 11. Press the Add New Attribute… Button
12. Enter the following Details: a. Name: Key
b. Description: Enter the Vendor Key c. Type: String (From the drop down menu) d. Maximum Length: 30
e. Press OK on the Data Class Attribute Configuration Window
13. Press the Add New Attribute… Button 14. Enter the following Details:
a. Name: Computer
b. Description: Select a computer that applies
c. Type: Resource Foreign Key (From the drop down menu)
d. Resource Type: Computer (Should appear after selecting the above choice) e. Press OK on the Data Class Attribute Configuration Window
15. Press the Add New Attribute… Button 16. Enter the following Details:
a. Name: User
b. Description: Select a user that applies
c. Type: Resource Foreign Key (From the drop down menu)
d. Resource Type: User (Should appear after selecting the above choice) e. Press OK on the Data Class Attribute Configuration Window
17. Enter the following Details: a. Name: Key Expiry
b. Description: Enter the date that the key expires on c. Type: Date (From the drop down menu)
d. Press OK on the Data Class Attribute Configuration Window 18. Press Save Changes to create the data class
Note: It is a good practice to map out all of your custom data classes before entering them into the CMDB. It is particularly important to note that you should not enter the Save Changes button before you are completely finished adding the fields as it creates the SQL Table immediately after pressing it.
Stage Two: Adding the Data class to the License Resource Type
1. Switch to the NS71 VM
2. Open the Symantec Management Console 3. Select Settings | All Settings in the main menu
4. Expand Settings Notification Server Resource and Data Class Settings Resource Types Contract Types Software Licensing Software Licenses
5. Select the Software License item
6. On the right pane, Press the Add Data Classes button. The Item Selector interface opens 7. Browse to Contract Data Classes Software License Data Classes
8. Select the License Key Details data class
9. Press Save Changes. The Item Selector window closes
10. Press the Save Changes button at the bottom of the Software License resource type window.
Stage Three: Creating the Custom View
1. Switch to the NS71 VM
2. Open the Symantec Management Console
3. Select Home | Service and Asset Management | Software Licensing in the main menu 4. Select Software License in the right hand pane
5. Double Click on any one of the listed Software License items in the right pane 6. Choose Manage Views… in the Views: menu at the top right of the Window
7. The Change Edit Views Window appears
8. Choose Software Licenses (global) at the top list 9. Under the Data classes list, choose License Key Details
11. Press Save Changes. The Change Edit Views window closes 12. Press OK to close the Software License
13. In the Software license view, Scroll to the bottom of the window and you should now see the
License Key Details data class. Notice how this is empty.
Stage Four: Populating the “License Key Details” Data class
In this scenario, an administrator is tasked with the entry of Windows 7 Professional OEM Licenses received by a recent inventory of computers. They have been provided with a CSV file containing all of OEM License information.
1. Switch to the NS71 VM
2. Open the Symantec Management Console
3. Select Home | Service and Asset Management | Software Licensing in the main menu 4. Select the Software License item in the left pane
5. Type Microsoft Windows in the search bar on the right pane
6. Double Click on the Microsoft Windows 7 Professional software license in the list
7. Scroll to the bottom of the window and notice that the “License Key Details” area is empty 8. Keep this window open
9. Select Settings | All Settings in the main menu
10. Browse to Settings Notification Server Connector
11. Right Click on the Data Sources Folder and select New OLEDB Data Source 12. Rename the Data Source New OLEDB Data Source to Windows 7 Pro OEM List 13. Configure the following:
a. OLEDB data source type: MS Excel (*.xls, *.xlsx)
b. MS Excel File: C:\Lab Resources\Per Processor Lab\Windows7Pro_OEM_List.xls c. Worksheet Name: (Press the Refresh symbol then choose Windows8Pro_OEM_List$ ) d. Select Allow Import
e. Press the Test Data Source button 14. Press the Save Changes Button
15. Browse to Settings Notification Server Connector
16. Right Click on the Import/Export Rules Folder and select New Resources Import Export Rule 17. Rename the Rule to Windows 7 Pro OEM List Import
18. Configure the following:
a. Data Source: Windows 7 Pro OEM List b. Replication Direction: Import
c. Resource Type: Software License
d. Resource lookup Key: Resource GUID Guid: _Resource Guid e. Un-Check the “Create resources if doesn’t exist” box
f. Resource Name: (Leave Blank)
g. Scroll down to the License Key Details. Notice that the fields are filled in. This is a result of naming the columns in the Excel Spreadsheet to match the destination fields.
h. IMPORTANT: Change the Update Mode to Replace 19. Press the Save Changes Button (at the bottom of window) 20. Press the Run Now button at the bottom of the page
21. Select Home | Service and Asset Management | Software Licensing in the main menu 22. Select the Software License item in the left pane
24. Double Click on the Windows 7 Professional software license in the list
25. Scroll to the bottom of the window and you should now notice that the the “License Key
Details” area is filled with the imported records from the Data Connector import.
Other Options for populating this data class:
1. Populate using a Custom Inventory Report CMDB Rule
a. Create a custom inventory that queries the key from each of the computers
b. Create a report that displays all of the information in a report with the _ResourceGuid as the Software License with all of the fields present
c. Create a CMDB Rule that Populates the Software License with the License Key Details fields
2. Targeted Software Inventory Report CMDB Rule
a. Create a Targeted Software Inventory that targets the specific Software Product that indicates that the software is compliant (or installed) using detailed detection rules and file inventory
b. Create a report that displays just the _ResourceGuid as the Software License and the applicable Computer Names
c. Create a CMDB Rule that Populates the Software License with the applicable Computer Name fields and enters static information (values) for the remaining fields
Stage Five (Optional) : Viewing the “License Key Details” Data class in Custom
Reports
1. Switch to the NS71 VM
2. Open the Symantec Management Console 3. Select Reports | All Reports in the main menu
4. Right Click on the Vision 2012 Folder in the right pane and select Import 5. Browse to C:\Lab Resources\Per Processor Lab\
6. Choose the Software License Key Detailed Report.xml then press OK. The report should appear under the Vision 2012 Folder
7. Select the Software License Key Detailed Report and Press the EDIT button at the top right corner of the report
8. Review the Query to better understand the way that it is used to Join the Software License, User, Computer and License Key Details together. (See the next page for the Data Diagram)