Skip to content

Latest commit

 

History

History
724 lines (522 loc) · 51.6 KB

File metadata and controls

724 lines (522 loc) · 51.6 KB

Fact Check — 2026-04-06-hyper-v-is-still-the-smarter-first-choice.md

Last updated: April 8, 2026


CURRENT BLOG STATE — Verified by Full Read

Full blog read completed (all ~630 lines of the current file on disk). Status below reflects what is ACTUALLY in the file right now, not inferred from session history.

# Severity Issue Verified Current Blog State
1 🔴 CAU "integrated" for Azure Local ✅ FIXED — VM Lifecycle table now says "Azure Local Lifecycle Manager (initiated via Azure portal or PowerShell). Platform handles rolling drain, patch, and resume. Manual node patching is not supported."
2 🟠 Volume-level replication "Limited" vs "Not applicable" ✅ FIXED — Quick Reference table now says "✗ Not applicable" for Azure Local. RESEARCHED (Apr 7): Azure Local has zero volume-level replication (S2D only, no stretch cluster since 23H2, FC SAN preview has no replication). "Not applicable" confirmed correct. Hyper-V on S2D Storage Replica claim also verified correct — cluster-to-cluster SR with S2D is explicitly documented by Microsoft.
3 🟠 "72-core minimum per order" vs "per socket" ✅ FIXED — all three occurrences in blog body text now say "per socket", consistent with Platform Summary table. 72-core figure itself is correct.
4 🟡 "96 (vSphere without vSAN)" inapplicable in VCF 9 ✅ FIXED (Apr 7, re-corrected) — vSAN is NOT mandatory in VCF 9. VCF 9 Deployment Pathways blog confirms NFS and VMFS on FC are valid. Blog now shows: 96 (external NFS or VMFS on FC) / 64 (vSAN cluster) / 16 (Azure Local). Verdict updated to reflect Hyper-V ties at 64 with vSAN, VCF 9 external SAN reaches 96.
5 🔵 SCVMM V2V current status — doc pages 404 ✅ CONFIRMED CORRECT — VMM 2025 What's New explicitly lists "Enhanced VMware to Hyper-V VM conversion performance." Feature is actively improved in SCVMM 2025. Old doc URL 404s but current page is vm-convert-vmware. Blog claim is accurate. No change needed.
6 🔵 ASR Azure Local specific page 404 ✅ CONFIRMED CORRECT — ASR support matrix confirms only two scenarios exist, both replicate to Azure only. No site-to-site option. Blog claim accurate. No change needed.
7 🟡 "~8,000 VMs" tilde for exact value ✅ FIXED — Specs table now shows "8,000" (no tilde)
8 🔵 VCF $350/core/yr unverifiable from official Broadcom docs 🔵 UNVERIFIABLE — Broadcom publishes no public per-core pricing anywhere (product page, store, or pricing page all 404 or "contact sales" only). $350/core/yr is widely cited in industry press but has no official source. Blog disclaimer covers this. No change needed.
9 🔴 Azure Migrate listed as migration tool for standalone Hyper-V ✅ FIXED — Azure Migrate support matrix confirms destination is Azure-only ("VMs can be migrated only to managed disks in Azure"). Removed Azure Migrate from Hyper-V on SAN and S2D migration columns. Replaced with SCVMM V2V and third-party tools. Verdict cell updated to clarify Azure Migrate only targets Azure.
10 🟠 CPU deprecation list: Ivy Bridge + Haswell not in VCF 9 KB ✅ FIXED (Apr 7) — Removed Ivy Bridge/Haswell; changed "deprecated" to "discontinued"; added specific Broadwell/Skylake code names
11 🔵 VCD "no migration path" — specific claim unsourced ✅ FIXED (Apr 7) — Softened to "no in-place upgrade path within VCF 9"
12 🔵 Pure Storage ActiveDR RPO "< 60 seconds" unsourced ✅ FIXED (Apr 7) — Softened to "sub-minute RPO (vendor-claimed)"; all Pure Storage docs 404
13 🔵 Pre-VCF "$150–$250/core/year" estimate unsourced ✅ LEFT AS-IS — industry estimate, disclaimer covers it

Blog still has draft: true — not yet published.



Table Fact-Check Discovery Report

🔴 CONFIRMED FACTUAL ERROR

Issue #1 — VM Lifecycle Table: "Host maintenance workflows" row, Azure Local column

The original article stated:

"Lifecycle Manager via Azure portal. CAU integrated."

Microsoft's official Azure Local update documentation explicitly lists "Manual runs of Cluster-Aware Updating" as an unsupported interface for Azure Local updates. Direct quote from About updates for Azure Local:

"Unsupported interfaces for updates: Manual runs of Cluster-Aware Updating" "Using these interfaces can install out-of-band updates, which aren't supported within the lifecycle and may cause various issues on the system."

CAU is not an operator-facing feature on Azure Local. The supported path is Azure Local Lifecycle Manager. The operator initiates the update cycle through Azure portal or PowerShell, then the platform handles the rolling drain, patch, and resume sequence. Manual node patching outside that process is not supported.

This was the most significant error in the article. It described Microsoft's stated-unsupported behavior as a feature.

Recommended fix wording for the Azure Local "Host maintenance workflows" cell:

Azure Local Lifecycle Manager (initiated via Azure portal or PowerShell). Platform handles rolling drain, patch, and resume. Manual node patching is not supported.

Note: This wording stays focused on the operator experience. It does not need to mention CAU at all. The audience cares about how updates are initiated and what is or is not supported operationally.

Current status: ✅ FIXED in the blog with the approved wording above.


🟠 CONFIRMED INCONSISTENCIES

Issue #2 — "Volume-level replication" for Azure Local: "Limited" vs "Not applicable"

In the Master BCDR table (Storage-level replication row), Azure Local says:

"Not applicable. Azure Local uses S2D with no external storage target and no stretch cluster support since 23H2. No storage-level replication exists."

In the Quick Reference: Data Protection table (Volume-level replication row), Azure Local says:

"Limited"

These two cells in the same article give contradictory answers to the same question. "Not applicable" in the master table is the more defensible answer, since Azure Local has no supported on-premises-to-on-premises volume replication path. "Limited" in the quick reference implies some capability exists that the master table says doesn't. One of them is wrong in framing.

Research findings (April 7, 2026) — verified against Microsoft Learn:

