<mxfile host="app.diagrams.net" modified="2026-04-03T00:00:00.000Z" agent="GitHub Copilot" version="24.0.0" type="device">
  <diagram id="hycu-arch-page" name="HYCU Scenario Architecture">
    <mxGraphModel dx="1600" dy="900" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1600" pageHeight="900" math="0" shadow="0">
      <root>
        <mxCell id="0"/>
        <mxCell id="1" parent="0"/>
        <mxCell id="title" value="&lt;b&gt;HYCU Two-Hop Migration Architecture&lt;/b&gt;" style="text;html=1;fontSize=24;fontFamily=Arial;align=center;verticalAlign=middle;" parent="1" vertex="1"><mxGeometry x="420" y="20" width="760" height="40" as="geometry"/></mxCell>
        <mxCell id="subtitle" value="HYCU protects Nutanix workloads to a backup target, restores them to Hyper-V as VHDX, and Azure Migrate completes the move to Azure Local" style="text;html=1;fontSize=13;fontFamily=Arial;align=center;fontColor=#555555;" parent="1" vertex="1"><mxGeometry x="220" y="62" width="1160" height="24" as="geometry"/></mxCell>

        <mxCell id="zone-src" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f8fafc;strokeColor=#64748b;dashed=1;strokeWidth=2;arcSize=8;" parent="1" vertex="1"><mxGeometry x="40" y="110" width="340" height="640" as="geometry"/></mxCell>
        <mxCell id="zone-src-label" value="&lt;b&gt;SOURCE ESTATE&lt;/b&gt;" style="text;html=1;fontSize=14;fontFamily=Arial;align=center;fontColor=#334155;" parent="1" vertex="1"><mxGeometry x="105" y="122" width="210" height="28" as="geometry"/></mxCell>
        <mxCell id="nutanix" value="&lt;b&gt;Nutanix Cluster&lt;/b&gt;&lt;br&gt;AHV or ESXi-on-Nutanix&lt;br&gt;Source workload inventory" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#dbeafe;strokeColor=#2563eb;strokeWidth=2;fontSize=12;" parent="1" vertex="1"><mxGeometry x="90" y="180" width="240" height="100" as="geometry"/></mxCell>
        <mxCell id="hycu-controller" value="&lt;b&gt;HYCU Controller VM&lt;/b&gt;&lt;br&gt;Runs on Nutanix&lt;br&gt;Uses native snapshot APIs" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#dcfce7;strokeColor=#16a34a;strokeWidth=2;fontSize=12;" parent="1" vertex="1"><mxGeometry x="90" y="340" width="240" height="100" as="geometry"/></mxCell>
        <mxCell id="wave" value="&lt;b&gt;Source VM Wave&lt;/b&gt;&lt;br&gt;10 VMs per migration set&lt;br&gt;Backup then restore operating model" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#dbeafe;strokeColor=#2563eb;strokeWidth=2;fontSize=12;" parent="1" vertex="1"><mxGeometry x="90" y="500" width="240" height="100" as="geometry"/></mxCell>
        <mxCell id="src-note" value="&lt;b&gt;Tool behavior&lt;/b&gt;&lt;br&gt;No separate Windows backup server and no AHV proxy VM are required" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f8fafc;strokeColor=#94a3b8;fontSize=11;" parent="1" vertex="1"><mxGeometry x="90" y="650" width="240" height="70" as="geometry"/></mxCell>

        <mxCell id="zone-targetrepo" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f0fdf4;strokeColor=#16a34a;dashed=1;strokeWidth=2;arcSize=8;" parent="1" vertex="1"><mxGeometry x="430" y="110" width="320" height="640" as="geometry"/></mxCell>
        <mxCell id="zone-targetrepo-label" value="&lt;b&gt;HYCU BACKUP LAYER&lt;/b&gt;" style="text;html=1;fontSize=14;fontFamily=Arial;align=center;fontColor=#166534;" parent="1" vertex="1"><mxGeometry x="500" y="122" width="180" height="28" as="geometry"/></mxCell>
        <mxCell id="backup-target" value="&lt;b&gt;Backup Target&lt;/b&gt;&lt;br&gt;SMB, NFS, S3, or iSCSI&lt;br&gt;Stores full and incremental copies" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#bbf7d0;strokeColor=#16a34a;strokeWidth=2;fontSize=12;" parent="1" vertex="1"><mxGeometry x="485" y="200" width="210" height="110" as="geometry"/></mxCell>
        <mxCell id="backup-policy" value="&lt;b&gt;Backup and Restore Jobs&lt;/b&gt;&lt;br&gt;Policy-driven wave selection&lt;br&gt;Automatic AHV or ESXi disk conversion to VHDX" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#bbf7d0;strokeColor=#16a34a;strokeWidth=2;fontSize=12;" parent="1" vertex="1"><mxGeometry x="485" y="390" width="210" height="120" as="geometry"/></mxCell>
        <mxCell id="repo-note" value="&lt;b&gt;Hop 1 behavior&lt;/b&gt;&lt;br&gt;Backups land on HYCU-managed target storage before restore into Hyper-V staging" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#f0fdf4;strokeColor=#86efac;fontSize=11;" parent="1" vertex="1"><mxGeometry x="485" y="610" width="210" height="90" as="geometry"/></mxCell>

        <mxCell id="zone-stage" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fff7ed;strokeColor=#ea580c;dashed=1;strokeWidth=2;arcSize=8;" parent="1" vertex="1"><mxGeometry x="800" y="110" width="330" height="640" as="geometry"/></mxCell>
        <mxCell id="zone-stage-label" value="&lt;b&gt;HYPER-V STAGING&lt;/b&gt;" style="text;html=1;fontSize=14;fontFamily=Arial;align=center;fontColor=#9a3412;" parent="1" vertex="1"><mxGeometry x="880" y="122" width="170" height="28" as="geometry"/></mxCell>
        <mxCell id="hv-host" value="&lt;b&gt;Hyper-V Target Host&lt;/b&gt;&lt;br&gt;Restore landing zone&lt;br&gt;Receives VHDX-backed VMs" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fed7aa;strokeColor=#ea580c;strokeWidth=2;fontSize=12;" parent="1" vertex="1"><mxGeometry x="850" y="200" width="230" height="110" as="geometry"/></mxCell>
        <mxCell id="restored-vms" value="&lt;b&gt;Restored VMs&lt;/b&gt;&lt;br&gt;Batch validation point&lt;br&gt;Application and networking checks" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#fed7aa;strokeColor=#ea580c;strokeWidth=2;fontSize=12;" parent="1" vertex="1"><mxGeometry x="850" y="390" width="230" height="110" as="geometry"/></mxCell>
        <mxCell id="appliance" value="&lt;b&gt;Azure Migrate Appliance&lt;/b&gt;&lt;br&gt;Discovers Hyper-V via WMI&lt;br&gt;Coordinates replication to Azure Local" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#e9d5ff;strokeColor=#7c3aed;strokeWidth=2;fontSize=12;" parent="1" vertex="1"><mxGeometry x="850" y="580" width="230" height="110" as="geometry"/></mxCell>

        <mxCell id="zone-target" value="" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#eff6ff;strokeColor=#2563eb;dashed=1;strokeWidth=2;arcSize=8;" parent="1" vertex="1"><mxGeometry x="1180" y="110" width="370" height="640" as="geometry"/></mxCell>
        <mxCell id="zone-target-label" value="&lt;b&gt;AZURE LOCAL TARGET&lt;/b&gt;" style="text;html=1;fontSize=14;fontFamily=Arial;align=center;fontColor=#1d4ed8;" parent="1" vertex="1"><mxGeometry x="1265" y="122" width="200" height="28" as="geometry"/></mxCell>
        <mxCell id="azl" value="&lt;b&gt;Azure Local Cluster&lt;/b&gt;&lt;br&gt;CSV or S2D storage&lt;br&gt;Arc-enabled infrastructure" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#bfdbfe;strokeColor=#2563eb;strokeWidth=2;fontSize=12;" parent="1" vertex="1"><mxGeometry x="1245" y="220" width="240" height="110" as="geometry"/></mxCell>
        <mxCell id="final-vms" value="&lt;b&gt;Azure Local VMs&lt;/b&gt;&lt;br&gt;Final landing point after Azure Migrate test and cutover" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#bfdbfe;strokeColor=#2563eb;strokeWidth=2;fontSize=12;" parent="1" vertex="1"><mxGeometry x="1245" y="430" width="240" height="110" as="geometry"/></mxCell>
        <mxCell id="control" value="&lt;b&gt;Azure Control Plane&lt;/b&gt;&lt;br&gt;Azure Migrate project&lt;br&gt;Arc and governance services" style="rounded=1;whiteSpace=wrap;html=1;fillColor=#ddd6fe;strokeColor=#7c3aed;strokeWidth=2;fontSize=12;" parent="1" vertex="1"><mxGeometry x="1245" y="620" width="240" height="80" as="geometry"/></mxCell>

        <mxCell id="e1" style="endArrow=block;endFill=1;strokeWidth=2;strokeColor=#16a34a;" parent="1" source="hycu-controller" target="backup-target" edge="1"><mxGeometry relative="1" as="geometry"/></mxCell>
        <mxCell id="e1-label" value="Snapshot API and backup copy" style="edgeLabel;html=1;fontSize=10;fontColor=#166534;align=center;" parent="e1" vertex="1" connectable="0"><mxGeometry relative="1" as="geometry"><mxPoint y="-18" as="offset"/></mxGeometry></mxCell>
        <mxCell id="e2" style="endArrow=block;endFill=1;strokeWidth=4;strokeColor=#ea580c;" parent="1" source="backup-policy" target="restored-vms" edge="1"><mxGeometry relative="1" as="geometry"/></mxCell>
        <mxCell id="e2-label" value="&lt;b&gt;Hop 1&lt;/b&gt;&lt;br&gt;HYCU restore to VHDX" style="edgeLabel;html=1;fontSize=11;fontColor=#9a3412;align=center;fontStyle=1;" parent="e2" vertex="1" connectable="0"><mxGeometry relative="1" as="geometry"><mxPoint y="-18" as="offset"/></mxGeometry></mxCell>
        <mxCell id="e3" style="endArrow=block;endFill=1;strokeWidth=4;strokeColor=#2563eb;" parent="1" source="restored-vms" target="final-vms" edge="1"><mxGeometry relative="1" as="geometry"/></mxCell>
        <mxCell id="e3-label" value="&lt;b&gt;Hop 2&lt;/b&gt;&lt;br&gt;Azure Migrate" style="edgeLabel;html=1;fontSize=11;fontColor=#1d4ed8;align=center;fontStyle=1;" parent="e3" vertex="1" connectable="0"><mxGeometry relative="1" as="geometry"><mxPoint y="-18" as="offset"/></mxGeometry></mxCell>
        <mxCell id="e4" style="endArrow=block;endFill=1;strokeWidth=2;strokeColor=#7c3aed;dashed=1;" parent="1" source="appliance" target="control" edge="1"><mxGeometry relative="1" as="geometry"/></mxCell>
        <mxCell id="e4-label" value="HTTPS 443 metadata and control" style="edgeLabel;html=1;fontSize=10;fontColor=#6d28d9;align=center;" parent="e4" vertex="1" connectable="0"><mxGeometry relative="1" as="geometry"><mxPoint y="-18" as="offset"/></mxGeometry></mxCell>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>