Azure ● Sealed v1.0

AzureHybridBenefitMapper

Cross-references discovered Windows Server / SQL Server licences against

What it does

Snow Atlas exposes an "Azure Hybrid Benefit" view that tells customers which on-prem Windows Server / SQL Server licences with Software Assurance can be redeployed against Azure compute, and what they would save versus PAYG. This module provides the equivalent for ACQI. Logic: 1. Load Azure VM inventory from (in priority order): AzureVMs.csv | AzureResourceDiscovery_VirtualMachines.csv | AzureVirtualMachines.csv | AzureResources.csv | ComputerInventory.csv then cross-enrich the chosen base set from sibling inventories so thin CSVs gain VmId/image/network fields without inventing rows. 2. Load SQL inventory (SQLInventory.csv + Azure SQL PaaS CSVs) for SQL AHB eligibility / review surface. 3. Load LicenceEntitlements.csv (operator-supplied register) and filter to Windows Server + SQL Server entries that carry Software Assurance (column "SoftwareAssurance" = TRUE) -- only SA-covered licences are AHB-eligible. 4. Greedy-allocate licences to VMs / SQL instances by required core count using Microsoft AHB rules: - Windows Server Datacenter SA -> covers any Windows VM (per VM) - Windows Server Standard SA -> covers up to 2 VMs per licence - SQL Server Enterprise SA -> 1 core licence per Azure vCPU (4-core minimum) - SQL Server Standard SA -> 1 core licence per Azure vCPU (4-core minimum) 5. For every VM / SQL instance compute monthly + annual savings: Windows AHB savings ~= $0.046 / vCPU / hour (D-series indicative) SQL Standard AHB ~= $0.13 / vCPU / hour SQL Enterprise AHB ~= $0.50 / vCPU / hour (730h/month). Override via Configuration.AhbWindowsRatePerCoreHour / Configuration.AhbSqlStdRatePerCoreHour / Configuration.AhbSqlEntRatePerCoreHour. 6. Emit recommendations: ELIGIBLE_APPLY, ELIGIBLE_NO_LICENCE (gap -- buy/extend SA), NOT_ELIGIBLE (Linux / no Windows VM), SQL_PAAS_REVIEW (Azure SQL logical server without vCore meter), OVERPROVISIONED (more SA cores than vCPUs in scope). Output: AzureHybridBenefit_VmEligibility.csv per-VM eligibility + savings AzureHybridBenefit_SqlEligibility.csv per-SQL-host eligibility AzureHybridBenefit_Summary.csv portfolio totals + winner row

How the app exposes it

The module runs through the ACQI discovery orchestrator and writes its rows into a dedicated results view. From there, conflicts, dependencies, and readiness scores feed the deal-wide consolidation layer.

Route in app:
/discovered/azure-hybrid-benefit

Outputs

Each module emits a normalised CSV keyed by entity ID with readiness and risk scores, evidence-source counts, and last-seen timestamps. The exact column set varies by module — the app's results view shows the live schema.