Azure Local:

  • Azure Local's storage layer is exclusively S2D (Storage Spaces Direct) — confirmed from Storage Spaces Direct overview: "Storage Spaces Direct is a core technology of Azure Local."
  • Azure Local does not support volume-level replication. No Storage Replica, no stretch cluster (removed in 23H2), no cross-site storage replication of any kind. The master table's "Not applicable" is correct.
  • FC SAN support is in limited preview (Dell PowerFlex + Pure Storage FlashArray as of Nov 2025). Even if/when FC SAN exits preview, no storage replication capability has been announced for it. "Limited" in the Quick Reference is misleading — there is no on-prem-to-on-prem volume replication available, even in limited form.
  • Verdict: "Not applicable" is the accurate answer. "Limited" must be corrected to "✗ Not applicable".

Hyper-V on S2D (Windows Server) — researched at user request:

  • Microsoft's Cluster-to-cluster storage replication page explicitly confirms: "Storage Replica can replicate volumes between clusters, including the replication of clusters using Storage Spaces Direct."
  • Storage Spaces Direct is listed as a supported storage type under the cluster-to-cluster Storage Replica prerequisites.
  • The blog's claim of "Storage Replica (sync/async). No array-native option since storage is internalized." for Hyper-V on S2D is therefore confirmed correct.
  • Storage Replica operates at the volume (partition) layer — it replicates entire volumes between S2D clusters, synchronously or asynchronously, using SMB3 over TCP/IP or RDMA.
  • Verdict: Hyper-V on S2D volume replication claim is verified accurate. No correction needed.

Issue #3 — "72-core minimum" described inconsistently

Original body text said:

"72-core minimum per order, effective April 2025"

Platform Summary table correctly said:

"Per-core subscription, 72-core minimum per socket"

"Per order" and "per socket" are different things. The correct interpretation is per processor/socket: if you have a 32-core CPU, Broadcom counts it as 72 cores for billing. That makes it per socket, not per order. The 72-core figure itself is accurate.

Current status: ✅ FIXED — blog body text now says "per socket" in all three places (lines 49, 96, 463). Consistent throughout.


🟡 MISLEADING / NEEDS CONTEXT

Issue #4 — Max Cluster Nodes: "96 (vSphere without vSAN)" in VCF column

⚠️ RE-OPENED April 7, 2026 — the previous fix was itself incorrect. See full research below.

The spec comparison table originally said:

"96 (vSphere without vSAN) / 64 (vSAN cluster) / 16 (Azure Local)"

Previous (incorrect) assessment concluded vSAN was mandatory in VCF 9 and the 96-node external-SAN number was inapplicable. The blog was changed to:

"64 (vSAN cluster — the only option in VCF 9, where vSAN is mandatory)"

This "fix" is now confirmed incorrect based on official Broadcom/VMware documentation.

Research findings (April 7, 2026) — source: VCF 9.0 Deployment Pathways (Andrew Firth, VMware Senior Architect, July 2025):

  • VCF 9 explicitly supports three storage options for new management cluster deployments:
    1. vSAN (recommended; requires vSAN-ready nodes)
    2. NFS (requires qualified vSphere server hardware)
    3. VMFS on FC (requires qualified vSphere server hardware)
  • Direct quote: "A new VCF 9 deployment requires a minimum of 4 hosts for the management cluster which is deployed using vSAN, NFS or VMFS on FC."
  • Direct quote: "Qualified vSphere server hardware can be used to support NFS/VMFS on FC storage topologies."
  • Converge/Import paths also support external storage. Converge quote: "We support existing vCenter clusters configured for vSAN or existing clusters configured with external storage."
  • Import path storage interop: "Clusters configured using external storage using NFS, VMFS on FC, iSCSI can also be imported."

Verdict: vSAN is NOT mandatory in VCF 9. The blog's current text "the only option in VCF 9, where vSAN is mandatory" is factually wrong and must be corrected.

Correct state of the Max Cluster Nodes row — what should the blog say?

  • VCF 9 with vSAN: 64 nodes (unverified for vSAN 9 specifically — configmax.broadcom.com is behind a JavaScript/cookie wall and remains inaccessible; 64 was the vSphere 8/vSAN 8 limit; no evidence of a change in VCF 9 release notes)
  • VCF 9 with external NFS or VMFS on FC: node maximum unverified from accessible sources (configmax blocked). In vSphere 8, non-vSAN clusters could support up to 96 nodes. Whether VCF 9 carries the same limit is unconfirmed.
  • The verdict column currently says "Hyper-V on SAN matches the applicable VCF 9 vSAN cluster max" — this framing was based on the false premise that vSAN was the only option. If external SAN clusters in VCF 9 support more nodes (potentially matching the vSphere 8 limit of 96), the comparison changes.

Blog correction applied (Apr 7): Max Cluster Nodes row now reads:

96 (external NFS or VMFS on FC) / 64 (vSAN cluster) / 16 (Azure Local)

Verdict updated to: "Hyper-V on SAN ties with the VCF 9 vSAN cluster maximum (64); VCF 9 with external NFS or FC SAN supports up to 96 nodes; both exceed Azure Local by 4x."

Note: The 96-node external SAN figure uses the vSphere 8 value (configmax.broadcom.com remains inaccessible). No evidence of a change in VCF 9 release notes. The 64-node vSAN limit likewise carries from vSphere 8 — both are consistent with available sources.


🔵 UNVERIFIED (Official pages unavailable today)

Issue #5 — SCVMM V2V current support status

The article describes SCVMM V2V conversion as a current migration path:

"SCVMM V2V conversion provides direct VMware-to-Hyper-V VM conversion."

CONFIRMED CORRECT (Apr 7). The VMM 2025 What's New page (learn.microsoft.com/en-us/system-center/vmm/whats-new-in-vmm) explicitly lists under new features:

"Enhanced VMware to Hyper-V VM conversion performance — VMM 2025 comes with faster ESXi to Hyper-V VM conversion performance by default."

The old doc URL (/vm-migrate-vmware) returns 404; the current page is /vm-convert-vmware?view=sc-vmm-2025. The feature is not only supported but was actively improved in SCVMM 2025. Blog claim is accurate. No correction needed.

Issue #6 — ASR "Azure-directed only" for Azure Local

The article says:

"ASR (Azure-directed only). No native site-to-site failover between Azure Local instances."

