User Cost Attribution Overview
Nerdio Manager allows you to capture and report on per individual user costs based on the allocation of the total cost of your AVD deployment (compute, storage, network, PaaS, SaaS, etc.) to individuals based on the duration of their usage of AVD desktops during the selected time frame. The report can be shown in Nerdio Manager and exported to CSV or consumed in Power BI. When Power BI is used, you can add your own data sources. If you have a data source that links the user for a cost center, for example, you can report on AVD costs per cost center. The cost attribution feature enables you for show-back and charge back operations.
Note: Microsoft will soon be deprecating the Azure consumption details API. Nerdio User Cost Attribution will exclusively make use of the LAW heartbeat data in future. For more information on the API deprecation, refer to Microsoft Cost Management automation FAQ - Microsoft Cost Management | Microsoft Learn.
Terminology
Cost Type Definitions
Personal VM Costs
All costs of a personal VM regardless of sessions
VM assigned to one specific user
Allocated Session Costs
Session cost that can be allocated to users
Per user session cost is based on:
Minutes consumed per user
Cost of actual AVD VM (SKU)
Unallocated Session Costs
Cost that cannot be allocated to users
Unallocated session cost is based on:
AVD VM minutes with no sessions
Calculated on each VM individually
Shared Costs
Shared costs consist of:
Storage
Network
SaaS subscriptions such as Nerdio Manager
Other
VMs (such us infrastructure VMs and VMs with no sessions)
Report Type Definitions
Uniform: This allocates an equal amount of shared costs to each active user.
Proportional: This allocates shared costs based on the relative duration of each user's AVD usage.
Unallocated: This does not allocate shared costs to individual users and only shows users' costs that result directly from AVD sessions. In addition, this lists the shared cost including the resource information from Azure Cost Management.
Prerequisites
The Nerdio User Cost Attribution feature is only available in the Nerdio Manager Premium edition
The Nerdio User Cost Attribution feature may only be enabled for subscriptions that support Azure Cost Management
You must have Tenant-Level roles Global Administrator, Cloud Application Administrator, or Application Administrator and the subscription-level roles Owner or User Access Administrator in order to enable this feature.
This feature is not supported when Nerdio Manager was installed using the Split Identity method. See Advanced Installation: Split Identity for details.
Permissions
The following permissions are required to enable User Cost Attribution.
Subscriptions to User Cost Attribution Service Principal: The following subscription-level permissions are required between the User Cost Attribution service principal and all in-scope subscriptions.
Cost Management Reader
Desktop Virtualization Reader
Monitoring Reader
Log Analytics Workspace to CCL Service Principal: The following resource-level permissions are required between the User Cost Attribution service principal and the Nerdio Log Analytics Workspace(s).
Reader
Storage Account to CCL Service Principal: The following resource-level permissions are required between the User Cost Attribution service principal and the User Cost Attribution storage account.
Storage Blob Data Contributor
Compliance
All data is contained within your Azure tenant/subscription(s).
Troubleshooting and Training
See the knowledge base documentation.
Performance
Performance of the User Cost Attribution application refers to the time taken to build and then load a report for a specific configuration. Larger environments generally take longer to build. Key indicators of performance and build times are:
Number of sessions
Number of users
Number of tagged resources
SKU of the app service
As of version Nerdio Manager v5.5 and later, the application has been tested and confirmed to be able to build reports for environments of:
300,000 sessions
6,000 users
4,600 resources
Environments larger than this have not been tested, and significantly larger environments where sessions approach 1,000,000 and/or resources exceed 10,000, are noticeably more complex to distribute costs for and would need to be tested to confirm build times.
Prior to Nerdio Manager v5.4 and earlier, reports with ~300,000 sessions would fail to build on B1 SKU, and potentially run into timeout issues on SKUs smaller than a P3V3.
Please refer to the benchmarks table below for estimations on performance between two differently sized environments on different App Service SKUs.
Benchmarks
The following table provides benchmarks for estimated SKU build times based on environment parameters.
Version | Users | Sessions | B1 | B3 | P3V3 |
---|---|---|---|---|---|
Nerdio Manager v5.5 and later | 3,000 | 100,000 | 5 min | 3 min | 1 min |
| 6,000 | 300,000 | 45 min | 35 min | 10 min |
Nerdio Manager v5.4 | 3,000 | 100,000 | < 1 hr | < 45 min | < 15 min |
| 6,000 | 300,000 | 3 hr 15 min | 2 hr 45 min | 135 min |
Nerdio Manager v5.3 and earlier | < 5,000 | < 100,000 | < 3 hr | < 2 hr | < 1 hr |
| 6,000 + | 300,000 + | Not Supported | Not Supported | Not Supported |
Notes:
Builds for large environments in Nerdio Manager v5.5 and later, scale in length depending on how infrequently builds are made. Because of how OEM accumulates usage data each time a build occurs, users who build regularly from the start of the month have consistently lower build times than users who build infrequently and start from the end of the month.
Some builds that took longer than an hour were failing due to timeout issues in versions prior to Nerdio Manager v5.4 and earlier.
Comments (0 comments)