<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="675" viewBox="0 0 1200 675" preserveAspectRatio="xMidYMid meet">
  <rect width="1200" height="675" fill="#eff6ff"/>
  <defs><marker id="a" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="8" markerHeight="8" orient="auto"><path d="M0 0 L10 5 L0 10Z" fill="#2563eb"/></marker><marker id="r" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="8" markerHeight="8" orient="auto"><path d="M0 0 L10 5 L0 10Z" fill="#dc2626"/></marker></defs>
  <g font-family="Arial, Helvetica, sans-serif" fill="#0f172a">
    <text x="600" y="66" text-anchor="middle" font-size="28" font-weight="700">PDB 驱逐预算决策图</text>
    <text x="600" y="100" text-anchor="middle" font-size="18" fill="#1e40af">PDB 只约束自愿中断，不替代副本冗余和故障恢复</text>
    <rect x="100" y="220" width="190" height="112" rx="28" fill="#dbeafe" stroke="#3b82f6" stroke-width="3"/>
    <text x="195" y="263" text-anchor="middle" font-size="18" font-weight="700">维护动作</text><text x="195" y="296" text-anchor="middle" font-size="18">drain · 升级</text>
    <rect x="385" y="220" width="220" height="112" rx="28" fill="#ffffff" stroke="#2563eb" stroke-width="4"/>
    <text x="495" y="258" text-anchor="middle" font-size="18" font-weight="700">Eviction API</text><text x="495" y="291" text-anchor="middle" font-size="18">读取预算与 Pod 状态</text>
    <polygon points="760,195 900,276 760,357 620,276" fill="#fff7ed" stroke="#fb923c" stroke-width="4"/>
    <text x="760" y="269" text-anchor="middle" font-size="21" font-weight="700" fill="#9a3412">预算足够?</text><text x="760" y="301" text-anchor="middle" font-size="18" fill="#7c2d12">allowed disruptions</text>
    <rect x="965" y="220" width="160" height="112" rx="28" fill="#dcfce7" stroke="#22c55e" stroke-width="3"/>
    <text x="1045" y="263" text-anchor="middle" font-size="18" font-weight="700">允许驱逐</text><text x="1045" y="296" text-anchor="middle" font-size="18">继续维护</text>
    <g stroke="#2563eb" stroke-width="5" fill="none" marker-end="url(#a)"><path d="M295 276 H380"/><path d="M610 276 H620"/><path d="M900 276 H960"/></g>
    <path d="M760 357 V435 H320" stroke="#dc2626" stroke-width="5" fill="none" marker-end="url(#r)"/>
    <rect x="160" y="425" width="320" height="96" rx="28" fill="#fef2f2" stroke="#ef4444" stroke-width="3"/>
    <text x="320" y="463" text-anchor="middle" font-size="20" font-weight="700">阻断维护</text><text x="320" y="495" text-anchor="middle" font-size="18">调整副本、预算或时段</text>
    <rect x="540" y="472" width="360" height="74" rx="24" fill="#ffffff" stroke="#93c5fd" stroke-width="2"/>
    <text x="720" y="502" text-anchor="middle" font-size="18" font-weight="700">边界提醒</text><text x="720" y="530" text-anchor="middle" font-size="17">节点故障、容器崩溃不由 PDB 阻止</text>
  </g>
</svg>