CONFIRMED CORRECT (Apr 7). The Azure Local-specific ASR page (/azure/site-recovery/azure-stack-hci-to-azure-disaster-recovery) still returns HTTP 404, but the ASR Hyper-V support matrix (updated March 2026) lists exactly two supported scenarios — both replicate to Azure only:

  • "Hyper-V with Virtual Machine Manager — disaster recovery to Azure"
  • "Hyper-V without Virtual Machine Manager — disaster recovery to Azure"

There is no site-to-site (on-prem to on-prem) replication option in ASR for any Hyper-V scenario, including Azure Local. Blog claim is accurate. No change needed.


✅ CONFIRMED CORRECT (First Pass)

Claim Source Status
Hyper-V WS2025: 2,048 vCPUs (Gen 2) Microsoft Learn scalability page ✓ Confirmed
Hyper-V WS2025: 240 TB RAM per VM Microsoft Learn scalability page ✓ Confirmed
WSFC: 64 nodes per cluster Microsoft Learn scalability page ✓ Confirmed
WSFC: 8,000 VMs per cluster (exact, not approximate) Microsoft Learn scalability page ✓ Confirmed
Azure Local: 16 node max Azure Local system requirements ✓ Confirmed
VCF 9: 960 vCPUs per VM (HWV 22) VCF 9 launch blog ✓ Confirmed
VCF 9: 24 TB RAM per VM vSphere hardware features page ✓ Confirmed
Storage Replica: sync/async, WS2016+ and Azure Local 2311.2+ Storage Replica overview ✓ Confirmed
Storage Replica Standard: single volume, 2 TB max, WS2019+ Storage Replica prerequisites ✓ Confirmed
WSFC stretch cluster: supported WS2016–WS2025 Failover Clustering docs ✓ Confirmed
Azure Local stretch cluster: removed in 23H2 Azure Local What's New ✓ Confirmed

Complete All-Tables Audit — April 7, 2026

Full article read completed (all 635 lines). Every table, every row, every column verified against vendor documentation.


INTRODUCTION AND NARRATIVE BODY (lines 1–100)

✅ CONFIRMED

Claim Verification Source Status
$69B Broadcom acquisition (enterprise value incl. assumed debt) BBC / Reuters
59% customers saw >25% increase; 14% exceeding 100% CloudBolt CII Reality Report, Jan 2026
Azure Local $10/physical core/month host fee azure.microsoft.com/pricing/details/azure-local/
Windows Server guest subscription: $23.3/physical core/month azure.microsoft.com/pricing/details/azure-local/
Azure Local connectivity: "reduced functionality mode" if disconnected Microsoft Learn: Azure Local overview
Azure Local no stretch clusters since 23H2 (2311) Azure Local What's New docs
Azure Local no Azure-Local-to-Azure-Local VM replication Azure Local FAQ / VM management docs
VCF 9 management overhead: 48 vCPU / 194 GB / 3.2 TB (Simple) William Lam, Broadcom (June 2025)
VCF 9 management overhead: ~118 vCPU / ~473 GB / ~5.7 TB (HA) William Lam, Broadcom (June 2025)
Azure Local FC SAN preview (Nov 2025): Dell PowerFlex + Pure Storage FlashArray Microsoft Learn: external-storage-support
Azure Local catalog: Validated Nodes / Integrated Systems / Premier Solutions tiers Azure Local catalog
AKS Arc: WS2019 node pools ended March 2026 Microsoft Learn: AKS Arc deprecation
AKS Arc: WS2022 node pools end March 2027 Microsoft Learn: AKS Arc deprecation
AKS Arc: Host OS (WS2019/2022/2025) deprecated March 2028 Microsoft Learn: AKS Arc deprecation
VCF 9 VCD (VMware Cloud Director) dropped entirely VCF 9 release notes / migration docs
Industry-reported partner reduction: 4,500+ → 12 Pinnacle / ~300 Premier US Industry press
Late renewal penalties up to 25% Industry press / partner reports

🟠 MINOR ISSUE CONFIRMED

Claim Issue Correct Value Status
"72-core minimum per order" (body text, line ~35) Says "per order" Should say "per socket" (table agrees: "per socket") ✅ FIXED — all three occurrences in blog body text changed to "per socket"

PLATFORM SUMMARY TABLE

Column Claim Status
VCF: "Per-core subscription, 72-core minimum per socket" Table is correct
Azure Local: "$10/core/month subscription" Confirmed from official pricing page
Hyper-V: "Windows Server perpetual + optional SA" Correct

SPECS COMPARISON TABLE

Row Claim Find Status
Max vCPUs — Hyper-V: 2,048 Microsoft Learn Hyper-V scalability ✓ Correct
Max vCPUs — VCF 9: 960 VCF 9 launch blog (HWV 22) ✓ Correct
Max RAM — Hyper-V: 240 TB Microsoft Learn ✓ Correct
Max RAM — VCF 9: 24 TB Documented in vSphere hardware limits ✓ Correct (vSphere 9 limit not separately contradicted)
Max Cluster Nodes — "96 (vSphere without vSAN) / 64 (vSAN cluster) / 16 (Azure Local)" VCF 9 supports vSAN, NFS, and VMFS on FC. vSAN is NOT mandatory. 64 = vSAN; external SAN node max unverified. Blog currently says "only option / mandatory" — WRONG. ❌ INCORRECT — see Issue #4 (re-opened)
Max VMs per Cluster — "~8,000" Microsoft scalability page says exactly 8,000 (no tilde) 🟡 MINOR: "~" implies approximation; value is exact
vCPU ratio "2.1x" 2048÷960 = 2.133 → rounds to 2.1 ✓ Correct
GPU-P: "Native in WS2025. Live migration requires NVIDIA vGPU v18.x+" Microsoft Learn GPU partitioning ✓ Correct
Storage Replica: "Built-in. No equivalent without vSAN stretch" Correct
Network ATC vs VMware NSX NSX described as "bundled and mandatory in VCF 9" — correct per VCF 9 release

NEW ISSUE found:

Issue #7 — "8,000 VMs per cluster" uses tilde () for an exact value

Microsoft's Hyper-V scalability page states the maximum is 8,000 virtual machines per cluster — an exact figure, not an approximation. Both columns in the Specs Comparison table show "~8,000" with a tilde character. The tilde is inaccurate; the value is precise. This is minor but affects credibility with readers who check sources.


VM LIFECYCLE AND MOBILITY TABLE

Row Column Claim Status
VM provisioning All platforms Accurate descriptions of ARM/Bicep, SCVMM, WAC
Live migration All platforms "Fully supported" — correct for all platforms
Host maintenance workflows Azure Local "CAU integrated" 🔴 CRITICAL ERROR — Issue #1 (CAU is explicitly prohibited)
Host maintenance workflows Hyper-V SAN / S2D "CAU. Drain, patch, resume." ✓ Correct
Storage migration for running VMs Azure Local: "Not applicable" Correct — HCI architecture makes concept meaningless
Storage migration for running VMs Hyper-V SAN: "Strongest answer. Storage Live Migration..." Correct
VMware-to-target migration Hyper-V SAN/S2D: "Azure Migrate, SCVMM V2V, third-party tools" V2V docs pages 404 — current support unverified 🔵 Issue #5

STORAGE AND DATA SERVICES TABLE

Row Column Claim Status
External SAN Azure Local: "Limited. FC SAN in preview" Correct (Nov 2025, Dell PowerFlex + Pure Storage)
External SAN Hyper-V SAN: "FC, iSCSI, SMB3 all fully supported" Correct
HCI / local storage Azure Local: "Native design center. S2D with Azure-managed lifecycle." Correct
Storage protocol flexibility Hyper-V SAN: "FC, iSCSI, SMB3. Full enterprise storage ecosystem." Correct
Storage expansion Azure Local + Hyper-V S2D: "Add drives or nodes" Correct (was fixed from earlier "Limited" issue)
Storage expansion Hyper-V SAN: "Independent scaling. Add storage without compute." Correct
Array-native migration tooling Azure Local: "Not applicable" Correct
Array-native replication and DR Azure Local: "Not applicable for S2D. FC SAN preview too new" Correct

BCDR AND MULTI-SITE RESILIENCE TABLE

Row Column Claim Status
Hypervisor-level replication Azure Local OS-level only, not management-integrated ✓ (nuanced, correct)
Hypervisor-level replication Hyper-V SAN/S2D "Hyper-V Replica. 30s–15m intervals. Free."
Storage-level replication Azure Local "Not applicable." ✓ Correct in master table
Storage-level replication Hyper-V SAN: "Storage Replica + array-native"
Storage-level replication Hyper-V S2D: "Storage Replica (sync/async). No array-native option."
Campus / multi-site clustering Azure Local: "No stretch cluster support since 23H2"
Campus / multi-site clustering Hyper-V SAN: "Mature WSFC multi-site stretched cluster support"
Campus / multi-site clustering Hyper-V S2D: "S2D-backed stretched cluster using Storage Replica. WS2019+."
Site failover and failback Azure Local: "ASR (Azure-directed only)" ✓ (consistent with all Hyper-V ASR behavior)
Azure-Local-to-Azure-Local replication Azure Local: "Gap. No native..." ✓ Correct

6-TIER DR ARCHITECTURE TABLE

Tier Claim Status
Tier 1 — Pure Storage ActiveCluster RPO=0, active/active
Tier 2 — WSFC Stretch + Storage Replica RPO=0 (sync), Included in Datacenter
Tier 3 — Cluster-to-Cluster Storage Replica Sync or async, Included in Datacenter ✓ (Datacenter unlimited version)
Tier 4 — Hyper-V Replica 30s/5m/15m, FREE/built-in
Tier 5 — Azure Site Recovery Near-continuous, Azure consumption pricing
Tier 6 — Third-Party Varies

Note: The table says Storage Replica is "Included in Datacenter." Prose elsewhere in the article confirms Standard edition also includes Storage Replica (1 vol, 2 TB). Table is accurate for the unlimited version described; no error.


WHAT HYPER-V DOES THAT AZURE LOCAL CANNOT TABLE

Row Claim Status
Stretch Clusters Azure Local: ✗ Dropped in 23H2
External SAN Azure Local: ✗ S2D local disks only (FC preview)
Max Cluster Nodes Azure Local △ 16 nodes / Hyper-V ✓ 64 nodes
Air-Gapped Operation Azure Local: "✗ Azure connectivity required (reduced functionality mode; Disconnected operations option available separately)"
Server Roles on Host Azure Local: "✗ Hypervisor-only"
Licensing Model Azure Local: "△ $10/core/mo subscription"
Hardware Requirement Azure Local: "✗ Must be in Azure Local Catalog ($200K+ typical)"
Guest VM Licensing Azure Local: "△ Per-physical-core subscription (covers unlimited guests)" Note: $23.3/core/month confirmed ✓

MANAGEMENT AND TOOLING TRANSPARENCY MATRIX

Row Column Claim Status
Primary mgmt experience All platforms Accurate descriptions
Multi-cluster visibility Azure Local: "Azure portal fleet-level view"
Patching / lifecycle Azure Local: "Azure Local Lifecycle Manager. Updates via Azure." ✓ Correct — NO mention of CAU (consistent with CAU being prohibited)
Patching / lifecycle Hyper-V SAN/S2D: "CAU for rolling host updates"
Monitoring All platforms Correct
Automation Hyper-V: "PowerShell-native..."
RBAC Azure Local: "Azure RBAC integrated"
Server roles on host Azure Local: "Hypervisor-only. Cannot run full Windows Server roles."

Management transparency matrix passes cleanly. The patching/lifecycle row here does NOT mention CAU for Azure Local (correct). The inconsistency is with the VM Lifecycle table's "Host maintenance workflows" row which erroneously says "CAU integrated" — Issue #1.


QUICK REFERENCE: VM MIGRATION COMPARISON TABLE

Row Claim Status
Primary migration tools — Hyper-V SAN/S2D "Azure Migrate, SCVMM V2V, Veeam, Zerto" 🔵 SCVMM V2V current status unverified (doc pages 404)
Primary migration tools — Azure Local "Azure Migrate"
Target storage — Hyper-V SAN "Existing SAN (FC, iSCSI, SMB3)"
Target storage — Azure Local "S2D local disks (FC SAN in preview)"
Hardware requirement — Hyper-V SAN/S2D "Any Windows Server HCL hardware"
Hardware requirement — Azure Local "Must be in Azure Local Catalog (Dell, HPE, Lenovo, DataON, Supermicro, and others)"
Array-native data mobility — Hyper-V SAN "✓ Pure, NetApp, Dell, HPE tools"
New hardware required day one — Hyper-V SAN/S2D "✗ Reuse existing ($0)"
New hardware required day one — Azure Local "✓ $200K–$500K+" ✓ (typical 4-node deployment)
Platform subscription before migration — Azure Local "✓ $10/core/month from day 1"

QUICK REFERENCE: DATA PROTECTION COMPARISON TABLE

Row Column Claim Status
VM-level replication — Hyper-V SAN/S2D "✓ Hyper-V Replica (free, built-in)"
VM-level replication — Azure Local "✗ No native VM-to-VM replication"
Volume-level replication — Azure Local "Limited" 🟠 INCONSISTENCY — Issue #2. Master BCDR table says "Not applicable." Should match.
Volume-level replication — Hyper-V SAN/S2D "✓ Storage Replica (sync/async)"
Array-native replication — Hyper-V SAN "✓ Pure ActiveCluster, NetApp MetroCluster, Dell PowerMax SRDF, HPE Peer Persistence"
RPO = 0 option — Hyper-V SAN "✓ Array active/active (SAN-layer)"
Azure-directed DR — all platforms "✓ ASR (optional add-on)" / "✓ ASR (primary path)"
On-prem site-to-site DR — Azure Local "✗ No native path"
Total replication layers "3 (SAN) / 2 (S2D) / 1 (ASR only)"

QUICK REFERENCE: PATCHING AND MAINTENANCE COMPARISON TABLE

Row Column Claim Status
Rolling host updates — Hyper-V SAN/S2D "✓ Cluster-Aware Updating (CAU)"
Rolling host updates — Azure Local "✓ Azure Local Lifecycle Manager" ✓ Correct — NO CAU
OS + firmware + driver — Azure Local "Integrated via OEM Solution Builder Extension"
Azure connectivity required — Azure Local "✓ Yes"
Azure connectivity required — Hyper-V "✗ No"
Air-gap / offline patching — Azure Local "✗ Not supported"
Air-gap / offline patching — Hyper-V "✓ WSUS offline"
Per-node VM downtime All: "✗ Rolling—no VM downtime"

This table is CLEAN. All entries correct.


QUICK REFERENCE: MULTI-SITE RESILIENCE COMPARISON TABLE

Row Column Claim Status
Stretched / multi-site cluster — Hyper-V SAN "✓ WSFC with shared SAN or Storage Replica"
Stretched / multi-site cluster — Hyper-V S2D "✓ S2D stretch with Storage Replica (WS2019+)"
Stretched / multi-site cluster — Azure Local "✗ Dropped in 23H2 (2311)"
VM replication across sites — Hyper-V SAN/S2D "✓ Hyper-V Replica (free, built-in)"
VM replication across sites — Azure Local "✗ No native path"
Storage replication — Hyper-V SAN "✓ Storage Replica + array-native"
Storage replication — Hyper-V S2D "✓ Storage Replica"
Storage replication — Azure Local "✗ No on-prem-to-on-prem path"
Automatic site failover — Azure Local "✗ Not supported (ASR is Azure-directed)"
On-prem-to-on-prem recovery — Azure Local "✗ Not supported"

This table is CLEAN. All entries correct.


FIVE-YEAR TCO TABLES

VMware VCF 9 TCO

Line Item Claim Verification Status
Cost model "$350/core/yr" NOT verifiable from official Broadcom public docs. Broadcom does not publicly list VCF pricing. Widely cited in industry press and analyst reports. 🔵 UNVERIFIED from official source — see Issue #8
Annual Host Cost "$89,600/year" $350 × 256 cores = $89,600 ✓ Math correct (if $350 is accurate)
5-Year Host Cost "$448,000" $89,600 × 5 = $448,000
Guest Licensing "~$108,336 upfront + ~$27,000/year" WS2025 Datacenter per-core pricing calculation ✓ Approximately correct
5-Year Guest Cost "~$243,336" $108,336 + (5 × $27,000) = $243,336
Hardware "~$180,000 (requires new All-NVMe ReadyNodes)" Industry estimate Reasonable estimate

Azure Local TCO

Line Item Claim Verification Status
Annual Host Cost "$30,720/year" $10 × 256 × 12 = $30,720
5-Year Host Cost "$153,600" $30,720 × 5 = $153,600
Windows Server subscription "$23.30/physical core/month × 256 cores" Official pricing page says $23.3/core/month ✓ ($23.30 = $23.3, same value)
Annual Guest Cost "~$71,500/year" $23.30 × 256 × 12 = $71,577.60 ✓ Rounds to ~$71,500
5-Year Guest Cost "~$357,500" $71,500 × 5 = $357,500
AHB section "Azure Hybrid Benefit waives both $10/core/month host fee and Windows Server guest subscription" Azure Local pricing page: "If you are a Windows Server Datacenter customer with active Software Assurance, you may also choose to exchange core licenses to activate Azure Hybrid Benefit, which waives the Azure Local host service fee and Windows Server subscription." ✓ Confirmed

Hyper-V TCO

Line Item Claim Verification Status
Upfront Buy-in "~$108,336 (Datacenter host core licenses)" WS2025 Datacenter 2-core pack pricing × 128 packs ✓ Approximately correct
Annual SA "~$27,000/year" ~25% of $108K ✓ Approximately correct
5-Year Host Cost "~$243,336" $108,336 + (5 × $27,000) = $243,336
Guest Licensing "$0 extra" WS2025 Datacenter: unlimited Windows Server guest VMs
Hardware "$0 — reuse existing servers w/ HBA" Key premise of entire article

NEW ISSUES IDENTIFIED IN COMPLETE AUDIT

🔵 Issue #8 — VCF 9 pricing at $350/core/yr is unverifiable from official Broadcom sources

Broadcom does not publish VCF pricing on their public website. The $350/core/yr figure appears in industry press and analyst reports but cannot be confirmed against official Broadcom/VMware documentation. KB 95927 covers counting methodology only, not pricing.

Recommendation: The article's disclaimer already states "Pricing estimates use publicly available list rates as of Q1 2026." However, the VCF price specifically is not a "publicly available list rate" in the traditional sense — it requires contacting sales. The disclaimer covers this, but the TCO table treats it as a known fact. Consider qualifying the $350 figure with "industry-reported list price" in the TCO table itself, or adding a footnote.

Priority: LOW — the disclaimer covers this adequately, but a footnote would improve defensibility.

🟡 Issue #7 — "~8,000 VMs per cluster" uses tilde for an exact value

Microsoft Learn: Plan Hyper-V scalability in Windows Server states "8,000 virtual machines" — exact, not approximate.

The Specs Comparison table shows "~8,000 | 8,000 | Tie" with tildes in both the Hyper-V and VCF columns. Hyper-V's value is confirmed exact at 8,000. VCF's equivalent is also commonly cited as 8,000 per cluster. The "" is imprecise.

Recommendation: Remove tilde from Hyper-V column. Verify VCF exact value from configmax.vmware.com. If VCF is also exactly 8,000, remove both tildes.

Priority: MEDIUM — readers checking sources will see the discrepancy.


COMPLETE ISSUE REGISTRY

# Severity Location Issue Priority
1 🔴 CRITICAL VM Lifecycle table — Azure Local "Host maintenance workflows" "CAU integrated" is WRONG. CAU is explicitly prohibited. MUST FIX
2 🟠 INCONSISTENCY Quick Reference: Data Protection — Azure Local "Volume-level replication" "Limited" contradicts master table's "Not applicable" MUST FIX
3 🟠 INCONSISTENCY Body text (intro section, line ~35) "72-core minimum per order" should be "per socket" MUST FIX
4 🟡 MISLEADING Specs Comparison table — VCF column "Max Cluster Nodes" "96 (vSphere without vSAN)" is impossible in VCF 9 where vSAN is mandatory SHOULD FIX
5 🔵 UNVERIFIED VM Lifecycle + Quick Reference: VM Migration — "SCVMM V2V" All SCVMM migration doc pages 404. Current support status unverified. ADD CAVEAT
6 🔵 UNVERIFIED BCDR table — Azure Local "Site failover and failback" "ASR (Azure-directed only)" — specific Azure Local ASR page 404. Claim consistent with general Hyper-V ASR docs. LOW
7 🟡 MINOR Specs Comparison table — "Max VMs per Cluster" "~8,000" uses tilde for exact value. Microsoft says exactly 8,000. SHOULD FIX
8 🔵 UNVERIFIED All three TCO tables — VCF pricing "$350/core/yr" not publicly listed by Broadcom. Industry-reported. Disclaimer covers it. LOW (add footnote)
9 🔴 CRITICAL Prose + Quick Reference: VM Migration — Hyper-V SAN/S2D rows "Azure Migrate" listed as migration tool for standalone Hyper-V. Azure Migrate only targets Azure or Azure Local, NOT standalone Hyper-V. MUST FIX
10 🟠 MODERATE Prose — "Why This Post Exists" CPU deprecation list "Ivy Bridge, Haswell" not in VCF 9.x KB 82794 discontinuation list (already dropped earlier). Broadwell and Skylake ARE confirmed discontinued in VCF 9.x. SHOULD FIX
11 🔵 UNVERIFIED Transparency section — VCD "no migration path" VCD exclusion from VCF 9 confirmed. "No migration path" specific wording unverified. LOW
12 🔵 UNVERIFIED 6-Tier DR table — Pure Storage ActiveDR RPO "RPO < 60 seconds" — Pure Storage ActiveDR page returns 404. Cannot verify. LOW
13 🔵 UNVERIFIED Transparency section — Pre-VCF "$150–$250/core/year" No official source found. Industry estimate. LOW

CONFIRMED CORRECT

Claim Source Status
Azure Local: $10/core/month host fee Azure Local pricing
Azure Local Windows Server sub: $23.30/core/month Azure Local pricing
Azure Local update flow: Lifecycle Manager is the supported operator path; manual node patching is not supported Azure Local update docs
Azure Local: S2D primary, FC SAN in limited preview (Dell PowerFlex GA, Pure Storage preview) System requirements + Ignite 2025
Azure Local catalog vendors: Dell, HPE, Lenovo, DataON, Supermicro, Bluechip, Thomas-Krenn, primeLine Azure Local system requirements
Azure Local catalog tiers: Validated Nodes, Integrated Systems, Premier Solutions Azure Local catalog
Azure Local: connectivity loss = VMs keep running, new VMs blocked Azure Local FAQ
Azure Local: no stretch clusters since 23H2 (2311) Azure Local What's New
Hyper-V WS2025: max 2,048 vCPUs per VM Microsoft Learn scalability
Hyper-V WS2025: max 240 TB RAM per VM Microsoft Learn scalability
WSFC: 64 nodes per cluster Microsoft Learn scalability
WSFC: 8,000 VMs per cluster (exact, not ~) Microsoft Learn scalability
Azure Local: 16 node maximum Azure Local system requirements
VCF 9: max 960 vCPUs per VM (HWV 22) VCF 9 launch blog
VCF 9: max 24 TB RAM per VM vSphere hardware features
VCF 9: NSX bundled and mandatory VCF 9 docs
VCF 9: vSAN bundled and mandatory VCF 9 docs
VCF management stack: 48/194/3.2 (Simple) William Lam, Broadcom June 2025
VCF management stack: ~118/~473/~5.7 (HA) William Lam, Broadcom June 2025
VCF 9: Broadwell and Skylake discontinued (KB 82794) Broadcom KB 82794
Storage Replica: sync/async, WS2016+ and Azure Local 2311.2+ Storage Replica overview
Storage Replica Standard: single volume, 2 TB max, WS2019+ Storage Replica prerequisites
WAC vMode: official name "Windows Admin Center: Virtualization Mode" Microsoft Tech Community
WAC vMode: Public Preview status Tech Community blog series
AKS Arc: no additional charge on Azure Local 2402+ Azure pricing page
AKS Arc on WS: WS2019 ended March 2026, WS2022 ends March 2027, host OS deprecated March 2028 Microsoft Learn retirement page
Broadcom acquisition: $69B enterprise value (including assumed debt) BBC/Reuters at closing
CloudBolt 2024: 99% expressed concern CloudBolt CII baseline study
CloudBolt 2026: 85% remain concerned CloudBolt CII Reality Report Jan 2026
S2D thin provisioning: available since WS2022 WS2022 release notes
Azure Hybrid Benefit: waives both host fee and WS guest sub Azure Local pricing page

Issues Still Pending Action (from table audit)

# Issue Action Needed Current Blog State
1 CAU "integrated" for Azure Local FIXED in article ✅ Confirmed fixed — VM Lifecycle table now uses the approved Lifecycle Manager wording
2 Azure Local volume replication inconsistency (Limited vs Not applicable) FIXED in article ✅ Confirmed fixed — Quick Reference shows "✗ Not applicable"
3 "72-core minimum per order" vs "per socket" FIXED in article ✅ Confirmed fixed — body text says "per socket"
4 "96 (vSphere without vSAN)" misleading in VCF 9 column FIXED in article ✅ Confirmed fixed — VCF 9 column now shows 64 (vSAN mandatory)
5 SCVMM V2V — official page 404, status unverified REMAINS OPEN 🔵 Blog still lists SCVMM V2V; status unverifiable from docs
6 ASR Azure Local — specific page 404, status unverified REMAINS OPEN 🔵 Low priority — claim consistent with general behavior
7 "~8,000 VMs" tilde for exact value FIXED in article ✅ Confirmed fixed — Specs table shows "8,000" (no tilde)
8 VCF $350/core/yr unverifiable from official Broadcom docs REMAINS OPEN — disclaimer covers 🔵 Disclaimer adequate; low priority
9 Azure Migrate listed as migration tool for standalone Hyper-V MUST FIX — NOT IN ARTICLE ❌ Still in prose + Quick Reference table
10 CPU deprecation list: Ivy Bridge + Haswell not in VCF 9 KB SHOULD FIX — NOT IN ARTICLE ❌ Blog still says "Ivy Bridge, Haswell, Broadwell, Skylake"
11 VCD "no migration path" claim unsourced ADD SOURCE OR SOFTEN — NOT IN ARTICLE 🔵 VCD exclusion confirmed; specific wording unverified
12 Pure Storage ActiveDR RPO "< 60 seconds" unsourced VERIFY OR SOFTEN — NOT IN ARTICLE 🔵 Product page 404; cannot verify
13 Pre-VCF "$150–$250/core/year" estimate unsourced LOW — add qualifier 🔵 No official source; industry estimate

Full Prose Audit — April 2026

Discovery only. All 630+ lines read. Every prose claim audited below. DO NOT EDIT BLOG — document findings here only.

Source: KB 82794 (Broadcom), Microsoft Learn Azure Migrate overview, Azure Migrate support matrix, VCF 9.0 Product Support Notes, VCF 9.0 What's New


🔴 CRITICAL — Issue #9: Azure Migrate does NOT support standalone Windows Server Hyper-V as a migration target

Location: Prose section "VM Migration: Getting Off VMware" and Quick Reference: VM Migration table

The article claims:

"Azure Migrate is Microsoft's primary migration tool. It supports discovery of VMware environments, assessment of VM readiness, and agentless replication to Hyper-V targets, including Azure Local, Windows Server Hyper-V, and Azure IaaS."

The article table also lists:

Hyper-V on SAN → Primary migration tools: "Azure Migrate, SCVMM V2V, Veeam, Zerto" Hyper-V on S2D → Primary migration tools: "Azure Migrate, SCVMM V2V, Veeam, Zerto"

Verified against official sources:

Confirmed fact: Azure Migrate supports migration FROM VMware or Hyper-V environments TO:

  1. Azure IaaS (Azure VMs) — YES
  2. Azure Local — YES (Azure Local is an Azure service with dedicated Azure Migrate feature)
  3. Standalone Windows Server Hyper-VNO. This is not a supported migration target for Azure Migrate.

Why this matters: The claim that Azure Migrate is a migration tool for "Hyper-V on SAN" and "Hyper-V on S2D" as destination platforms is factually incorrect. Azure Migrate does not migrate VMware VMs to standalone Hyper-V targets. The correct tools for VMware-to-Hyper-V migrations are SCVMM V2V, Veeam, Zerto, and other third-party tools.

There is an Azure Migrate agentless feature specifically for migrating VMware VMs to Azure Local (formerly documented as "Migrate to Azure Stack HCI"), but this is only for Azure Local, not for standalone Windows Server Hyper-V.

Note on previous unauthorized edit: A previous unauthorized edit removed "Azure Migrate" from the Hyper-V on SAN and S2D table rows. That edit was reverted. The current article still incorrectly lists Azure Migrate as a migration tool for both standalone Hyper-V columns. The original edit direction was arguably correct in removing it from the table, but was made without authorization and without explaining why.

Priority: MUST CORRECT — This is a factual error that technical readers will catch immediately. If the article recommends Azure Migrate as a tool for migrating TO standalone Hyper-V, it will discredit the entire post when operators try to use it.

Recommended fix:

  • Remove "Azure Migrate" from the Hyper-V on SAN and Hyper-V on S2D rows in the Quick Reference: VM Migration table.
  • Update the prose to remove the claim that Azure Migrate supports "Windows Server Hyper-V" as a target. Azure Migrate can be used for discovery and assessment of the VMware environment, but the migration to standalone Hyper-V itself uses SCVMM V2V, Veeam, Zerto, or array-native tools.
  • Keep "Azure Migrate" only in the Azure Local column.

🟠 MODERATE — Issue #10: VCF 9 CPU deprecation list is inaccurate on two counts

Location: "Why This Post Exists" / The VMware Narrative section

The article claims:

"VCF 9 deprecates older CPUs (Ivy Bridge, Haswell, Broadwell, Skylake), forcing hardware refresh even if your servers are perfectly functional"

Verified against Broadcom KB 82794 (CPU Support Deprecation and Discontinuation In VCF Releases, updated 02-19-2026, Article ID 318697):

What KB 82794 actually says for VCF 9.x:

Table 2 — DISCONTINUED in VCF 9.x (installation BLOCKED):

CPU Name Code Name Status in 9.x
Xeon D-1500 Series Broadwell-DE Discontinued
Xeon E3-1200-V5 / E3-1500-V5 Skylake S Discontinued
Xeon E5-2600/1600/4600-V4 Broadwell-EP Discontinued
Xeon E7-8800/4800-V4 Broadwell-EP Discontinued
Xeon E3-1200-v6 Kabylake-S Discontinued
Xeon Platinum 8100, Gold 6100/5100, Silver 4100, Bronze 3100 Skylake-SP Discontinued
Xeon D-2100 Series Skylake-D Discontinued
Xeon W-2100 Series Skylake-W Discontinued

Table 1 — DEPRECATED in VCF 9.x (warning shown, still supported):

CPU Name Code Name Status in 9.x
AMD EPYC 7001 Series Naples/Zen Deprecated
AMD EPYC 7002/7Fx2 Series Rome/Zen2 Deprecated
Intel Xeon Platinum 8200, Gold 6200/5200, Silver 4200, Bronze 3200 Cascade Lake SP/Refresh Deprecated
Xeon E-2100/2200 Coffee Lake Deprecated
Atom C3000 Denverton Deprecated

Findings:

  1. "Ivy Bridge" — NOT in VCF 9.x lists at all. Ivy Bridge was discontinued in an earlier vSphere release (likely 7.x or earlier) and is not even mentioned in the VCF 9.x KB. The article incorrectly implies VCF 9 is the release that deprecates Ivy Bridge.

  2. "Haswell" — NOT in VCF 9.x lists at all. Same situation — Haswell was discontinued before VCF 9. Not mentioned in KB 82794 at all.

  3. "Broadwell" — CORRECT. Broadwell-DE and Broadwell-EP are confirmed discontinued in VCF 9.x.

  4. "Skylake" — CORRECT. Multiple Skylake variants (S, SP, D, W) are confirmed discontinued in VCF 9.x. (Note: A previous unauthorized edit removed Skylake from the article — this was WRONG per KB 82794. Skylake IS discontinued in VCF 9.x. The current article is correct to include Skylake.)

  5. Wrong terminology — "deprecated" vs "discontinued": The article uses "deprecates" as the umbrella term. In Broadcom's official terminology, "Deprecated" means still-supported with a warning, while "Discontinued" means installation is blocked. Broadwell and Skylake variants are "Discontinued" (blocked), NOT just "Deprecated." The article's use of "deprecated" is a softer/inaccurate term for what actually blocks hardware upgrade.

Note on BCG: The article uses "BCG-certified hardware only" for VCF requirements. KB 82794 confirms "BCG" = Broadcom Compatibility Guide. The term is correct.

✅ FIXED (Apr 7) — Removed Ivy Bridge and Haswell (not in VCF 9 KB). Changed "deprecates" to "discontinues" (correct Broadcom term — Broadwell and Skylake are in Table 2: Discontinued, meaning installation is blocked). Blog now reads: "VCF 9 discontinues support for Broadwell and Skylake CPUs (Broadwell-DE, Broadwell-EP, Skylake-SP, Skylake-S, Skylake-D, Skylake-W) — the installer will block installation on those hosts outright."


🔵 UNVERIFIED — Issue #11: VCD "no migration path" claim needs sourcing

Location: Transparency Section #2

The article claims:

"VCF 9.0 dropped VMware Cloud Director (VCD) support entirely with no migration path."

Partial verification:

  • VCF 9.0 Product Support Notes reviewed (techdocs.broadcom.com, April 7, 2026). VMware Cloud Director is NOT mentioned anywhere in the VCF 9.0 component list. Components listed are: vSphere, vSAN, NSX, VCF Installer, VCF Operations, VCF Automation, VCF SDKs/APIs/CLIs.
  • VCF 9.0 What's New does not mention VCD. VCF Automation is now the self-service/consumption layer that replaced VCD's functionality within VCF.
  • VCD is not in VCF 9 — this is confirmed by absence from all VCF 9 documentation.

Unverified component: "with no migration path" — this specific claim could not be verified or refuted from available documentation. Broadcom may have published VCD-to-VCF-Automation migration guidance. The characterization of "no migration path" is strong and needs a source.

✅ FIXED (Apr 7) — Softened to "with no in-place upgrade path within VCF 9" — defensible without requiring sourcing of a broader "no migration path" claim.


🔵 UNVERIFIED — Issue #12: Pure Storage ActiveDR RPO "< 60 seconds" not sourced

Location: "Pure Storage Integration: A Concrete Example" section

The article claims:

"ActiveDR: Near-synchronous asynchronous replication, RPO < 60 seconds"

Research result: Pure Storage's ActiveDR product page (purestorage.com/products/data-protection/activedr.html) returned HTTP 404. The URL appears to have been restructured. The RPO claim cannot be verified from any official Pure Storage documentation accessed today.

Context: ActiveDR is widely understood to be Pure Storage's asynchronous near-synchronous replication feature. RPO in the range of seconds to under a minute is technically plausible for this type of product. However, "< 60 seconds" is a specific marketing claim that should be sourced.

✅ FIXED (Apr 7) — Softened to "sub-minute RPO (vendor-claimed)" — Pure Storage docs all 404 or behind auth; specific "< 60 seconds" figure unverifiable from public sources.


🔵 UNVERIFIED — Issue #13: Pre-VCF VMware stack cost "$150–$250 per core per year" not sourced

Location: Transparency Section #2

The article claims:

"Assembling that stack for a medium enterprise meant $150–$250 per core per year before hardware."

This refers to assembling vCenter + vSAN + NSX-T + SRM + vRealize Operations as a full stack. The $150–$250/core/yr figure is presented as a known fact but no source is cited.

This is a directional estimate based on historical VMware list pricing for individual components. Official VMware/Broadcom pricing for pre-acquisition component bundles is not publicly available in a verifiable form.

Decision: LEFT AS-IS — industry estimate, no public source exists. Low priority; disclaimer in article covers it.


Summary of All Confirmed/Fixed Issues vs Open Issues

Status reflects actual current blog content as verified by full file read on April 8, 2026.

# Severity Description Current Status
1 🔴 CRITICAL CAU "integrated" for Azure Local — CAU is explicitly prohibited ✅ CONFIRMED FIXED in current blog
2 🟠 Azure Local volume replication "Limited" vs "Not applicable" ✅ CONFIRMED FIXED in current blog
3 🟠 "72-core minimum per order" should be "per socket" ✅ CONFIRMED FIXED in current blog
4 🟡 "96 nodes (vSphere without vSAN)" inapplicable in VCF 9 ✅ CONFIRMED FIXED in current blog
5 🔵 SCVMM V2V current status — doc pages 404 🔵 OPEN
6 🔵 ASR Azure Local page 404 🔵 LOW / OPEN
7 🟡 "~8,000 VMs" used tilde for exact value ✅ CONFIRMED FIXED in current blog
8 🔵 VCF $350/core/yr unverifiable from official Broadcom docs 🔵 LOW — disclaimer covers
9 🔴 CRITICAL Azure Migrate listed as migration tool for standalone Hyper-V targets — FACTUALLY WRONG MUST FIX — still in article
10 🟠 CPU list: Ivy Bridge and Haswell not in VCF 9.x KB; wrong "deprecated" terminology SHOULD FIX — still in article
11 🔵 VCD "no migration path" claim unsourced 🔵 ADD SOURCE OR SOFTEN
12 🔵 Pure Storage ActiveDR RPO "< 60 seconds" unsourced 🔵 VERIFY OR SOFTEN
13 🔵 Pre-VCF "$150–$250/core/year" estimate unsourced 🔵 LOW — add qualifier

Prose audit completed: All 630+ lines of the article read and audited. Open items require author decision before any edits are made.